summaryrefslogtreecommitdiff
path: root/src/drivers/Wayland/Fl_Wayland_Screen_Driver.cxx
AgeCommit message (Collapse)Author
2023-08-18Improve handling of type Fl_Offscreen under WaylandManoloFLTK
Type Fl_Offscreen is now to be cast to cairo_t*. Also, make sure the dimensions of GL windows are multiples of the screen scale factor.
2023-08-15Wayland mouse wheel support: compositors can behave differentlyManoloFLTK
2023-08-14Handle shift + mousewheel event on Wayland (STR 3521)Albrecht Schlosser
Pressing the shift key while using the mousewheel changes horizontal to vertical scrolling and vice versa. This allows users with a standard mouse with only one scrollwheel to use it for both scrolling directions. This concludes "handling shift + mousewheel" for all supported platforms.
2023-08-09Wayland: fix fl_read_image() from offscreen bufferManoloFLTK
2023-08-08Wayland: improve layout of struct fl_wld_draw_bufferManoloFLTK
2023-08-05Let FLTK give more detailed description of a Wayland fatal errorManoloFLTK
Wayland protocol error messages now give the protocol name and the error code.
2023-08-03Slightly improve Fl_Wayland_Screen_Driver::poll_or_select_with_delay()ManoloFLTK
2023-07-31Implement Fl_Wayland_Screen_Driver::poll_or_select_with_delay(double)ManoloFLTK
2023-07-28Wayland.dox: add info about the xdg decoration protocolManoloFLTK
Also, use KWin to name the KDE desktop's Wayland compositor.
2023-07-12Wayland: keep mouse button state across push/release eventsAlbrecht Schlosser
Notes: (1) Fl::e_state holds the current state of all mouse buttons which is returned by Fl::event_buttons() - "plural form". (2) Fl::e_keysym holds the "key" of the current event which can be a mouse button, returned by Fl::event_button() - "singular form".
2023-07-12Fix Wayland FL_RELEASE events reporting wrong buttonAlbrecht Schlosser
... in Fl::event_button(). This can be seen when two buttons have been pressed simultaneously and then released (see test/handle_events.cxx).
2023-06-19Wayland: improve support of multi-display setupsManoloFLTK
2023-05-20Fix name of static member variable Fl_Wayland_Screen_Driver::wl_displayManoloFLTK
and add explanatory comment.
2023-05-15Fix handling of tall menu windows with the KDE Wayland compositorManoloFLTK
Unfortunately (sigh), the KDE Wayland compositor does not seem to support correctly, that is, as described by the Wayland protocol, popup windows that are taller than the display : there is no means to make it draw such popup so that part of it is above the screen top, whereas the 3 other tested compositors (Mutter, Weston, Sway) don't have this problem. This commit implements a new approach to draw tall menu windows, and uses it only with the KDE compositor : instead of asking the compositor to slide the menu window up, the menu window remains at a fixed position and the graphics inside the window is slided up. This requires to add a member variable, int offset_y, to class menuwindow, that gets used only for the Wayland platform and that contains the vertical offset by which graphics to the menu window is moved, expressed in FLTK units. An accessor to the address of this member variable is added to class Fl_Window_Driver.
2023-05-03Fl_Wayland_Screen_Driver::get_system_scheme() is not neededManoloFLTK
2023-05-03Wayland: clearer procedure to complete initialisation of screen dataManoloFLTK
2023-05-01Wayland: wl_cursor_theme_load() may return NULLManoloFLTK
2023-05-01Fix regression in Fl::screeen_xywh() introduced at 9ea0cc8ManoloFLTK
2023-05-01Check return values of calls to libxkbcommon functions (#727)ManoloFLTK
2023-04-28Improve integration with the OWL Wayland compositorManoloFLTK
2023-04-27Slightly simpler Fl_Wayland_Screen_Driver::open_display_platform()ManoloFLTK
2023-04-25Wayland: accept all data_device_manager protocol versionsManoloFLTK
2023-04-25Wayland: set required version of wl_seat protocol to 2ManoloFLTK
2023-04-20Wayland: keep window resizable after native file chooser - cont'dManoloFLTK
2023-04-20Wayland: keep window resizable after native file chooserManoloFLTK
2023-04-17Wayland: account for memorised keyboard surface before wl_surface_destroy()ManoloFLTK
2023-04-13Fix compiler warnings [-Wpedantic]Albrecht Schlosser
Remove extra semicolons after function definitions
2023-04-08 Fix "Giant cursor on Wayland + fractional scaling" (#713)ManoloFLTK
2023-04-07Wayland: fix reporting of relative location of multiple displaysManoloFLTK
2023-04-04Remove superfluous #include directivesManoloFLTK
2023-04-03Improve member function Fl_Wayland_Screen_Driver::surface_to_window()ManoloFLTK
Rename it to Fl_Wayland_Window_Driver::surface_to_window() and avoid loop over all mapped FLTK windows that used to be performed.
2023-04-03Wayland + Weston: fix focus loss after click on titlebarManoloFLTK
2023-03-29Improve Wayland support of Fl::event_key(int)ManoloFLTK
Key pressed when the Wayland window acquires focus are now detected.
2023-03-27Wayland: move "struct seat" inside class Fl_Wayland_Screen_DriverManoloFLTK
2023-03-27Complete Fl_Wayland_Screen_Driver::close_display()ManoloFLTK
2023-03-26Improve methods Fl_Wayland_Screen_Driver::en/disable_im()ManoloFLTK
2023-03-26Implement methods Fl_Wayland_Screen_Driver::en/disable_im()ManoloFLTK
2023-03-25Wayland: slightly simpler writing of function wl_keyboard_key()ManoloFLTK
2023-03-25Wayland: Fl::get_key(c) for lower case letters different behavior from X11 ↵ManoloFLTK
(#404)
2023-03-20Wayland: attempt to improve registry_handle_global_remove()ManoloFLTK
This function still needs to be tested on a true multi-display Unix box
2023-03-20Simulate one display for OWL Wayland compositorManoloFLTK
2023-03-14Fix Fl_Wayland_Screen_Driver::get_mouse() for scale factor effectManoloFLTK
2023-03-14Wayland: add support for multiple high or low DPI displays - cont'dManoloFLTK
2023-03-14Wayland: improve cursor_surface_enter()ManoloFLTK
2023-03-13Wayland: add support for multiple high or low DPI displaysManoloFLTK
2023-03-09Fix Fl_Wayland_Screen_Driver::x() and friendsManoloFLTK
2023-03-08Remove useless repetition from array dead_keys[]ManoloFLTK
2023-03-08Fix: Shift-Tab not "reverse navigating" on some platforms (#696)ManoloFLTK
2023-03-04Simpler use of member variable wl_registry in class Fl_Wayland_Screen_DriverManoloFLTK
2023-03-02Add Fl_Wayland_Window_Driver::wld_scale() member functionManoloFLTK