Commit Graph

103 Commits

Author SHA1 Message Date
Jasper St. Pierre
806a666950 Make the native backend build-optional 2014-05-29 12:43:08 -04:00
Florian Müllner
d380d30ef4 Update (allow-none) annotations
The annotation has been deprecated in favor of (nullable) and/or
(optional).
2014-05-28 21:55:03 +02:00
Jasper St. Pierre
b704659899 backend: Add an XIWarpPointer wrapper
This makes Alt+F7 / Alt+F8 work respectively under X11 nested mode.
For the native backend implementation, we'll need a special Clutter
function, so don't implement that for now.
2014-05-27 14:28:35 -04:00
Jasper St. Pierre
47b3336ffa monitor-manager-xrandr: Make sure to XFlush the XUngrabServer
Otherwise, the server may not receive our request, meaning that
we'll hang onto the server grab forever.
2014-05-22 17:39:46 -04:00
Jasper St. Pierre
8e5cfccf49 Revert "launcher: Put in some markers to help diff make a readable patch"
The markers have fulfilled their purpose.
2014-05-19 15:09:23 -04:00
Jasper St. Pierre
dcf64ca167 launcher: Replace mutter-launch with logind integration
This uses David Herrmann's new logind sessions interface to retrieve
fds for input devices, rather than using a custom setuid helper to do
the management. This vastly simplifies the interface.

This requires systemd v210, at least.

https://bugzilla.gnome.org/show_bug.cgi?id=724604
2014-05-19 15:09:23 -04:00
Jasper St. Pierre
f93fc1506b launcher: Put in some markers to help diff make a readable patch 2014-05-19 15:09:22 -04:00
Jasper St. Pierre
4ee8fb8154 launcher: Pause Clutter during VT switches 2014-05-19 15:09:20 -04:00
Jasper St. Pierre
446b75907e launcher: Remove the "VT-switched lock"
We'll replace it by pausing the Clutter master clock.
2014-05-19 15:03:06 -04:00
Jasper St. Pierre
480a853263 x11: Add simple cursor renderer 2014-05-17 13:27:16 -04:00
Jasper St. Pierre
3a0de6a4f1 cursor: Correct switching between fallback and backend cursors
When switching from the stage cursor to the native cursor, we
forgot to repaint the stage to get rid of the old cursor. Fix
this by having the abstract cursor renderer class track whether
we're using the backend, rather than doing chain-up shenanigans.
2014-05-17 13:27:15 -04:00
Jasper St. Pierre
fb9f22c02f cursor-renderer-native: Don't move the cursor when we don't need to 2014-05-17 10:58:49 -04:00
Jasper St. Pierre
10ac1000f7 cursor-renderer: We always use a MetaStage 2014-05-17 10:50:44 -04:00
Jasper St. Pierre
5b17c72047 backend: Create the cursor renderer after the monitor manager
The native cursor renderer needs to connect to the monitor manager's
signals.
2014-05-15 14:16:37 -04:00
Jasper St. Pierre
c8f3820956 backend-x11: Always pass None for the cursor
This means we fall back to what's defined on the root window, which
will give us our properly set cursor.
2014-05-13 16:20:03 -04:00
Jasper St. Pierre
f57b0726a0 cursor-tracker: Remove the grab cursor
We expect that meta_screen_set_cursor while grabbed will properly
set the cursor on the root window. Make sure this works by simply
always using the root cursor when we have an active grab.
2014-05-13 16:20:03 -04:00
Jasper St. Pierre
da175bca52 cursor-tracker: Use a separate cursor for xfixes cursor tracking 2014-05-13 16:20:03 -04:00
Giovanni Campagna
aed671810c MetaIdleMonitorDBus: unref the objects after exporting them
The object manager already has a reference.

https://bugzilla.gnome.org/show_bug.cgi?id=729732
2014-05-07 19:04:54 +02:00
Giovanni Campagna
2ca2c18c2a MetaMonitorConfig: don't always restore the previous config when opening the laptop lid
Only do it if the current configuration was actually created
as the result of closing the laptop lid.

https://bugzilla.gnome.org/show_bug.cgi?id=725637
2014-05-06 21:28:41 +02:00
Giovanni Campagna
01cd4b2ba0 MetaMonitorConfig: don't keep a previous config with the wrong outputs
We can only apply a configuration if its outputs match the connected
ones, so discard the current configuration if the set of output changes
(for example for hotplug), otherwise we will crash trying to apply
the bogus previous configuration.

https://bugzilla.gnome.org/show_bug.cgi?id=725637
2014-05-06 21:27:50 +02:00
Adel Gadllah
31c925c602 wayland: Add basic hidpi support
Advertise the scale factor on the output and transform pointer and damage
events as well as input and opaque regions for clients
that scale up by themselves i.e use set_buffer_scale.

We do not scale any 'legacy' apps yet.

https://bugzilla.gnome.org/show_bug.cgi?id=728902
2014-05-03 10:11:51 +02:00
Jasper St. Pierre
25a16c3379 Remove trailing whitespace 2014-05-02 09:34:48 -04:00
Jasper St. Pierre
9607513e62 backend-x11: Fix cursor position under nested 2014-04-28 13:29:45 -04:00
Jasper St. Pierre
18730f2a5e backend-x11: Take grabs on the stage window
This means that grabs will be reported with respect to the
stage window, and that our event coordinates will be more
correct under nested.
2014-04-28 13:29:31 -04:00
Jasper St. Pierre
c5d4f4a245 backend-x11: Split out event translation to another method
Keep the indentation from getting too hairy.
2014-04-24 12:12:54 -04:00
Jasper St. Pierre
a027937ccc backend-x11: Set the proper coordinates on the spoofed device event
When we click on a window with a passive grab, then the event_x
and event_y will be relative to that window, instead of relative to
the stage, which means that picking will be wrong.

Forcibly using root_x / root_y breaks nested mode. Nested mode is
a testing mode that should be replaced by a DRI3-enabled Xephyr,
though. It's getting too hairy to support properly.
2014-04-24 12:12:54 -04:00
Jasper St. Pierre
01a773ed5a backend-x11: Don't use clutter_stage_get_default
It turns out Clutter doesn't actually set the stage as the default
when creating a new one, so this creates a new stage that then dies.
2014-04-23 16:01:02 -04:00
Jasper St. Pierre
97074ccdad backend-x11: Fix leak of the event data 2014-04-23 15:43:34 -04:00
Jasper St. Pierre
6111bb9dec backend-x11: Adapt a consistent naming scheme for the event struct 2014-04-23 15:43:34 -04:00
Jasper St. Pierre
e9eb3c32a9 compositor: Move event spoofing code to MetaBackendX11
This is now where we handle device events.
2014-04-23 14:23:13 -04:00
Jasper St. Pierre
fdd43fc2d9 backend-x11: Add KeyPress / KeyRelease to mask 2014-04-23 14:23:12 -04:00
Jasper St. Pierre
4cbf420b4b idle-monitor-xsync: Clean up includes
Conflicts:
	src/backends/x11/meta-idle-monitor-xsync.c
2014-04-23 13:27:11 -04:00
Jasper St. Pierre
fd373948d2 idle-monitor-xsync: Retrieve your xdisplay from the backend 2014-04-23 13:27:11 -04:00
Jasper St. Pierre
1dc8a7eca3 monitor: Remove handle_xevent as a generic method 2014-04-23 12:15:12 -04:00
Jasper St. Pierre
861cfc23df x11: Make sure to handle RANDR events from the right connection 2014-04-23 12:15:12 -04:00
Jasper St. Pierre
86368e7e07 backend: Add grab_device / ungrab_device
This makes sure that we take active grabs on the correct connection.
Passive grabs are still broken.
2014-04-23 12:15:12 -04:00
Jasper St. Pierre
f42184ded8 display: Pull the grab cursor from the cursor tracker
This might look silly, but just wait...
2014-04-23 12:15:12 -04:00
Jasper St. Pierre
98a1573bee cursor: Save the original MetaCursor a cursor came from
So we can recreate it as a server-side cursor
2014-04-23 12:15:12 -04:00
Jasper St. Pierre
c6296aa17f cursor: Make load_cursor_on_server public 2014-04-23 12:15:12 -04:00
Jasper St. Pierre
b501ca5a24 cursor: Remove cursor tracker from API 2014-04-23 12:15:11 -04:00
Jasper St. Pierre
10ac86b950 backend: Clean up slightly 2014-04-23 12:15:11 -04:00
Jasper St. Pierre
def097359c cursor-renderer: Remove bogus assert 2014-04-23 10:24:26 -04:00
Jasper St. Pierre
6c743dad88 xrandr: Rewrite to be based on the X11 display connection 2014-04-23 10:24:26 -04:00
Jasper St. Pierre
274047c3f8 backend-native: Make sure to chain up to the parent post_init 2014-04-23 10:24:26 -04:00
Jasper St. Pierre
5752079cbb launcher: Finish the rename
Not sure how I missed this one...
2014-04-22 18:25:22 -04:00
Jasper St. Pierre
7014dc5368 launcher: Rename methods a bit 2014-04-22 17:42:25 -04:00
Jasper St. Pierre
fdaeb0cf9c launcher: Fix indentation 2014-04-22 17:42:13 -04:00
Jasper St. Pierre
59415bf49f launcher: Unconditionally set the FD
We only open weston-launch if we're in the native backend,
so we don't need to check here.
2014-04-22 17:42:13 -04:00
Jasper St. Pierre
3c3b94921f launcher: Move activate_session abstraction into the launcher code
login1 has a separate ActivateSession request, so put it here so
that we don't have to modify any backend code.
2014-04-22 17:42:13 -04:00
Jasper St. Pierre
0d9fa24be4 launcher: Fix up includes 2014-04-22 17:42:13 -04:00