Commit Graph

5950 Commits

Author SHA1 Message Date
900ae2c1fa window: Remove the borders parameter from adjust_for_gravity
We can simply use the existing cached borders.
2014-05-01 17:59:49 -04:00
01b6445708 window: Simplify adjust_for_gravity 2014-05-01 17:59:49 -04:00
292d502205 window: Fix typo in comment 2014-05-01 17:59:49 -04:00
adf2e44a82 core: Remove a few unused meta_core functions 2014-05-01 17:59:48 -04:00
d456e68375 keybindings: Fix another place we unfreeze on the wrong xdisplay 2014-04-30 09:32:51 -04:00
03efa3ccbc keybindings: Make sure to unfreeze the keyboard on the right xdisplay
This fixes keybindings getting "stuck" after being activated in
X11 compositor mode.
2014-04-30 09:32:51 -04:00
2101c8357b Move sync_request_* handling mostly to window-x11 2014-04-29 17:58:23 -04:00
575963bee7 window: Turn grab_op_begin / grab_op_ended into vfuncs
And move the grab_resize_popup management to the X11 window class,
as this is only used under X11.
2014-04-29 17:58:22 -04:00
7726001d43 window: Simplify resize_popup handling 2014-04-29 17:58:22 -04:00
e382a4b560 window: Replace manual switch statement for a resizing grab op 2014-04-29 17:58:22 -04:00
70713cc7db window: Add some hooks for when grab ops begin / end on windows 2014-04-29 17:58:22 -04:00
417090f3fa window: Remove some superfluous uses of window->xwindow 2014-04-29 17:58:21 -04:00
9fcc57cdec core: Remove unused function 2014-04-29 17:58:21 -04:00
7bf0c77193 window: Move _NET_WM_ALLOWED_ACTIONS setting to window-x11 as well 2014-04-29 17:58:21 -04:00
f2328f1105 window: Move meta_window_move_resize_request to window-x11 2014-04-29 17:58:21 -04:00
d9a2443e53 Fix crash when cursor theme lookup failed
meta_cursor_reference_from_theme() may return %NULL on failure,
in which case we currently crash when trying to release it.
2014-04-29 22:20:03 +02:00
b773898a60 window-wayland: Fix resizing from the top/left once more
Restoring the position in our move_resize_internal implementation
is too late. We need to do it at ack-time, before we hand off the
new position to the constraints code.
2014-04-28 18:22:55 -04:00
8461b2c910 window: Move move_resize_wayland to window-wayland.c
The move/resize logic is still busted for top/left resizes... sigh.
2014-04-28 18:22:55 -04:00
9b760dbbab window: Remove unused condition
IS_WAYLAND_RESIZE will always result in a RESIZED result, at least.
2014-04-28 18:22:55 -04:00
8b0747786a window: Move X11 struts implementation to X11 codepath 2014-04-28 17:34:33 -04:00
41235fcb86 keybindings: Remove now-unused meta_screen_grab_all_keys 2014-04-28 17:34:33 -04:00
1d5b4e5b2f display: Remove the same checks in end_grab_op 2014-04-28 17:34:32 -04:00
6e8d1d79d1 display: Make sure to retrieve the toplevel transient for
If we have multiple modal stacked dialogs, move the top one, not
the immediate parent, which heavily confuses mutter.
2014-04-28 17:34:32 -04:00
7cefe91c3c display: Fix tiling when grabbing an attached dialog
It seems we used the wrong variable by accident
2014-04-28 17:34:32 -04:00
1ef6a5542a display: Remove extraneous checks for grab_window
We assert a few lines down anyway, so just move the asserts up
and kill the if statement.
2014-04-28 17:34:32 -04:00
bc0f7def47 display: Clean up whitespace 2014-04-28 17:34:31 -04:00
f0175d1234 window: Don't reset pending_compositor_effect too early
With our surface_mapped strategy, implement_showing might not
change whether the window has been shown or not, and thus we
might end up clearing pending_compositor_effect before the window
is mapped.

Only clear pending_compositor_effect when the effect has actually
been used.
2014-04-28 16:59:34 -04:00
eb0c4db46d keyboard: Don't use a grab interface for sending key events 2014-04-28 16:30:51 -04:00
19e97ec567 keyboard: Remove start_grab / end_grab
It's unused.
2014-04-28 16:30:50 -04:00
ce5c029509 window-wayland: Make sure to save where the position for server-initiated resizes
For the server-initiated resize case, like unmaximize or some forms
of tiling, we dropped the x/y of the server-assigned rectangle on the
floor, which meant the surface didn't move to where it needed to be in
that case. Now, save it internally, and combine it with the dx/dy passed
in during attaches to figure out where we actually need to be.

Make sure to only use it for when we send out a configure notify. We
should use the passed in rectangle for other scenarios, like a
client-initiated resize.

This fixes incorrect surface placement after unmaximization.
2014-04-28 16:23:38 -04:00
647743aa5f Revert "window-wayland: Don't enter the only-moving path for Wayland
resizes"

We're going to use the old code structure now.

This reverts commit 23ae11043f.
2014-04-28 16:23:38 -04:00
e94f169d4e Revert "window-wayland: Make sure to save where the position for server-initiated resizes"
This is wrong for client-initiated resizes now.

This reverts commit e6b0525c70.
2014-04-28 16:23:38 -04:00
e6b0525c70 window-wayland: Make sure to save where the position for server-initiated resizes
For the server-initiated resize case, like unmaximize or some forms
of tiling, we dropped the x/y of the server-assigned rectangle on the
floor, which meant the surface didn't move to where it needed to be in
that case. Now, save it internally, and combine it with the dx/dy passed
in during attaches to figure out where we actually need to be.

This fixes incorrect surface placement after unmaximization.
2014-04-28 16:11:10 -04:00
23ae11043f window-wayland: Don't enter the only-moving path for Wayland resizes
We'll be adding additional code here for "correct" moving soon, so
we need to make sure not to do it for Wayland resizes.
2014-04-28 16:11:09 -04:00
78657dafca window-wayland: Clean up a bit 2014-04-28 16:11:09 -04:00
0f47eae33a window-wayland: Split an if statement in two 2014-04-28 16:11:09 -04:00
2209eac2bf constraints: Make meta_window_constrain take window geometry rects
Remove extend_by_frame and unextend_by_frame. Use a dumb hack in
window.c to translate into window geometry in back. We'll soon track
all rectangles in MetaWindow in terms of the window geometry.
2014-04-28 16:11:09 -04:00
aed6d4fbb7 default: Remove the maximize effect
It looks awful, and doesn't work with Wayland at all for some
reason, which means that maximize seems to "hang" for half a
second. Just trash it.
2014-04-28 15:20:49 -04:00
270c7abd3c default: Remove the unmaximize implementation
It does nothing.
2014-04-28 15:20:48 -04:00
e2bd15541b default: Remove unused internal state tracking 2014-04-28 15:20:48 -04:00
9607513e62 backend-x11: Fix cursor position under nested 2014-04-28 13:29:45 -04:00
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
4e584c2cf0 display: Don't call x11 backend code when running native
https://bugzilla.gnome.org/show_bug.cgi?id=729044
2014-04-27 20:24:15 +02:00
d1619e4f53 wayland-pointer: Remove the conditional around the surface actor too
The actor should always exist.
2014-04-27 10:39:19 -04:00
c8d0a66921 wayland-surface: Ignore bufferless damage
Instead of letting a buggy client kill us.
2014-04-27 16:18:09 +02:00
dd4d6af185 wayland-surface: Only call process_damage when we have any damage
This fixes a crash when a client commits a surface
without attaching a buffer.
2014-04-27 16:12:02 +02:00
657318d4d3 meta-wayland-pointer: Remove the surface->window conditional 2014-04-25 20:38:24 +02:00
f051e05b0a meta-wayland-pointer: Transform coordinates relative to the surface_actor
Not the window_actor ..
2014-04-25 20:36:46 +02:00
ca75513880 prefs: Add center-new-windows setting 2014-04-25 15:26:24 +02:00
63f1a10e33 compositor: Don't select for weird events on the COW/stage
Talking it over with Owen, we weren't sure why this was here.

At one point, we were creating a foreign stage window, so potentially
Clutter didn't select for its own events, but now we're using a standard
stage window, so this seems weird.

Why we did it on the COW, nobody knows. Maybe copy/paste bugginess?
2014-04-24 16:26:21 -04:00