summaryrefslogtreecommitdiff
path: root/src/x11/meta-x11-display.c
Commit message (Collapse)AuthorAgeFilesLines
* x11-display: set per-monitor work areaswip/muktupavels/work-areasAlberts Muktupāvels2018-07-241-0/+47
| | | | | | | In addition to existing property set also new _NET_WORKAREA_Mn property where n is Xinerama monitor index. The property in its form is same as _NET_WORKAREA except that work area is for monitor not whole screen.
* backends/x11: Force-update cursor when theme or size changedJonas Ådahl2018-07-061-0/+1
| | | | | | Force update the cursor renderer after theme or size changes; otherwise we'll be stuck with the old theme and/or size until something else triggers resetting of the cursor.
* x11: Open window decoration X11 connection earlierJonas Ådahl2018-07-061-41/+67
| | | | | | | | | | | | If we wait with opening the X11 window decoration GDK connection, we might end up with a terminated X11 server before we finish initializing, depending on the things happening after spawning Xwayland and before opening the MetaX11Dispaly. In gnome-shell, this involves e.g. creating a couple of temporary X11 connections, and on disconnect, if they happen to be the last client, the X server will terminate itself. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* x11-display: Set the correct default Xcursor theme sizeJonas Ådahl2018-07-061-1/+7
| | | | | | | | | | | | | Under Xorg the cursor size preference was pre-scaled originating from gtk, while with Wayland it came directly from GSettings remaining unscaled. Under Xwayland this caused the X11 display code to set the wrong size with HiDPI configurations, which was often later overridden by the equivalent code in gtk, but not always. Fix this by always having the cursor size preference unscaled, scaling the size correctly where it's used, depending on how it's used. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move workspace related code from MetaDisplay to MetaWorkspaceManagerArmin Krezović2018-07-061-31/+37
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Rename errors.[ch] to meta-x11-errors.[ch]Armin Krezović2018-07-061-23/+23
| | | | | | | Also rename meta_error_trap_* to meta_x11_error_trap_* and move meta-x11-errors.c to src/x11 https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Use MetaMonitorManager insted of MetaDisplay where possibleArmin Krezović2018-07-061-13/+30
| | | | | | | This drops display's monitors-changed signal and makes all the code rely on MetaMonitorManager. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Split GDK initialization from MetaUIArmin Krezović2018-07-061-7/+70
| | | | | | Get rid of the deprecated gdk_display_get_default_screen () https://bugzilla.gnome.org/show_bug.cgi?id=759538
* xwayland: Destroy selection bridge windows before closing X11 displayJonas Ådahl2018-07-061-1/+1
| | | | | | | Listen to the "x11-display-closing" signal so we can destroy the X11 selection bridge related windows before the X11 display is gone. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move workarea hint setting to MetaX11DisplayArmin Krezović2018-07-061-0/+43
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Make bell and libstartup-notification bits work without X11Armin Krezović2018-07-061-0/+101
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Make workspace management work without X11Armin Krezović2018-07-061-54/+279
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Prepare for making MetaX11Display conditionalArmin Krezović2018-07-061-1/+1
| | | | | | | | - Stop using CurrentTime, introduce META_CURRENT_TIME - Use g_get_monotonic_time () instead of relying on an X server running and making roundtrip to it https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move workspace handling to MetaDisplay and MetaX11DisplayArmin Krezović2018-07-061-0/+106
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move UI and key grabs to MetaX11DisplayArmin Krezović2018-07-061-0/+14
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move xinerama management to MetaX11DisplayArmin Krezović2018-07-061-0/+134
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move X11 event, icon cache and property handling to MetaX11DisplayArmin Krezović2018-07-061-0/+148
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move X11 helper windows and xprops to MetaX11DisplayArmin Krezović2018-07-061-1/+481
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move stack tracking and guard_window outside of MetaScreenArmin Krezović2018-07-061-0/+127
| | | | | | Move stack, stack_tracker to MetaDisplay guard_window to MetaX11Display https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move groups and window/group prop hooks to MetaX11DisplayArmin Krezović2018-07-061-0/+22
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move alarm and xids management to MetaX11DisplayArmin Krezović2018-07-061-0/+81
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move screen size and cursor setting to MetaDisplayArmin Krezović2018-07-061-1/+50
| | | | | | | | | | | Split X11 specific parts into MetaX11Display. This also required changing MetaScreen to stop listening to any signals by itself, but instead relying on MetaDisplay forwarding them. This was to ensure the ordering. MetaDisplay listens to both the internal and external monitors-changed signal so that it can pass the external one via the redundant MetaDisplay(prev MetaScreen)::monitors-changed. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Move X11 extension queries to MetaX11DisplayArmin Krezović2018-07-061-0/+222
| | | | | | Also split extension queries into their own functions https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Switch meta_error_trap functions to MetaX11DisplayArmin Krezović2018-07-061-2/+2
| | | | | | | | They are X11 specific functions, used for X11 code. They have been improved per jadahl's suggestion to use gdk_x11_lookup_xdisplay and gdk_x11_display_error_trap_* functions, instead of current code. https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Start populating MetaX11DisplayArmin Krezović2018-07-061-0/+212
| | | | | | | | | | | - Moved xdisplay, name and various atoms from MetaDisplay - Moved xroot, screen_name, default_depth and default_xvisual from MetaScreen - Moved some X11 specific functions from screen.c and display.c to meta-x11-display.c https://bugzilla.gnome.org/show_bug.cgi?id=759538
* Add MetaX11Display skeletonArmin Krezović2018-07-061-0/+75
Also reorder meta_display_open () and meta_display_close () to sort X11 and non-X11 specific members. https://bugzilla.gnome.org/show_bug.cgi?id=759538