diff --git a/input/wayland/redirect.cpp b/input/wayland/redirect.cpp
index 666fe6b67..bc7b6c06c 100644
--- a/input/wayland/redirect.cpp
+++ b/input/wayland/redirect.cpp
@@ -471,17 +471,18 @@ void redirect::handle_fake_input_device_added(Wrapland::Server::FakeInputDevice*
device->setAuthentication(true);
});
- auto devices
- = fake::devices<input::platform>({std::make_unique<fake::pointer>(device, &platform),
- std::make_unique<fake::keyboard>(device, &platform),
- std::make_unique<fake::touch>(device, &platform),
- platform});
+ fake::devices<input::platform> devices{
+ .pointer = std::make_unique<fake::pointer>(device, &platform),
+ .keyboard = std::make_unique<fake::keyboard>(device, &platform),
+ .touch = std::make_unique<fake::touch>(device, &platform),
+ .platform = platform,
+ };
platform_add_pointer(devices.pointer.get(), platform);
platform_add_keyboard(devices.keyboard.get(), platform);
platform_add_touch(devices.touch.get(), platform);
fake_devices.insert({device, std::move(devices)});
}