gtk2/gdk/wayland
wisp3rwind 992f092968 wayland: avoid set_cursor() when unchanged or invisible
In pointer_surface_update_scale(), only rescale the cursor surface when
the scale has actually changed and the cursor is on at least one output.

fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3350

Right now, this issue is not completely understood, so it might also
involve some questionable handling of cursor surface by sway/wlroots.

However, irrespective of that issue, this patch avoids unnecessary calls to the
compositor, and there should be no drawback: Whenever the pointer enters
a new output, pointer_surface_update_scale() will be called again, such
that correct scaling of the cursor is still ensured.

There is a slight difference: When the cursor leaves the last output,
previously the image was reset to scale factor 1. Now, it keeps whatever
was last. That might be more sensible than the previous behaviour,
assuming that it's likely that when the cursor enter an output again, it
has the same scaling. Alternatively, if one cares about resource usage
at this level, it might make more sense to destroy the surface than
rescaling to 1.
2021-01-09 11:42:59 +01:00
..
cursor build: Use a consistent style for Meson files 2020-12-15 12:46:59 +00:00
protocol gdk/wayland: Update to gtk_shell1 version 3 2020-11-18 00:41:46 +01:00
gdkapplaunchcontext-wayland.c gdk/wayland: Update to gtk_shell1 version 3 2020-11-18 00:41:46 +01:00
gdkcairocontext-wayland.c wayland/surface: Make sure to commit ack_configure 2020-09-17 18:20:08 +02:00
gdkcairocontext-wayland.h wayland: Rewrite Cairo rendering 2018-04-24 23:16:58 +02:00
gdkclipboard-wayland.c gdk: Change some async clipboard api 2019-04-02 15:10:53 +00:00
gdkclipboard-wayland.h wayland: Implement reading the clipboard 2017-12-03 05:46:49 +01:00
gdkcursor-wayland.c Replace "gchar" with "char" 2020-07-25 00:47:36 +02:00
gdkdevice-wayland-private.h wayland: Make gdk_wayland_device_pad_set_feedback private 2020-10-15 12:00:00 -04:00
gdkdevice-wayland.c wayland: avoid set_cursor() when unchanged or invisible 2021-01-09 11:42:59 +01:00
gdkdisplay-wayland.c gdk/wayland: Update to gtk_shell1 version 3 2020-11-18 00:41:46 +01:00
gdkdisplay-wayland.h Hide gdk_wayland_display_prefers_ssd() 2020-10-12 16:44:05 +01:00
gdkdrag-wayland.c wayland: Fix dnd hotspot movement 2020-08-27 04:04:48 +05:00
gdkdrop-wayland.c gdk: Make gdk_drop_status() take preferred action 2020-03-02 04:43:56 +01:00
gdkeventsource.c Replace "gint" with "int" 2020-07-25 00:47:36 +02:00
gdkglcontext-wayland.c glcontext-wayland: Whitespace 2021-01-03 11:01:28 +01:00
gdkglcontext-wayland.h GdkSurface: Rename lots of stuff from window->surface 2018-03-20 15:14:10 +01:00
gdkkeys-wayland.c Replace "gint" with "int" 2020-07-25 00:47:36 +02:00
gdkmonitor-wayland.c Skip GdkWayland symbols that use wayland-client types 2020-10-12 14:07:26 +01:00
gdkmonitor-wayland.h Relay the xdg_output.name to GdkMonitor 2019-06-24 15:38:36 +01:00
gdkprimary-wayland.c gdk/wayland: Replace gtk-primary-selection with primary-selection-unstable-v1 2020-09-27 16:23:42 +02:00
gdkprimary-wayland.h gdk/wayland: Replace gtk-primary-selection with primary-selection-unstable-v1 2020-09-27 16:23:42 +02:00
gdkprivate-wayland.h wayland: Only set mapped state when mapped 2020-12-07 09:46:39 +01:00
gdkseat-wayland.h Add a public header for GdkWaylandSeat 2020-10-14 11:55:34 +01:00
gdksurface-wayland.c Revert "Merge branch 'gtk_egl_wayland' into 'master'" 2020-12-30 03:32:18 +00:00
gdksurface-wayland.h Rename libgtk_only symbol in GdkWaylandToplevel 2020-10-12 16:49:10 +01:00
gdkvulkancontext-wayland.c wayland/surface: Make sure to commit ack_configure 2020-09-17 18:20:08 +02:00
gdkvulkancontext-wayland.h The big versioning cleanup 2018-02-06 01:16:32 -05:00
gdkwayland.h Add a public header for GdkWaylandSeat 2020-10-14 11:55:34 +01:00
gdkwaylanddevice.h wayland: Make gdk_wayland_device_pad_set_feedback private 2020-10-15 12:00:00 -04:00
gdkwaylanddisplay.h Fix a warning caused by difference between prototype and definition 2020-11-17 14:59:14 +08:00
gdkwaylandglcontext.h Use a single compilation symbol 2019-11-27 13:33:43 +00:00
gdkwaylandmonitor.h Use a single compilation symbol 2019-11-27 13:33:43 +00:00
gdkwaylandseat.h Add a public header for GdkWaylandSeat 2020-10-14 11:55:34 +01:00
gdkwaylandsurface.h Revert "Merge branch 'gtk_egl_wayland' into 'master'" 2020-12-30 03:32:18 +00:00
meson.build build: Use a consistent style for Meson files 2020-12-15 12:46:59 +00:00
wm-button-layout-translation.c build: Don't turn off critical warnings 2017-10-06 16:03:08 +02:00
wm-button-layout-translation.h gdk: Relicense translate_wm_button_layout_to_gtk() 2017-04-27 21:05:12 +02:00