Commit Graph

4342 Commits

Author SHA1 Message Date
Matthias Clasen
14ad1fab8e GdkDisplay: Struct packing improvements 2011-04-12 12:13:55 -04:00
Matthias Clasen
63c4bb5563 GdkCursor: Struct packing improvements 2011-04-12 12:13:55 -04:00
Kristian Høgsberg
c7514e8f0d Merge branch 'gdk-backend-wayland'
Conflicts:
	Makefile.am
	configure.ac
	gdk/Makefile.am
	gtk/gtksettings.c
	gtk/gtkwindow.c
2011-04-12 09:52:44 -04:00
Alexander Larsson
85c1c22d04 [broadway] Cancel key events after seeing them 2011-04-12 13:38:04 +02:00
Alexander Larsson
afdde925b8 [broadway] Fix canvas resize when resizing browser window
We always have to resize the canvas, even when its in a toplevel.
2011-04-12 11:34:13 +02:00
Alexander Larsson
20542b0ead [broadway] Fix typo 2011-04-12 11:21:47 +02:00
Alexander Larsson
f4bef2c720 [broadway] Combine window move and resize into one op
This way we avoid sending a configure event for the inbetween state
if we're resizeing and moving at the same time.
2011-04-12 11:12:39 +02:00
Alexander Larsson
ca49ec2c8c [broadway] Fix various js warnings 2011-04-12 11:12:39 +02:00
Alexander Larsson
840df5c7c1 [broadway] Add stacktrace debugging functions 2011-04-12 11:12:39 +02:00
Alexander Larsson
2934569781 [broadway] Always send configure events from browser
As soon as something changes, even if it was a request from the user
we send a configure event. If not we might race with a app-side
generated configure event.

For instance, a create + resize might create only a configure event for
the create in the browser, but that may get to the app after the app-side
configure event for the resize, overriding the new size.
2011-04-12 11:12:39 +02:00
Alexander Larsson
ddcbd8234b [broadway] When resyncing, first create all windows then set attributes
Some attributes (like transient parent) depende on other windows being
there, so we create all first.
2011-04-12 11:12:39 +02:00
Alexander Larsson
4bbc45380b [broadway] More complete handling of transient parent
We now handle any order of transient being set and windows shown/created
2011-04-12 11:12:39 +02:00
Alexander Larsson
75dc3f3a07 [broadway] Use mozInnerScreenX & co to get window position
This way we don't have to rely on any event, which won't work until
we get an event.
2011-04-12 11:12:38 +02:00
Alexander Larsson
8a7e208bb2 [broadway] Parse x/y as signed 2011-04-12 11:12:38 +02:00
Alexander Larsson
4cb979d6b9 [broadway] Update window geometry after showing window 2011-04-12 11:12:38 +02:00
Alexander Larsson
4c575ac343 [broadway] Don't cache surface.transientToplevel as that might change at various times 2011-04-12 11:12:38 +02:00
Alexander Larsson
7b3b4a6ad9 [broadway] Correctly track remote visible state
GDK_WINDOW_IS_MAPPED is not false for withdrawn windows, so we need
to track real visibility ourselves.
2011-04-11 12:09:43 +02:00
Alexander Larsson
33d16b16c9 [broadway] Clean up js side surface handling
* Always calculate the context, don't store in surface.
* Store the toplevel element (frame or canvas) for easy access.
* Always use visibility hidden rathern than display none to hide windows,
  as this means we can always rely on dom positioning info.
2011-04-11 12:09:43 +02:00
Alexander Larsson
27c4d104fb [broadway] Restack on window show to ensure all zIndexes are right 2011-04-11 12:09:43 +02:00
Alexander Larsson
c839f2910c [broadway] Store surface, not id in stackingOrder list 2011-04-11 12:09:43 +02:00
Alexander Larsson
ace1c4c284 [broadway] Set transient-for before showing window
When syncing windows, make sure we set transient-for before showing
the window to avoid it being visible with the wrong transient-for
(i.e. possibly on the wrong browser window).
2011-04-11 12:09:43 +02:00
Alexander Larsson
05dfb7f594 [broadway] Fix css typo
rgb takes 3 params, rgba takes four.
2011-04-11 12:09:43 +02:00
Alexander Larsson
7a197e5b65 [broadway] Fix up frame size calculation
Turns out that offsetTop/Left doesn't contain the border, so we need
to manually add that in.
2011-04-11 12:09:43 +02:00
Alexander Larsson
2728cc9508 [broadway] Remove expensive transparency effects from css 2011-04-10 21:10:07 +02:00
Alexander Larsson
d6beabbff2 [broadway] Make the toplevel mode a url parameter 2011-04-10 20:16:13 +02:00
Alexander Larsson
fe79bbd618 [broadway] Position non-popup windows ourselves
We ignore the initial positions for non-popup windows, instead we
place the windows ourselves (or in the useToplevel mode by the WM).
2011-04-10 20:16:13 +02:00
Alexander Larsson
e5d8905cd2 [broadway] Fix up toplevel content visibility in useToplevel mode
surfaces.canvas may change if we move to another document, so
reupdate the element to show after ensureSurfaceInDocument.
2011-04-10 20:16:13 +02:00
Alexander Larsson
fadaced85f [broadway] Move window to top when moving 2011-04-10 20:16:13 +02:00
Alexander Larsson
618dc872b0 [broadway] Add some initial work for in-window frames
The css is based on work by Jasper St Pierre:
http://magcius.mecheye.net/vista/
2011-04-10 20:16:13 +02:00
Alexander Larsson
69eafcc3c5 [broadway] Fix some typos in the js code 2011-04-10 20:16:13 +02:00
Alexander Larsson
930e43c710 [broadway] Use the right doctype for html5 2011-04-10 20:16:13 +02:00
Tristan Van Berkom
d2303bafae Fix some crashes caused by unimplemented functions in GdkOffscreenWindow
These crashes happen when accessing GtkWindow properties and the
GdkWindow is an offscreen (fixes https://bugzilla.gnome.org/show_bug.cgi?id=647244)
2011-04-09 02:00:18 +09:00
Matthias Clasen
fbf1093d5c Free the translate queue when closing a display
Not that many people are ever going to hit this.
https://bugzilla.gnome.org/show_bug.cgi?id=645236
2011-04-08 21:34:25 -04:00
Matthias Clasen
9e6d3d969c Fix some possible crashes if the default display is NULL
Unlikely that many people will hit these, but still.
https://bugzilla.gnome.org/show_bug.cgi?id=645176
2011-04-08 21:20:26 -04:00
Carlos Garnacho
db74a6e816 GdkDevice: Remove duplicate private function
_gdk_device_get_axis_use() dates back to pre-sealing, when the
xi2 work began, this remaining can be gone with a public
gdk_device_get_axis_use() function already in place.
2011-04-08 16:39:45 +02:00
Alexander Larsson
955f01cdf7 [broadway] Enable useToplevelWindow by default for now 2011-04-07 21:16:52 +02:00
Alexander Larsson
7128087cb4 [broadway] Implement selections 2011-04-07 20:21:22 +02:00
Alexander Larsson
cad40b24e2 [broadway] Remove unused hashtables 2011-04-07 20:20:51 +02:00
Alexander Larsson
d12a9a5e99 [broadway] Add gdk_broadway_display_get_last_seen_time 2011-04-07 20:18:13 +02:00
Alexander Larsson
42cbed6759 [broadway] Fix up header guards to not refer to gdkx.h 2011-04-07 20:04:48 +02:00
Alexander Larsson
f0e1115f80 [broadway] Add gdkbroadway.h public header 2011-04-07 19:25:16 +02:00
Alexander Larsson
095ccf9c11 [broadway] Serialize event times
Event times come from the browser and may change weirdly when we reconnect
with another browser, so we normalize these to be strictly increasing
and with a 5 second gap for each reconnect.
2011-04-07 19:12:51 +02:00
Alexander Larsson
9d974ca13a [broadway] Fix typo in implicit grab support
We do an implicit grab if there is no grab already, not only if there is
one.
2011-04-07 15:26:37 +02:00
Alexander Larsson
dd07f534f4 [broadway] Handle screen size
Without this menu placement doesn't work right
2011-04-07 15:10:39 +02:00
Alexander Larsson
8c20b476df [broadway] Track and report last and future state
This fixes the drawing area demo in gtk-demo
2011-04-07 14:36:30 +02:00
Alexander Larsson
1a7b76d49d [broadway] Report mouse pointer coordinates right
The windows argument to device_query_state can be a client side
window, but we must only handle the "native" part of it (i.e.
window->impl->wrapper).
2011-04-07 14:29:26 +02:00
Alexander Larsson
43aac66458 [broadway] Fix all unnecessary warnings 2011-04-07 10:03:17 +02:00
Alexander Larsson
3b1fe05e78 [broadway] Wire up the delete event 2011-04-07 10:03:17 +02:00
Alexander Larsson
06fc6e007e [broadway] Report right root coors in toplevel mode 2011-04-07 10:03:17 +02:00
Alexander Larsson
adc05ae6b7 [broadway] Add configure event for browser-side geometry changes
Atm this only works for the useToplevelWindows case, but we can add
a browser wm to make use of it inside the browser too.
2011-04-07 10:03:17 +02:00