summaryrefslogtreecommitdiff
path: root/src/wayland/meta-wayland-inhibit-shortcuts-dialog.h
Commit message (Collapse)AuthorAgeFilesLines
* wayland: Keep the inhibit shortcut dialogOlivier Fourdan2017-09-141-1/+1
| | | | | | | | | | | | | | | | | | | | | On Wayland, the grab()/ungrab() in gtk+/gdk are wired to the shortcut inhibitor mechanism, which in turn shows the dialog, which can take focus away from the client window when the dialog is shown. If the client issues an ungrab() when the keyboard focus is lost, we would hide the dialog, causing the keyboard focus to be returned to the client surface, which in turn would issue a new grab(), so forth and so on, causing a continuous show/hide of the shortcut inhibitor dialog. To avoid this issue, keep the dialog around even if the shortcut inhibit is canceled by the client, so that the user is forced to make a choice that we can reuse on the next request without showing the dialog again. Instead of hiding the dialog when the shortcut inhibitor is destroyed by the client, we simply mark the request as canceled and do not apply the user's choice. https://bugzilla.gnome.org/show_bug.cgi?id=787568
* wayland: use the inhibit shortcuts dialogOlivier Fourdan2017-08-021-0/+31
Plug the new MetaInhbitShortcutsDialog to the relevant Wayland protocol implementation. Also, remember the last user choice for a given surface to avoid asking continuously the same question. https://bugzilla.gnome.org/show_bug.cgi?id=783342