Jasper St. Pierre
be60e4f6e7
cursor-tracker: Make set_window_cursor take a MetaCursorReference as well
2014-03-31 18:27:19 -04:00
Jasper St. Pierre
1e2bdcc3c5
idle-monitor: Move reset_idletime handling to events.c
...
It's not specific to the Wayland protocol at all, and it's not really
a Wayland compositor thing. This should eventually be in the native
backend.
2014-03-30 22:55:02 -04:00
Jasper St. Pierre
97ea4e8717
xwayland: Remove some stray logs
...
These really aren't too helpful.
2014-03-26 12:04:14 -04:00
Jasper St. Pierre
208296a619
wayland: Shut up about Setenv if we're past initialization
...
I'm a bit tired of hearing about this when I launch mutter-wayland
nested. Ideally, this would be part of display server integration,
not GNOME integration, so we could simply not make the call when
nested, but oh well.
2014-03-26 12:02:08 -04:00
Jasper St. Pierre
d699b2409a
xwayland: Shut up conditionally
2014-03-25 12:54:13 -04:00
Jasper St. Pierre
ef65848d11
window-wayland: Implement kill
2014-03-25 12:05:21 -04:00
Jasper St. Pierre
44580ddb80
wayland-surface: Unref the buffer after removing the destroy listener
2014-03-25 12:00:38 -04:00
Jasper St. Pierre
456e3e2429
xwayland: Punt stdout / stderr to /dev/null
...
This should really go to the journal, but I'm tired of seeing Xorg
log a bunch of garbage that I don't care about when debugging mutter.
2014-03-25 12:00:38 -04:00
Rui Matos
7484d540cd
wayland: Use an array initializer for the X server arguments
...
This fixes the unitialized array members introduced previously and
should avoid such mistakes again going forward.
https://bugzilla.gnome.org/show_bug.cgi?id=727011
2014-03-25 14:52:57 +01:00
Ray Strode
a55622d924
wayland: drop -logfile argument
...
It breaks testing wayland with setuid X server.
2014-03-24 14:18:49 -04:00
Jasper St. Pierre
0808adefaf
Move focus to be a vfunc
2014-03-20 15:20:15 -04:00
Jasper St. Pierre
14f424cd02
Move ping to be a vfunc
2014-03-20 15:20:15 -04:00
Jasper St. Pierre
9debd2fb0d
Move delete / kill to be a vfunc
2014-03-20 15:07:44 -04:00
Jasper St. Pierre
57359da9b4
wayland: Kill the buffer destroy error
...
Previously, a sequence like this would crash a client:
=> surface.attach(buffer)
=> buffer.destroy()
The correct behavior is to wait until we release the buffer before
destroying it.
=> surface.attach(buffer)
=> surface.attach(buffer2)
<= buffer.release()
=> buffer.destroy()
The protocol upstream says that "the surface contents are undefined"
in a case like this. Personally, I think that this is broken behavior
and no client should ever do it, so I explicitly killed any client
that tried to do this.
But unfortunately, as we're all well aware, XWayland does this.
Rather than wait for XWayland to be fixed, let's just allow this.
Technically, since we always copy SHM buffers into GL textures, we
could release the buffer as soon as the Cogl texture is made.
Since we do this copy, the semantics we apply are that the texture is
"frozen" in time until another newer buffer is attached. For simple
clients that simply abort on exit and don't wait for the buffer event
anyhow, this has the added bonus that we'll get nice destroy animations.
2014-03-20 13:53:05 -04:00
Rui Matos
76dc0ca681
wayland: Exempt CLICKING grab ops when syncing wayland input focus
...
If we have a CLICKING grab op we still need to send events to xwayland
so that we get them back for gtk+ to process thus we can't steer
wayland input focus away from it.
https://bugzilla.gnome.org/show_bug.cgi?id=726123
2014-03-20 17:08:53 +01:00
Rui Matos
8968501031
wayland-seat: Don't send pointer enter/leave events during a GRAB_OP
...
meta_wayland_seat_repick() can be called in various cases while mutter
has a GRAB_OP ongoing which means we could be sending wrong pointer
enter/leave events.
https://bugzilla.gnome.org/show_bug.cgi?id=726123
2014-03-20 17:08:53 +01:00
Jasper St. Pierre
a53e094fcd
window: Move move_resize_internal logic to protocol-specific directories
2014-03-20 11:02:50 -04:00
Jasper St. Pierre
a377a1a110
window: Move client-type-specific managing / unmanaging to a vfunc
2014-03-20 10:51:32 -04:00
Jasper St. Pierre
1c41f71eef
window: Add a type for Wayland windows
2014-03-20 10:50:27 -04:00
Jasper St. Pierre
0eb86de807
Move Wayland protocols into src/wayland
2014-03-18 20:37:35 -04:00
Rui Matos
b3364cad3e
wayland: Update keyboard state unconditionally
...
In particular we need to know about all key events to keep the xkb
state reliable even if the event is then consumed by a global shortcut
or grab and never reaches any wayland client.
We also need to keep track of all pressed keys at all times so that we
can send an updated set or pressed keys to the focused client when a
grab ends.
https://bugzilla.gnome.org/show_bug.cgi?id=722847
2014-03-18 19:15:17 +01:00
Rui Matos
3502cfba34
wayland-keyboard: Split out a function to determine the evdev keycode
...
We will need to use this is in another place on the next commit.
https://bugzilla.gnome.org/show_bug.cgi?id=722847
2014-03-18 19:15:17 +01:00
Rui Matos
5cc6becb63
wayland-keyboard: Make sure we send an updated modifiers event
...
Any given clutter event carries the modifier state as it was before it
occured but, for the wayland modifiers event, we want the state
including the current event.
To fix this, we'll keep our xkb_state instance around instead of the
serialized mods.
https://bugzilla.gnome.org/show_bug.cgi?id=722847
2014-03-18 19:15:17 +01:00
Jasper St. Pierre
ae8f21a3dc
wayland-keyboard: Don't use our own tracking to detect autorepeat
...
Clutter already marks all autorepeat key events it as synthetic
key events. We can simply ignore these instead of relying on custom
key tracking code.
2014-03-18 19:15:17 +01:00
Rui Matos
62e45b6d5e
wayland-pointer: Drop unused arg from focus grab interface method
...
https://bugzilla.gnome.org/show_bug.cgi?id=726123
2014-03-17 11:06:58 +01:00
Jasper St. Pierre
0f85986340
Add a META_MAXIMIZE_BOTH
...
Which has the value of META_MAXIMIZE_VERTICAL |
META_MAXIMIZE_HORIZONTAL.
This is an obvious code cleanup.
2014-03-15 09:49:56 -04:00
Jasper St. Pierre
93ac0329db
weston-launch: Fix a typo causing mutter-launch to not work
2014-03-14 16:04:56 -04:00
Jasper St. Pierre
c539dfe0d7
weston-launch: Pass the DRM device to Cogl
...
Open the device from weston-launch, and pass it to Cogl/Clutter.
This is a preliminary cleanup for our login1 integration.
2014-03-14 14:13:05 -04:00
Jasper St. Pierre
a9d8107c3d
window: Replace meta_window_type_changed with meta_window_set_type
...
Which does the equality checking for us.
2014-03-13 17:14:28 -04:00
Jasper St. Pierre
d1ea17e6a4
meta-weston-launch: Adapt to Clutter's new evdev open callback
2014-03-13 12:47:11 -04:00
Jasper St. Pierre
b37ad66e9d
xdg-shell: Update for new state change mechanism
...
We're still not properly going through the request system. This
will require a dense investigation of the code, but it will happen
soon...
2014-03-12 23:42:55 -04:00
Matthias Clasen
c1f15348a5
Revert "weston-launch: Pass the DRM device to Cogl"
...
This reverts commit 857561baed
.
This broke the build, and was pushed prematurely.
2014-03-12 14:48:46 -04:00
Jasper St. Pierre
857561baed
weston-launch: Pass the DRM device to Cogl
...
Open the device from weston-launch, and pass it to Cogl/Clutter.
This is a preliminary cleanup for our login1 integration.
2014-03-11 18:01:21 -04:00
Jasper St. Pierre
a44cc9ef47
wayland: Fix build
2014-03-11 18:01:17 -04:00
Jasper St. Pierre
d47b7ba038
Add meta_activate_session
...
This will be used on startup to switch to the newly activated session.
2014-03-11 17:25:40 -04:00
Jasper St. Pierre
f21312e2fd
meta-weston-launch: Redraw and update the cursor when switching back
2014-03-11 17:25:40 -04:00
Jasper St. Pierre
394af33607
weston-launch: Allow activating our own VT by passing a negative value
...
This will be used to implement activate_session.
2014-03-11 17:25:40 -04:00
Jasper St. Pierre
7314cdac94
weston-launch: Always use sd_session_get_vt
2014-03-11 17:25:40 -04:00
Jasper St. Pierre
81025e37ea
weston-launch: Stat the path before opening it
2014-03-11 17:25:39 -04:00
Jasper St. Pierre
1bb9f1e333
weston-launch: Remove unused prototypes
2014-03-11 17:25:39 -04:00
Jasper St. Pierre
b11c75c1c9
weston-launch: Rearrange code slightly
...
We need to initialize the main loops before our callback is called, so
this makes it make a slight bit of more sense.
2014-03-11 17:25:39 -04:00
Jasper St. Pierre
757b626aee
wayland: Add a few comments, rename some strings
2014-03-11 17:25:02 -04:00
Jasper St. Pierre
e34792d9f0
wayland: Remove needless indirection
2014-03-11 16:00:43 -04:00
Jasper St. Pierre
f397c32192
wayland: Make set_selection private
...
It's unused outside of us.
2014-03-11 15:42:37 -04:00
Jasper St. Pierre
f79314d7b5
wayland: Fix destroying data sources
...
The resource is not embedded in the source, it's separate. We need
to get the user data here to not crash.
2014-03-11 15:30:17 -04:00
Jasper St. Pierre
55c61259d8
wayland: Use g_slice_new0
...
And fix a leak.
2014-03-11 15:30:17 -04:00
Jasper St. Pierre
5298cf0a3a
wayland: Pull in a fix for a FIXME from Weston
2014-03-11 15:30:17 -04:00
Jasper St. Pierre
f1dc1a0cbc
wayland: Fix drag grabs
...
We need to have the seat here. This makes weston-dnd not crash when
clicking on an item.
2014-03-11 15:30:16 -04:00
Jasper St. Pierre
9df8e831be
xwayland: Make sure to clear an existing surface if we have one
...
This fixes an assert fail when redecorating an X11 client.
2014-03-11 10:24:13 -04:00
Jasper St. Pierre
84c6b2a3fa
wayland: Remove an extra reset
...
We already reset the double-buffered state when we commit it, so this
is just superfluous.
2014-03-11 10:24:13 -04:00