11 #include "SeatSelection.h" 16 #include <wayland-client-protocol.hpp> 36 virtual void OnKeyboardKeymap(
CSeat* seat, wayland::keyboard_keymap_format format, std::string
const& keymap) {}
37 virtual void OnKeyboardEnter(
CSeat* seat,
39 const wayland::surface_t& surface,
40 const wayland::array_t& keys)
43 virtual void OnKeyboardLeave(
CSeat* seat, std::uint32_t serial,
const wayland::surface_t& surface)
46 virtual void OnKeyboardKey(
CSeat* seat, std::uint32_t serial, std::uint32_t time, std::uint32_t key, wayland::keyboard_key_state state) {}
47 virtual void OnKeyboardModifiers(
CSeat* seat, std::uint32_t serial, std::uint32_t modsDepressed, std::uint32_t modsLatched, std::uint32_t modsLocked, std::uint32_t
group) {}
48 virtual void OnKeyboardRepeatInfo(
CSeat* seat, std::int32_t rate, std::int32_t delay) {}
61 virtual void OnPointerEnter(
CSeat* seat,
63 const wayland::surface_t& surface,
68 virtual void OnPointerLeave(
CSeat* seat, std::uint32_t serial,
const wayland::surface_t& surface)
71 virtual void OnPointerMotion(
CSeat* seat, std::uint32_t time,
double surfaceX,
double surfaceY) {}
72 virtual void OnPointerButton(
CSeat* seat, std::uint32_t serial, std::uint32_t time, std::uint32_t button, wayland::pointer_button_state state) {}
73 virtual void OnPointerAxis(
CSeat* seat, std::uint32_t time, wayland::pointer_axis axis,
double value) {}
86 virtual void OnTouchDown(
CSeat* seat,
89 const wayland::surface_t& surface,
95 virtual void OnTouchUp(
CSeat* seat, std::uint32_t serial, std::uint32_t time, std::int32_t
id) {}
96 virtual void OnTouchMotion(
CSeat* seat, std::uint32_t time, std::int32_t
id,
double x,
double y) {}
97 virtual void OnTouchCancel(
CSeat* seat) {}
98 virtual void OnTouchShape(
CSeat* seat, std::int32_t
id,
double major,
double minor) {}
123 CSeat(std::uint32_t globalName, wayland::seat_t
const& seat,
CConnection& connection);
133 std::uint32_t GetGlobalName()
const 137 std::string
const& GetName()
const 141 bool HasPointerCapability()
const 145 bool HasKeyboardCapability()
const 149 bool HasTouchCapability()
const 153 std::string GetSelectionText()
const 155 return m_selection.GetSelectionText();
175 void SetCursor(std::uint32_t serial, wayland::surface_t
const& surface, std::int32_t hotspotX, std::int32_t hotspotY);
179 CSeat& operator=(
CSeat const& other) =
delete;
181 void HandleOnCapabilities(
const wayland::seat_capability& caps);
182 void HandlePointerCapability();
183 void HandleKeyboardCapability();
184 void HandleTouchCapability();
186 std::uint32_t m_globalName;
187 std::string m_name{
"<unknown>"};
189 wayland::seat_t m_seat;
190 wayland::pointer_t m_pointer;
191 wayland::keyboard_t m_keyboard;
192 wayland::touch_t m_touch;
194 std::set<IRawInputHandlerKeyboard*> m_rawKeyboardHandlers;
195 std::set<IRawInputHandlerPointer*> m_rawPointerHandlers;
196 std::set<IRawInputHandlerTouch*> m_rawTouchHandlers;
wayland::seat_t const & GetWlSeat()
Get the wl_seat underlying this seat.
Definition: Seat.h:164
Retrieve and accept selection (clipboard) offers on the data device of a seat.
Definition: SeatSelection.h:30
Connection to Wayland compositor.
Definition: Connection.h:25
Controller configuration window.
Definition: AudioDecoder.h:18
Definition: SmartPlayList.cpp:137
Handle all events and requests related to one seat (including input and selection) ...
Definition: Seat.h:114