d3bc7570d0
window-actor: Update the shape region when the surface actor changes size
2013-11-25 17:18:22 -05:00
74e43a4702
cullable: Turn cull_out / reset_culling into a separate interface
...
Instead of hardcoded knowledge of certain classes in MetaWindowGroup,
create a generic interface that all actors can implement to get parts of
their regions culled out during redraw, without needing any special
knowledge of how to handle a specific actor.
The names now are a bit suspect. MetaBackgroundGroup is a simple
MetaCullable that knows how to cull children, and MetaWindowGroup is the
"toplevel" cullable that computes the initial two regions. A future
cleanup here could be to merge MetaWindowGroup / MetaBackgroundGroup so
that we only have a generic MetaSimpleCullable, and move the "toplevel"
cullability to be a MetaCullableToplevel.
https://bugzilla.gnome.org/show_bug.cgi?id=714706
2013-11-25 15:21:36 -05:00
0764b2058a
window-actor: Move the operations we need to do when we cull out here
...
Soon, we'll move this into a generic MetaCullable interface, but for
now, just put hardcoded knowledge in MetaWindowGroup.
https://bugzilla.gnome.org/show_bug.cgi?id=714706
2013-11-25 15:19:08 -05:00
7a787d7946
window-group: Decompose culling operations into two methods
...
This also fixes a bug in the translation of clip_region.
We will add an interface for this soon, so we can recursively cull like this...
https://bugzilla.gnome.org/show_bug.cgi?id=714706
2013-11-25 15:18:09 -05:00
eec0f5df47
display: Fix logic for determining whether our focus was successful
...
In some cases, we can focus the frame window instead of the client
window, so make sure that our checks include that as well.
https://bugzilla.gnome.org/show_bug.cgi?id=715030
2013-11-25 15:14:18 -05:00
ba3968a822
keybindings: Fix typo in port to Clutter events
...
We always want to trigger on key press.
2013-11-25 14:15:28 +01:00
762fa0e116
compositor: Also redirect windows in wayland compositor mode
...
XWayland was doing this for us but now it isn't anymore.
2013-11-25 12:00:55 +01:00
0be57b621b
window-actor: Fix a copy/paste typo
2013-11-21 17:35:52 -05:00
7d88b3593b
surface-actor: Remove unused field
2013-11-21 17:29:41 -05:00
858db7081a
background-group: Fix cast warning
2013-11-21 15:14:40 -05:00
5af7f619c8
background-group: Use the Clutter iteration APIs
2013-11-21 14:24:32 -05:00
e5e35e5a7f
background-group: Remove some unnecessary cruft
2013-11-21 14:24:32 -05:00
6d639ac528
window: Support pinging Wayland surfaces as well
2013-11-21 14:24:04 -05:00
aa3643cdde
Move window pings to MetaWindow
...
This will make it possible to use on Wayland as well...
2013-11-21 14:24:04 -05:00
8a3501ffe1
xwayland: Fix a couple of small leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=712833
2013-11-21 19:22:26 +01:00
5ea443eb4b
idle-monitor: Fix a GSList leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=712833
2013-11-21 19:22:25 +01:00
a37a8c6497
wayland-surface: Fix transient_for
...
It takes a wl_surface resource, not an xdg_shell_surface resource,
and the argument is allowed to be NULL.
2013-11-21 13:09:21 -05:00
ebf6862a10
wayland-surface: Don't mark popup windows as override-redirect
2013-11-21 13:09:21 -05:00
6c0e16c482
keybindings: Properly interpret keybindings
...
We need to compare against the keysym, not the keycode.
2013-11-21 13:09:21 -05:00
40b1e7312d
Update xdg-shell.xml
2013-11-21 13:09:21 -05:00
1c0e6f26e2
mutter-launch: Don't test the argument name to validate launching things
...
Somebody could do:
$ mv my-evil-program mutter-wayland
$ PATH=.:$PATH mutter-launch mutter-wayland
It's not secure, and it's hard to test with, so just drop it for now
We'll be relying on logind to hand us permissions in the future.
2013-11-20 17:07:03 -05:00
f4fc498e65
wayland-surface: Properly destroy extension resources on the destroy request
...
Otherwise, the resource IDs will linger around and be destroyed again
on client close...
2013-11-19 23:34:03 -05:00
a8632c2546
Revert "wayland-surface: Allow extension resources to be double-destroyed"
...
This reverts commit 2ebecc5370
.
2013-11-19 23:34:03 -05:00
600a0f836f
keyboard: Don't send leave events to dying surfaces
2013-11-19 20:26:28 -05:00
0ac142d39e
keyboard: Remove focus listener
2013-11-19 20:26:28 -05:00
abd368be00
pointer: Don't send leave events to dying surfaces
...
It's invalid and will crash the client.
2013-11-19 20:26:03 -05:00
a8ac2cc275
pointer: Remove focus listener
...
It's added too late to matter -- by the time we've destroyed the
resource, we've already repicked and re-set the focus.
2013-11-19 20:26:03 -05:00
2f14b5cc3f
wayland: Set a log handler
...
To see error messages and such
2013-11-19 20:26:02 -05:00
2930612e64
pointer: Remove dead and incorrect code
...
Now that we can never pick a destroying actor, we can remove these
bad asserts.
2013-11-19 19:35:34 -05:00
2952d3671d
window-actor: Set as unreactive when hiding
...
This means that we should never pick the actor when it's being destroyed.
2013-11-19 19:35:34 -05:00
1b5ace8256
window-actor: Don't set ourselves as reactive twice
2013-11-19 19:35:34 -05:00
2ebecc5370
wayland-surface: Allow extension resources to be double-destroyed
...
As they will be on shutdown... I'm not sure if this is a wayland-server
bug or not, but we should guard against it anyway.
2013-11-19 19:35:34 -05:00
02144d17e9
wayland-surface: Fill in the maximized/fullscreen hints to the configure event
2013-11-19 19:35:34 -05:00
71496c8909
Update xdg-shell.xml
2013-11-19 19:01:16 -05:00
594b15abf1
pointer: Fix crash when we have the pointer over nothing during a popup grab
2013-11-19 18:51:30 -05:00
bbe3641844
wayland-surface: Add support for xdg_popup
2013-11-19 18:44:21 -05:00
0cc5cf940b
wayland-surface: Remove some properties from the double-buffered state
...
Now that we can always set them on the MetaWindow...
2013-11-19 18:44:21 -05:00
153d8efcf5
window: Create a backing MetaWindow for unmapped Wayland surfaces
...
We require a MetaWindow to properly implement some of the requests
for xdg_surface, so add a way to have an unmapped MetaWindow that
we can store properties on, that we later map when the client
attaches a buffer...
2013-11-19 17:48:19 -05:00
be744775c1
wayland-surface: Support xdg_surface.destroy
...
Cool.
2013-11-19 17:48:19 -05:00
5959457c73
wayland-surface: Embed MetaWaylandSurfaceExtension in MetaWaylandSurface
...
This makes it easier to support xdg_surface.destroy, which we're
going to add support for next commit...
2013-11-19 17:48:19 -05:00
0824eb7c96
cursor-tracker: Make sure to sync after we change the cursor
...
So the cursor changes immediately...
2013-11-19 15:43:46 -05:00
d945501be6
window: Remove width/height from meta_window_new_for_wayland
2013-11-19 15:37:33 -05:00
ca342c4573
window: Remove unused parameter from meta_window_new_shared()
2013-11-19 15:37:33 -05:00
4326d0bf3a
compositor: Make sure to construct plugin_mgr in Wayland as well...
2013-11-19 15:37:31 -05:00
a6ebc70170
Bump version to 3.11.2
...
Update NEWS.
3.11.2-wayland
2013-11-19 20:15:13 +01:00
3025cb7c48
display: Remove unused variables
2013-11-19 20:12:51 +01:00
17f48baf3a
display: Tweak code to work around a compiler warning
...
The compiler is not quite smart enough to figure out that the condition
for setting the "compositor" variable matches a later condition for
accessing it, so express this in a way the compiler will understand.
2013-11-19 20:08:46 +01:00
333661a9d8
stack: Drop unused code
...
Since commit 2b2b2d3191
the code is unused and triggers a
compiler error with -Werror=unused-but-set-variable.
2013-11-19 20:08:46 +01:00
b9da43b753
Rename meta_window_get_outer_rect() to meta_window_get_frame_rect()
...
For clarity, rename meta_window_get_outer_rect() to match terminology
we use elsewhere. The old function is left as a deprecated
compatibility wrapper.
2013-11-19 14:04:16 -05:00
097ee776c7
Stop passing around MetaFrameBorders
...
Instead of passing around MetaFrameBorders, compute it when we need it.
This also allows us to know that we are using MetaFrameBorders only for windows
with frames (where it is meaningful) and not for frameless windows, which
can have custom borders which we need to interpret differently.
https://bugzilla.gnome.org/show_bug.cgi?id=707194
2013-11-19 14:04:16 -05:00