Jasper St. Pierre
954677dcbd
window: Make sure to end the grab even if the last action was a snap
...
This seems to be a cherry-pick failure while we were switching event
handling around. This matches what the master branch does.
2014-04-09 12:40:13 -07:00
A. Walton
4396ac809b
screen: Name the guard window
...
So that extensons can recognize it, for the case where they
want to watch the window list.
https://bugzilla.gnome.org/show_bug.cgi?id=710346
2014-04-09 12:20:07 -07:00
Jasper St. Pierre
797c46ba7d
events: Fix event handling for window menus under X11
...
We need to pass XI_Enter / XI_Leave events for GTK+ windows to GTK+,
rather than eating them.
2014-04-09 11:38:49 -07:00
Jasper St. Pierre
2f229c3928
display: Remove code to calculate the above-tab keycode
...
We always know it will be KEY_GRAVE + 8.
2014-04-07 17:56:00 -04:00
Jasper St. Pierre
a730361d6c
Use libxkbcommon keysym names everywhere
2014-04-07 17:56:00 -04:00
Jasper St. Pierre
db058d4a81
keybindings: Use xkb_keysym_get_name
2014-04-07 17:56:00 -04:00
Jasper St. Pierre
15cf804dbc
keybindings: Eliminate the use of the stored modmap
...
We can simply check the XKB keysym here to see if it's a modifier.
2014-04-07 17:55:59 -04:00
Jasper St. Pierre
b38b037092
keybindings: Don't bother saving num_lock / caps_lock in MetaDisplay
...
It's unused outside of this one function.
2014-04-07 17:55:58 -04:00
Jasper St. Pierre
42bcad6549
display: Ignore the modmask passed into meta_display_begin_grab_op
...
A careful analysis of mutter's codebase shows that nothing actually
passes anything but 0 to this. gnome-shell has one instance, but it's
most likely a mistake.
Remove the grab_mask field and the one place in keybindings.c that uses it.
The parameter to begin_grab_op is left in for API compatibility reasons.
2014-04-07 17:45:52 -04:00
Jasper St. Pierre
b0ea0afd2f
display: Remove meta_display_get_ignored_modifier_mask
...
It's unused, in both here and in gnome-shell.
2014-04-07 17:16:29 -04:00
Jasper St. Pierre
1d08d75108
keybindings: Rename and move keysym_to_keycode
...
This makes it more what it's actually doing.
2014-04-07 16:02:08 -04:00
Jasper St. Pierre
4daf20483d
keybindings: Handle META_KEY_ABOVE_TAB in get_keycodes_for_keysym
...
We're going to switch to get_keycodes_for_keysym for the other
bindings, so add that special case here.
2014-04-07 16:01:24 -04:00
Jasper St. Pierre
96b6dcec01
display: Kill some bad whitespace
2014-04-07 16:00:17 -04:00
Jasper St. Pierre
9fe5a3b407
keybindings: Fix style
2014-04-07 16:00:17 -04:00
Jasper St. Pierre
a7d4713393
accel-parse: Add a notice about where the code came from
2014-04-07 11:25:16 -04:00
Jasper St. Pierre
4d4ecae2a1
accel-parse: Clean up trailing whitespace
2014-04-07 11:24:23 -04:00
Jasper St. Pierre
545c3b6678
accel-parse: Clean up error handling
...
Now that we have the code in-tree, we can change the API to actually
report an error rather than checking afterwards.
2014-04-07 11:21:36 -04:00
Jasper St. Pierre
e70f336a09
accel-parse: Use libxkbcommon for keysym parsing
...
This kills our dependency on GTK+ / GDK entirely.
2014-04-07 11:19:41 -04:00
Jasper St. Pierre
806f1742ac
accel-parse: Switch code to output MetaVirtualModifier directly
2014-04-07 11:19:40 -04:00
Jasper St. Pierre
0dc63f395d
accel-parse: Remove support for <Release>
2014-04-07 11:15:01 -04:00
Jasper St. Pierre
616f1a09b1
accel-parse: Add keycode parsing as well
2014-04-07 11:15:01 -04:00
Jasper St. Pierre
50e69109b6
accel-parse: Integrate Above_Tab parsing code directly into our copy
2014-04-07 11:15:01 -04:00
Jasper St. Pierre
242784d3e4
accel-parse: Copy the code from GTK+ in-tree
...
We can't use GTK+ for accelerator parsing under Wayland, since we
don't want to go through Xwayland to make that happen.
2014-04-07 11:14:35 -04:00
Jasper St. Pierre
0466fe9301
Move meta_ui_parse_accelerator into core/
...
We're currently using GTK+ for this, but we'll stop doing that fairly
quickly and instead just copy the GTK+ code in-tree.
2014-04-07 10:59:46 -04:00
Jasper St. Pierre
b9e9595e8b
errors: Kill off meta_error_trap_push_with_return
...
It isn't special; it's just an alias for meta_error_trap_push.
2014-04-07 10:37:03 -04:00
Jasper St. Pierre
75de29f5f7
errors: Remove vestigals of old error trap implementation
2014-04-07 10:37:03 -04:00
Jasper St. Pierre
e2b24092d6
events: Don't pass any X input events on to Clutter / GTK+
2014-04-07 10:37:02 -04:00
Jasper St. Pierre
0e6570b09b
events: Early exit when we get a SN notification event
...
Nothing else needs to see this.
2014-04-07 10:37:02 -04:00
Jasper St. Pierre
be02fa1120
xwayland: Switch to the new Xwayland DDX
2014-04-02 13:24:57 -04:00
Jasper St. Pierre
3c404c5db3
wayland: Replace make_toplevel / window_unmanaging with set_window
...
The make_toplevel / window_unmanaging interface has never made
a lot of sense to me. Replace it with set_window, which does
effectively the same thing.
It's still not perfect in the case of XWayland, but I don't think
XWayland will ever make me happy.
2014-04-02 11:41:07 -04:00
Jasper St. Pierre
ab6bc76bfd
Move edid-parse to backends/
2014-04-01 14:35:04 -04:00
Jasper St. Pierre
bce1d5117b
Start creating different subdirectories for each backend
2014-03-31 23:44:47 -04:00
Jasper St. Pierre
5bcc78498f
Move MetaLauncher to meta-backend
2014-03-31 23:44:46 -04:00
Jasper St. Pierre
89b931435d
Move meta_clutter_init into a new file
...
We'll use this to get the initialization between the Wayland and
X11 compositor codepaths back in sync.
2014-03-31 23:44:25 -04:00
Jasper St. Pierre
e22e9f5df5
main: Refactor some code slightly
2014-03-31 22:55:13 -04:00
Jasper St. Pierre
2cf185b4e4
Move mutter-Xatomtype to x11/
2014-03-31 22:13:12 -04:00
Jasper St. Pierre
229360b248
Start molding out a new src/backends/ dir
...
Right now this just has all of the files in one directory. We'll
be introducing more structure to this in the future, and build
a proper backend system.
2014-03-31 22:11:00 -04:00
Jasper St. Pierre
ccced506ed
Rename monitor => meta-monitor-manager
2014-03-31 22:05:24 -04:00
Jasper St. Pierre
28b9160c01
Rename monitor-config => meta-monitor-config
2014-03-31 22:05:22 -04:00
Jasper St. Pierre
ba6584a0d7
Move monitor-config to its own header file
2014-03-31 22:04:38 -04:00
Jasper St. Pierre
2a0289a216
Move the dummy monitor manager to his own subclass / file
2014-03-31 21:52:32 -04:00
Jasper St. Pierre
f6a73bcf22
cursor: Do less work if we don't have a connection to GBM at all
2014-03-31 19:14:56 -04:00
Jasper St. Pierre
59e064f610
cursor: Split out code that loads an image into a GBM buffer
2014-03-31 19:14:56 -04:00
Jasper St. Pierre
ba131626c2
cursor: Always use cogl_wayland_texture_2d_new_from_buffer
...
It makes our life so much easier.
2014-03-31 19:14:56 -04:00
Jasper St. Pierre
30ebf46aa4
cursor: Reindent
2014-03-31 19:14:56 -04:00
Jasper St. Pierre
da27735265
cursor: Refactor code to load cursor images out
...
We're going to make MetaCursorReference specialized and per-backend soon.
2014-03-31 19:14:55 -04:00
Jasper St. Pierre
78dbf8cb56
cursor: Split out the structure for the actual textures / buffers out
...
This will allow us to have a MetaCursorReference 'subclass' that's
lazily loaded. We currently always load all the images.
The long-term plan is to have a subclass for each "backend" and only
have CoglTexture as a common denominator. For the nested X11 backend,
we use XDefineCursor on our stage window. For the Wayland backend, we
would use set_cursor on our stage surface. For the native backend, we
would use the GBM code that's there right now.
The CoglTexture is there to be a "shared fallback" between all devices,
and also for the get_sprite API.
The odd man out is the X11 compositor case. For that, we need to move
the responsibility of setting the final cursor image out of
MetaCursorTracker, and simply have it be about tracking the used sprite
image and pointer position.
2014-03-31 19:09:08 -04:00
Jasper St. Pierre
f4e299ca46
cursor: Split out code that frees the MetaCursorReference
2014-03-31 18:27:20 -04:00
Jasper St. Pierre
f95f2b0c6d
cursor-tracker: Make set_root_cursor take a MetaCursorReference
2014-03-31 18:27:20 -04:00
Jasper St. Pierre
fe42a4eb4e
screen: Move XDefineCursor on the root window here
...
This is really an X11 front-end thing, so it doesn't belong in the
cursor tracker, which is a back-end thing.
2014-03-31 18:27:20 -04:00