mutter/src/wayland
Jonas Ådahl 8d3e053059 window: Force update monitor on hot plugs
Commit a3da4b8d5b changed updating of
window monitors to always use take affect when it was done from a
non-user operation. This could cause feed back loops when a non-user
driven operation would trigger the changing of a monitor, which itself
would trigger changing of the monitor again due to a window scale
change.

The reason for the change, was that when the window monitor changed due
to a hot plug, if it didn't actually change, eventually the window
monitor pointer would be pointing to freed memory.

Instead of force updating the monitor on all non-user operations, just
do it on hot plugs. This allows for the feedback loop preventing logic
to still do what its supposed to do, without risking dangling pointers
on hot plugs.

Related: https://gitlab.gnome.org/GNOME/mutter/issues/189
Closes: https://gitlab.gnome.org/GNOME/mutter/issues/192
2018-08-27 08:33:00 +00:00
..
protocol protocol: Add internal text input protocol 2018-01-18 16:20:45 +01:00
meta-cursor-sprite-wayland.c cursor-renderer/native: Fetch instead of pass wl_buffer when realizing 2018-06-15 19:09:53 +00:00
meta-cursor-sprite-wayland.h cursor-renderer/native: Fetch instead of pass wl_buffer when realizing 2018-06-15 19:09:53 +00:00
meta-pointer-confinement-wayland.c wayland: Add MetaWaylandSurface::geometry-changed signal 2018-04-23 21:31:19 +02:00
meta-pointer-confinement-wayland.h Implement support for the wp_pointer_constraints protocol 2016-02-16 19:02:48 +08:00
meta-pointer-lock-wayland.c Implement support for the wp_pointer_constraints protocol 2016-02-16 19:02:48 +08:00
meta-pointer-lock-wayland.h Implement support for the wp_pointer_constraints protocol 2016-02-16 19:02:48 +08:00
meta-wayland-actor-surface.c wayland/actor-surface: Intersect input/opaque region with surface region 2018-08-21 12:24:02 +02:00
meta-wayland-actor-surface.h wayland: Refactor surface actor into MetaWaylandActorSurface 2018-04-23 21:31:19 +02:00
meta-wayland-buffer.c wayland: Always realize buffers at surface commit time 2018-06-15 13:45:25 -07:00
meta-wayland-buffer.h wayland: Always realize buffers at surface commit time 2018-06-15 13:45:25 -07:00
meta-wayland-cursor-surface.c Stop using MetaScreen where it is unnecessary 2018-07-06 19:47:16 +02:00
meta-wayland-cursor-surface.h wayland: Rename cursor role types 2018-06-15 19:09:49 +00:00
meta-wayland-data-device-private.h wayland: Implement the (so far internal) primary selection protocol 2016-02-26 19:51:32 +01:00
meta-wayland-data-device.c wayland: Abstract access to the actor corresponding to a wl_surface 2018-04-23 12:24:46 +02:00
meta-wayland-data-device.h dnd: Implement DnD handling code in Wayland 2017-03-07 08:28:36 +08:00
meta-wayland-dma-buf.c wayland: Realize dmabuf buffers before trying to attach them 2018-06-21 21:47:05 +02:00
meta-wayland-dma-buf.h wayland: Add zwp_linux_dmabuf_v1 support 2017-08-01 19:05:50 +08:00
meta-wayland-egl-stream.c wayland: Create EGLStream-backed buffers through wl_eglstream_controller 2018-06-15 13:45:29 -07:00
meta-wayland-egl-stream.h wayland: Create EGLStream-backed buffers through wl_eglstream_controller 2018-06-15 13:45:29 -07:00
meta-wayland-gtk-shell.c wayland: Send edge constraints 2017-10-03 19:38:32 -03:00
meta-wayland-gtk-shell.h wayland: Move out gtk_shell from meta-wayland-surface.c 2016-08-25 12:19:40 +08:00
meta-wayland-inhibit-shortcuts-dialog.c wayland: Keep the inhibit shortcut dialog 2017-09-14 09:32:26 +02:00
meta-wayland-inhibit-shortcuts-dialog.h wayland: Keep the inhibit shortcut dialog 2017-09-14 09:32:26 +02:00
meta-wayland-inhibit-shortcuts.c wayland: send shortcut inhibit “active” event 2018-02-05 09:06:49 +00:00
meta-wayland-inhibit-shortcuts.h wayland: add keyboard shortcuts inhibitor protocol 2017-08-02 11:58:55 +02:00
meta-wayland-input-device.c wayland/input-device: Add next serial helper 2016-10-11 22:51:50 +08:00
meta-wayland-input-device.h wayland/input-device: Add next serial helper 2016-10-11 22:51:50 +08:00
meta-wayland-keyboard.c clutter/enum: Add CLUTTER_EVENT_FLAG_REPEATED for auto-repeated events 2018-08-20 10:16:33 +00:00
meta-wayland-keyboard.h wayland/keyboard: Create a separate keymap shm file per resource 2018-08-17 16:34:05 +02:00
meta-wayland-legacy-xdg-shell.c wayland/xdg-shell: Intersect set geometry with subsurface tree geometry 2018-08-20 14:37:10 +00:00
meta-wayland-legacy-xdg-shell.h wayland: Add support for stable xdg-shell 2018-02-23 18:57:53 +08:00
meta-wayland-outputs.c wayland: Remove unused GList *l 2018-07-31 11:47:51 +08:00
meta-wayland-outputs.h wayland: Add xdg-output support 2017-12-15 14:18:14 +01:00
meta-wayland-pointer-constraints.c wayland/pointer-constraints: Don't include window frame in region 2016-10-13 12:59:41 +08:00
meta-wayland-pointer-constraints.h MetaWaylandPointerConstraint: Use own 'appears-focused' signal handler 2016-03-09 14:26:53 +08:00
meta-wayland-pointer-gesture-pinch.c wayland: Forward touchpad pinch n_fingers information to clients 2016-11-04 16:28:30 +01:00
meta-wayland-pointer-gesture-pinch.h wayland: Implement the wl_pointer_gesture_pinch interface 2015-08-10 17:23:23 +02:00
meta-wayland-pointer-gesture-swipe.c clutter: Rename touchpad gesture n_fingers getter to be more generic 2016-11-04 16:28:30 +01:00
meta-wayland-pointer-gesture-swipe.h wayland: Implement the wl_pointer_gesture_swipe interface 2015-08-10 17:23:23 +02:00
meta-wayland-pointer-gestures.c configure.ac: Add AC_GNU_SOURCE 2016-07-20 14:23:48 +08:00
meta-wayland-pointer-gestures.h wayland: Implement wl_pointer_gestures 2015-08-10 17:30:12 +02:00
meta-wayland-pointer.c wayland: Rename cursor role types 2018-06-15 19:09:49 +00:00
meta-wayland-pointer.h wayland/pointer: Track lifetime of current surface 2017-06-01 12:46:32 +08:00
meta-wayland-popup.c Stop using MetaScreen where it is unnecessary 2018-07-06 19:47:16 +02:00
meta-wayland-popup.h wayland: Add 'MetaWaylandPopupSurface' bridge between popup and surface 2016-05-01 21:11:27 +08:00
meta-wayland-private.h wayland-private: Make display_name non-const 2018-07-31 23:40:01 +02:00
meta-wayland-region.c wayland: Make the MetaWaylandRegion type opaque 2014-10-07 20:44:19 -07:00
meta-wayland-region.h wayland: Make the MetaWaylandRegion type opaque 2014-10-07 20:44:19 -07:00
meta-wayland-seat.c wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland-seat.h wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland-shell-surface.c window: Pass flag to meta_window_update_monitor() instead of bool 2018-08-27 08:33:00 +00:00
meta-wayland-shell-surface.h wayland/xdg-shell: Intersect set geometry with subsurface tree geometry 2018-08-20 14:37:10 +00:00
meta-wayland-subsurface.c wayland: Use surface size helper functions 2018-08-20 14:37:10 +00:00
meta-wayland-subsurface.h wayland: Push actor state instead of itself pulling 2018-02-23 18:57:47 +08:00
meta-wayland-surface.c wayland: Use surface size helper functions 2018-08-20 14:37:10 +00:00
meta-wayland-surface.h wayland/surface: Add get_width() and get_height() helper functions 2018-08-20 14:37:09 +00:00
meta-wayland-tablet-cursor-surface.c wayland: Rename cursor role types 2018-06-15 19:09:49 +00:00
meta-wayland-tablet-cursor-surface.h wayland: Rename cursor role types 2018-06-15 19:09:49 +00:00
meta-wayland-tablet-manager.c wayland: Add pointer from MetaWaylandTabletSeat to MetaWaylandSeat 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-manager.h wayland: Add methods to update the position of different tools' cursors 2016-05-03 18:17:01 +02:00
meta-wayland-tablet-pad-group.c wayland: Clean up MetaWaylandTabletPadGroup 2017-02-10 20:11:19 +01:00
meta-wayland-tablet-pad-group.h wayland: Export function to tell whether a button belongs to a pad group 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-pad-ring.c wayland: fix copy/pasto sending tool removed on rings/strips 2017-02-07 14:04:52 +01:00
meta-wayland-tablet-pad-ring.h wayland: Add method to relate a pad ring to its group 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-pad-strip.c wayland: fix copy/pasto sending tool removed on rings/strips 2017-02-07 14:04:52 +01:00
meta-wayland-tablet-pad-strip.h wayland: Add method to relate a pad strip to its group 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-pad.c wayland: Handle NULL event node/vendor/product on tablet methods 2018-02-09 13:39:15 +01:00
meta-wayland-tablet-pad.h wayland: Move strips/rings management back to MetaWaylandTabletPad 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-seat.c wayland: Use clutter_input_device_is_grouped() for tablet grouping 2017-03-13 19:34:10 +01:00
meta-wayland-tablet-seat.h wayland: Add focus management to pads 2016-07-22 13:31:09 +02:00
meta-wayland-tablet-tool.c backends/cursor: Move out Xcursor functionality into own type 2018-06-15 19:09:51 +00:00
meta-wayland-tablet-tool.h backends/cursor: Move out Xcursor functionality into own type 2018-06-15 19:09:51 +00:00
meta-wayland-tablet.c wayland: Handle NULL event node/vendor/product on tablet methods 2018-02-09 13:39:15 +01:00
meta-wayland-tablet.h wayland: Remove unused list from MetaWaylandTablet 2016-05-10 17:45:04 +02:00
meta-wayland-text-input-legacy.c wayland: Make gtk-text-input "legacy" 2018-08-14 15:43:21 +00:00
meta-wayland-text-input-legacy.h wayland: Make gtk-text-input "legacy" 2018-08-14 15:43:21 +00:00
meta-wayland-text-input.c wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland-text-input.h wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland-touch.c Don't cast free function passed to g_clear_pointer 2018-07-31 23:40:01 +02:00
meta-wayland-touch.h wayland: Move device seat association to MetaWaylandInputDevice 2016-09-15 09:55:34 +08:00
meta-wayland-types.h wayland: Add common object for device classes 2016-09-15 09:54:55 +08:00
meta-wayland-versions.h wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland-wl-shell.c wayland: Use helper to set shell surface window 2018-02-23 18:57:50 +08:00
meta-wayland-wl-shell.h wayland: Restructure surface role building blocks code 2018-02-23 18:57:40 +08:00
meta-wayland-xdg-foreign.c wayland/xdg-foreign: Fix child surface validation check 2018-05-07 19:16:40 +00:00
meta-wayland-xdg-foreign.h wayland: Add support for the xdg-foreign protocol 2016-08-22 21:03:41 +08:00
meta-wayland-xdg-shell.c wayland/xdg-shell: Intersect set geometry with subsurface tree geometry 2018-08-20 14:37:10 +00:00
meta-wayland-xdg-shell.h wayland: Add support for stable xdg-shell 2018-02-23 18:57:53 +08:00
meta-wayland.c wayland: Implement text-input from wayland-protocols 2018-08-14 15:43:21 +00:00
meta-wayland.h wayland: Notify actively of xwayland window/surface associations 2018-04-23 21:31:19 +02:00
meta-window-wayland.c window: Force update monitor on hot plugs 2018-08-27 08:33:00 +00:00
meta-window-wayland.h wayland: Add function to query if window needs move or resize 2018-04-25 21:55:05 -03:00
meta-window-xwayland.c xwayland: add _XWAYLAND_MAY_GRAB_KEYBOARD property 2017-12-18 13:15:13 +01:00
meta-window-xwayland.h xwayland: Add MetaWindowXwayland 2017-12-18 13:15:09 +01:00
meta-xwayland-grab-keyboard.c wayland: Clean up xwayland grabs even if surface is gone 2018-08-06 11:22:51 +00:00
meta-xwayland-grab-keyboard.h wayland: Add Xwayland grab keyboard support 2017-12-18 13:15:20 +01:00
meta-xwayland-private.h xwayland: Destroy selection bridge windows before closing X11 display 2018-07-06 19:47:16 +02:00
meta-xwayland-selection-private.h wayland: Make MetaWaylandDataSource ownership protocol specific 2015-06-30 11:23:40 +08:00
meta-xwayland-selection.c Don't cast free function passed to g_clear_pointer 2018-07-31 23:40:01 +02:00
meta-xwayland.c xwayland: Destroy selection bridge windows before closing X11 display 2018-07-06 19:47:16 +02:00
meta-xwayland.h wayland: Notify actively of xwayland window/surface associations 2018-04-23 21:31:19 +02:00