1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 15:58:11 +00:00
serenity/Userland/Services/WindowServer/WindowClient.ipc
circl eeeaf410fb WindowServer+LibGUI: Expose raw scroll wheel values to applications
This is useful, for instance, in games in which you can switch held
items using the scroll wheel. In order to implement this, they
previously would have to either add a hard-coded division by 4, or look
up your mouse settings to adjust correctly.

This commit adds an MouseEvent.wheel_raw_delta_x() and
MouseEvent.wheel_raw_delta_y().
2022-03-27 01:11:27 +01:00

50 lines
2.8 KiB
Text

#include <LibCore/AnonymousBuffer.h>
#include <LibGfx/ShareableBitmap.h>
endpoint WindowClient
{
fast_greet(Vector<Gfx::IntRect> screen_rects, u32 main_screen_index, u32 workspace_rows, u32 workspace_columns, Core::AnonymousBuffer theme_buffer, String default_font_query, String fixed_width_font_query, i32 client_id) =|
paint(i32 window_id, Gfx::IntSize window_size, Vector<Gfx::IntRect> rects) =|
mouse_move(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta_x, i32 wheel_delta_y, i32 wheel_raw_delta_x, i32 wheel_raw_delta_y, bool is_drag, Vector<String> mime_types) =|
mouse_down(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta_x, i32 wheel_delta_y, i32 wheel_raw_delta_x, i32 wheel_raw_delta_y) =|
mouse_double_click(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta_x, i32 wheel_delta_y, i32 wheel_raw_delta_x, i32 wheel_raw_delta_y) =|
mouse_up(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta_x, i32 wheel_delta_y, i32 wheel_raw_delta_x, i32 wheel_raw_delta_y) =|
mouse_wheel(i32 window_id, Gfx::IntPoint mouse_position, u32 button, u32 buttons, u32 modifiers, i32 wheel_delta_x, i32 wheel_delta_y, i32 wheel_raw_delta_x, i32 wheel_raw_delta_y) =|
window_entered(i32 window_id) =|
window_left(i32 window_id) =|
window_input_entered(i32 window_id) =|
window_input_left(i32 window_id) =|
key_down(i32 window_id, u32 code_point, u32 key, u32 modifiers, u32 scancode) =|
key_up(i32 window_id, u32 code_point, u32 key, u32 modifiers, u32 scancode) =|
window_activated(i32 window_id) =|
window_deactivated(i32 window_id) =|
window_state_changed(i32 window_id, bool minimized, bool occluded) =|
window_close_request(i32 window_id) =|
window_resized(i32 window_id, Gfx::IntRect new_rect) =|
menu_item_activated(i32 menu_id, u32 identifier) =|
menu_item_entered(i32 menu_id, u32 identifier) =|
menu_item_left(i32 menu_id, u32 identifier) =|
menu_visibility_did_change(i32 menu_id, bool visible) =|
screen_rects_changed(Vector<Gfx::IntRect> rects, u32 main_screen_index, u32 workspace_rows, u32 workspace_columns) =|
applet_area_rect_changed(Gfx::IntRect rect) =|
set_wallpaper_finished(bool success) =|
drag_accepted() =|
drag_cancelled() =|
drag_dropped(i32 window_id, Gfx::IntPoint mouse_position, [UTF8] String text, HashMap<String,ByteBuffer> mime_data) =|
update_system_theme(Core::AnonymousBuffer theme_buffer) =|
update_system_fonts(String default_font_query, String fixed_width_font_query) =|
display_link_notification() =|
track_mouse_move(Gfx::IntPoint mouse_position) =|
ping() =|
}