Rob Bradford
91a11ee277
wayland: Ensure we destroy the shell surface when destroying the surface
...
Otherwise we can try and use an invalid object that the compositor has already
deleted.
2012-07-12 15:58:38 +01:00
Rob Bradford
8bd1478596
wayland: wl_shell_surface_set_popup requires a valid seat and serial
...
If we don't have our own grab then get the grab from the parent.
2012-07-12 15:58:38 +01:00
Rob Bradford
5b81186be3
wayland: Protocol update: wl_pointer_set_cursor takes a serial
2012-07-12 15:58:38 +01:00
Rob Bradford
310fd40357
wayland: Protocol update: wl_shell_surface_resize and _move take serials
2012-07-12 15:58:38 +01:00
Rob Bradford
9f039e5b74
wayland: Save the serial number for the ping event
2012-07-12 15:58:38 +01:00
Rob Bradford
a4f032f1ea
wayland: Save the serial numbers for the pointer events
2012-07-12 15:58:38 +01:00
Rob Bradford
7fe87016f3
wayland: Add internal API for handling Wayland serial numbers
...
We need to keep track of the serial numbers for various API requests.
2012-07-12 15:58:38 +01:00
Rob Bradford
17d1c3c833
wayland: Ensure that _get_client_pointer returns a pointer
...
The previous implementation could return a device that is a keyboard.
2012-07-12 15:58:38 +01:00
Rob Bradford
77791f0708
wayland: Port to libxkbcommon API changes
...
xkb_string_to_keysym -> xkb_keysym_from_name
xkb_keysym_get_name -> xkb_keysym_get_name
2012-07-12 15:58:38 +01:00
Rob Bradford
93a338245a
wayland: Switch to new wayland cursors mechanism
2012-07-12 15:58:38 +01:00
Rob Bradford
33b9f8e1b8
wayland: Protocol change: wl_buffer_damage
...
wl_buffer_damage is no longer necessary - it is sufficient to damage the
surface that the buffer is attached to instead.
2012-07-12 15:58:38 +01:00
Rob Bradford
6cdb75256e
wayland: Protocol change: configure event
...
The 'time' value has been removed.
2012-07-12 15:58:38 +01:00
Rob Bradford
0d1ae2e0dd
wayland: Protocol change: wl_shell_surface_* take surfaces for parents
...
These functions used to take shell_surface objects and now take surface
objects the parents.
2012-07-12 15:58:38 +01:00
Rob Bradford
8d7869ecbb
wayland: Remove unused variable
2012-07-12 15:58:38 +01:00
Rob Bradford
598c1b27fe
wayland: Temporary disable/hackaround keyboard code
2012-07-12 15:58:38 +01:00
Rob Bradford
f20ac38315
wayland: Port to SHM pool allocation mechanism
2012-07-12 15:58:38 +01:00
Rob Bradford
3eb0b195ed
wayland: Port to new input protocol mechanism
...
This replaces the wl_input_device with wl_pointer, wl_keyboard, wl_touch all
tied together under a wl_seat.
This is quite a radical change in protocol and for now keyboard handling is
disabled.
2012-07-12 15:58:38 +01:00
Rob Bradford
b1a5b19b4a
wayland: Load cursor theme using new Wayland cursor library
...
This requires the SHM object be initialised - therefore this is the most
logical (if slightly ugly place.)
We also need to make sure that we do something clever to load the correct
cursor theme.
2012-07-12 15:58:38 +01:00
Rob Bradford
2928ffc7b1
wayland: Remove unhelpful debug message
2012-07-12 15:58:37 +01:00
Rob Bradford
936ceb84b5
wayland: Protocol change: ping event on shell_surface
2012-07-12 15:58:37 +01:00
Rob Bradford
a9dc48ce94
wayland: Update to new header path for xkbcommon
2012-07-12 15:58:37 +01:00
Rob Bradford
af8e4ee8e7
wayland: Calculate window position offset to give emulated root coordinates
...
This allows combo box popup windows to appear in the correct place. This is a
workaround emulating root coordinates by calculating the offset for a chain
of windows that that are relative to each other.
2012-04-25 14:36:08 +01:00
Rob Bradford
568b310eb3
wayland: Only update position if the with_move flag is set
...
This was causing the combobox popup to be moved to (0,0) when just the
size was asserted.
2012-04-25 12:00:40 +01:00
Rob Bradford
55261f4e3f
wayland: Improve error message handling in cursor buffer code
2012-04-25 12:00:40 +01:00
Rob Bradford
1aa2a7f821
wayland: Improve the error reporting in the Cairo GL surface code path
2012-04-19 17:59:09 +01:00
Rob Bradford
b5845514ec
wayland: Improve error messages during SHM buffer creation
...
Use g_critical rather than fprintf and and also grab the error messages from
errno and from Cairo
2012-04-19 17:58:59 +01:00
Rob Bradford
cd831b1390
wayland: Expose GdkWaylandDisplayManager as a public GType
...
This permits a runtime test of whether we are running on the Wayland platform
or not.
2012-04-17 18:40:41 +01:00
Rob Bradford
6f9ad538d9
wayland: Rename GdkScreenWayland to GdkWaylandScreen
...
This makes it consistent with the functions in the vtable and also consistent
with other backends.
2012-04-17 14:11:31 +01:00
Rob Bradford
fc58ff1e6a
wayland: Rename GdkDisplayWayland to GdkWaylandDisplay
...
This makes it consistent with the functions in the vtable and also consistent
with other backends.
2012-04-17 14:11:31 +01:00
Rob Bradford
71ca53993e
wayland: Use an ARGB buffer for the Cairo and SHM surface
2012-04-16 15:09:14 +01:00
Rob Bradford
cddfcf1418
wayland: Force an expose for the whole area when scrolling
2012-04-16 15:09:14 +01:00
Rob Bradford
cdf5c2af62
wayland: Add support for rendering into an SHM buffer with Cairo image backend
...
The first version of this change included a bug that meant that if you don't
compile for any other backend then it wouldn't search for cairo. Credit for
identifying the bug goes to darxus@chaosreigns.com .
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=672361
2012-04-16 15:09:14 +01:00
Rob Bradford
6977ea0bd1
wayland: Move the buffer creation to the cairo surface creation
2012-04-16 14:12:51 +01:00
Rob Bradford
d9ca1a8636
wayland: Move the finalize function to allow a clear logical block of code
2012-04-16 14:12:51 +01:00
Rob Bradford
a8d03c9970
wayland: Remove unused member from struct
2012-04-16 14:12:51 +01:00
Mathias Hasselmann
ebc2bda82b
wayland: hide predefined_atoms
...
This is a private symbol and should not be public.
2012-03-16 22:45:51 +01:00
Benjamin Otte
114b45c7eb
gdk: Make query_state() vfunc a void vfunc
...
... and make sure the backends implement it that way.
query_state() return value was ignored in all of GDK and caused crashes
when it failed.
2012-03-09 13:23:05 +01:00
Rob Bradford
c6b0e91e87
wayland: Add some useful comments explaining the cairo surface behaviour
2012-03-06 21:24:41 +00:00
Rob Bradford
ff2acecac6
wayland: Add NULL warning check to _gdk_wayland_window_set_device_grabbed
2012-03-06 21:24:41 +00:00
Rob Bradford
99e0f4b62c
wayland: Don't try and reset the pointer window grab if there wasn't one
2012-03-06 21:24:41 +00:00
Rob Bradford
8db9ba9e43
wayland: Categorise menus, popups and combo boxes as Wayland popup windows
...
Once we've made them popup windows we must also implement the popup_done event
handler on the shell surface listener. The best we can currently do is to hide
the window. This will then signal up to GTK which could then deactivate the
appropriate menu (see https://bugzilla.gnome.org/show_bug.cgi?id=670881 )
2012-02-27 17:15:12 +00:00
Rob Bradford
bdca0520e6
wayland: Store the device that does a grab for a window on the window
...
This allows us to get the device if we need to make the window a popup. This
relies on the side effect that GTK calls into GDK to take a grab before the
popup window is shown.
2012-02-27 17:15:12 +00:00
Rob Bradford
161b9d2066
wayland: Call wl_shell_surface_set_{popup,transient,toplevel} before attach
...
The requests only have an effect if you call them before the buffer is
attached to the surface.
2012-02-27 17:15:12 +00:00
Javier Jardón
9d0febc9a6
Change FSF Address
2012-02-27 17:06:11 +00:00
Michael Natterer
8c1c4dfd7c
gdk: pull more precondition checks into the generic gdkscreen.c
2012-02-24 16:44:44 +01:00
Michael Natterer
427b88f541
GdkScreen: fix precondition checks in the public API
...
Move g_return_if_fail() stuff from the backends to the public
functions in gdkscreen.c itself, and some fixes for ugly formatting in
the various gdkscreen-backend.c files.
2012-02-21 17:19:35 +01:00
Kristian Høgsberg
12e661c801
wayland: Fix return type from gdk_wayland_window_configure()
...
Should be void. Copy and paste error.
2012-01-30 09:07:24 -05:00
Kristian Høgsberg
aae9a71986
wayland: Also synthesize a configure event from gdk_window_wayland_move_resize
2012-01-29 07:32:44 -05:00
Kristian Høgsberg
b9190c7fe9
wayland: Destroy shell surface as we destroy the surface
2012-01-19 09:57:43 -05:00
Kristian Høgsberg
4c79e25915
wayland: Report middle and right buttons correctly
...
The linux evdev button codes have right as 274 and left as 273.
2012-01-18 12:04:18 -05:00