Kristian Høgsberg [Wed, 8 May 2013 19:02:05 +0000 (15:02 -0400)]
input: Move sprite fields into weston_pointer from weston_seat
Kristian Høgsberg [Wed, 8 May 2013 15:37:28 +0000 (11:37 -0400)]
simple-egl: Add support for EGL_EXT_swap_buffer_with_damage
This new EGL extension lets us communicate the damage area to the compositor
by using eglSwapBuffersWithDamge() instead of the regular eglSwapBuffer().
http://www.khronos.org/registry/egl/extensions/EXT/EGL_EXT_swap_buffers_with_damage.txt
Kristian Høgsberg [Wed, 8 May 2013 13:54:37 +0000 (09:54 -0400)]
compositor: Adapt to wl_surface going away
struct weston_surface is now the only surface type we have (in core, shell.c
has shell_surface, of course). A lot of code gets simpler and we never
have to try to guess whether an API takes a wl_surface or a weston_surface.
Kristian Høgsberg [Wed, 8 May 2013 03:52:07 +0000 (23:52 -0400)]
input: Allocate pointer/keyboard/touch structs
Kristian Høgsberg [Wed, 8 May 2013 03:17:41 +0000 (23:17 -0400)]
input: Eliminate weston_seat::has_pointer/keyboard/touch
We can just look at weston_seat::pointer/keyboard/touch now.
Kristian Høgsberg [Wed, 8 May 2013 02:53:43 +0000 (22:53 -0400)]
data-device: Update drag icon position from configure and motion handlers
We can now update the drag icon position directly from the configure
handler or the grab motion handler, and no longer need
weston_seat_update_drag_surface().
Kristian Høgsberg [Wed, 8 May 2013 02:42:28 +0000 (22:42 -0400)]
data-device: Map drag icon in configure handler
This how we usually do it, and we avoid 'polling' for mapping in
weston_seat_update_drag_surface().
Kristian Høgsberg [Wed, 8 May 2013 01:06:38 +0000 (21:06 -0400)]
data-device: Setup and release drag surface and beginning and end of drag
Previously we just got the drag_icon signal and had to figure out what
changed. Now we can directly setup or release the drag icon when the
drag starts and stops.
Kristian Høgsberg [Wed, 8 May 2013 00:50:26 +0000 (20:50 -0400)]
data-device: Fix dnd regression from weston_seat rewrite
We had a drag_surface in wl_seat and weston_seat which confused me during
the rewrite.
Kristian Høgsberg [Tue, 7 May 2013 19:30:49 +0000 (15:30 -0400)]
data-device: Don't emit a signal for drag icon changes
The signal used to be in libwayland-server and the listener in weston, but
now they're both in the same file, so lets stop using signal.
Kristian Høgsberg [Tue, 7 May 2013 15:18:46 +0000 (11:18 -0400)]
input: Move drag handling to data-device.c
Kristian Høgsberg [Tue, 7 May 2013 14:50:09 +0000 (10:50 -0400)]
compositor: Move fan_debug to gl-renderer
With the debug binding infrastructure, we can do this all inside
gl-renderer.c.
Kristian Høgsberg [Tue, 7 May 2013 03:19:49 +0000 (23:19 -0400)]
input: Merge wl_seat into weston_seat
Kristian Høgsberg [Tue, 7 May 2013 02:27:40 +0000 (22:27 -0400)]
input: Remove wl_seat destroy signal
We already have one on weston_seat.
Kristian Høgsberg [Tue, 7 May 2013 02:24:50 +0000 (22:24 -0400)]
input: Fold wl_seat init/release into weston_seat init/release
Kristian Høgsberg [Tue, 7 May 2013 02:19:57 +0000 (22:19 -0400)]
input: Rename wl_touch to weston_touch
This is now a weston object.
Kristian Høgsberg [Tue, 7 May 2013 02:15:05 +0000 (22:15 -0400)]
input: Rename wl_pointer to weston_pointer
This is now a weston object.
Kristian Høgsberg [Tue, 7 May 2013 01:51:21 +0000 (21:51 -0400)]
input: Rename weston_device_repick() to weston_seat_repick()
Old left-over misnaming.
Kristian Høgsberg [Tue, 7 May 2013 01:49:55 +0000 (21:49 -0400)]
input: Drop find_resource_for_client()
We can use find_resource_for_surface() instead now that it's all in the
same file.
Kristian Høgsberg [Thu, 18 Apr 2013 19:40:10 +0000 (15:40 -0400)]
move input code from compositor.c into input.c
Kristian Høgsberg [Thu, 18 Apr 2013 19:25:39 +0000 (15:25 -0400)]
fold wl_keyboard into weston_keyboard
Kristian Høgsberg [Thu, 18 Apr 2013 19:07:39 +0000 (15:07 -0400)]
Import input structs and helper functions from wayland
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:42 +0000 (16:47 +0200)]
editor: Fix some offsets for multi-byte characters
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:41 +0000 (16:47 +0200)]
keyboard: Fix offsets when deleting text
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:39 +0000 (16:47 +0200)]
text: Rename input_method to wl_input_method
Also rename input_method_context to wl_input_method_context,
input_panel to wl_input_panel and input_panel_surface to
wl_input_panel_surface.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:38 +0000 (16:47 +0200)]
text: Improve protocol documentation.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:37 +0000 (16:47 +0200)]
text: Rename ::set_panel to ::set_overlay_panel
Also add documentation to input_panel_surface::set_overlay_panel.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:36 +0000 (16:47 +0200)]
text: Rename text_input to wl_text_input
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:35 +0000 (16:47 +0200)]
keyboard: Remove unneded calls
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:34 +0000 (16:47 +0200)]
text: delete text on commit_string
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:33 +0000 (16:47 +0200)]
text: Fix serial handling
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:31 +0000 (16:47 +0200)]
text: Only allow input-method started by weston to bind
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:29 +0000 (16:47 +0200)]
text: Add output argument to set_toplevel
Allow to specify an output for a toplevel input panel surface.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:28 +0000 (16:47 +0200)]
text: Add support for panels following the cursor
Add input_panel_surface::set_panel to specify input panel surfaces which
are overlaying the application and are following the input cursor.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:27 +0000 (16:47 +0200)]
editor: Send cursor position to the input method
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:26 +0000 (16:47 +0200)]
editor: Only delete on backspace key released
Do not delete two characters when key is pressed and released.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:25 +0000 (16:47 +0200)]
text: Add "none" preedit-style
Use "default" preedit style as default. "None" is used when the
composing text should look like non-composing text.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:24 +0000 (16:47 +0200)]
text: Rename text_model to text_input
Also rename text_model_factory to text_input_manager.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:23 +0000 (16:47 +0200)]
text: Order requests and events in a nice way
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:22 +0000 (16:47 +0200)]
text: rename text_model::commit to commit_state
Use ::commit_state as a request name to make clear what is commited.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:21 +0000 (16:47 +0200)]
view: g_type_init() is deprecated in glib >= 2.35
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Krzesimir Nowak [Thu, 18 Apr 2013 14:47:20 +0000 (16:47 +0200)]
text: Fix some text and input-method docs
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Krzesimir Nowak [Thu, 18 Apr 2013 14:47:19 +0000 (16:47 +0200)]
text: Fix password content hint value
0xc in this case was a combination of "autocapitalization" (0x4) and
"lowercase" (0x8) instead of "hidden_text" (0x40) and "sensitive_data"
(0x80).
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:18 +0000 (16:47 +0200)]
editor: Reset text model on reset
There were some reset calls missing, which resulted in wrong preedit
state on input method side.
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:17 +0000 (16:47 +0200)]
keyboard: Reset state on activate
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:16 +0000 (16:47 +0200)]
text: Add example for language/text direction
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Jan Arne Petersen [Thu, 18 Apr 2013 14:47:15 +0000 (16:47 +0200)]
text: Add language and text-direction to protocol
Signed-off-by: Jan Arne Petersen <jpetersen@openismus.com>
Kristian Høgsberg [Thu, 2 May 2013 17:43:24 +0000 (13:43 -0400)]
xwm: Reparent client windows into ARGB windows
We used to rely on an ugly hack where the xwayland server would always
report RGB X windows as having ARGB pixels, so that texturing from these
would also sample the undefined alpha. We also relied on Xrender rendering
to RGB X windows to write the alpha channel correctly, so that when we
texture from the RGB X window as an ARGB surface we end up getting the
alpha written by Xrender.
That was obviously all broken. We can instead reparent client windows into
ARGB frame windows. That way we can render the decorations using a
ARGB render pictformat and sample back those alpha values in a well-defined
way. We can also unbreak xwayland and let it report RGB pixel format for
RGB windows. We still need the opaque region or the RGB-only client window
but that's OK.
Richard Hughes [Thu, 2 May 2013 09:10:04 +0000 (10:10 +0100)]
Move the optional output name property from drm_output to weston_output
In the future the CMS plugins will need to read the config file and setup a list
of hardcoded names to ICC profiles.
Chris Michael [Thu, 2 May 2013 01:26:02 +0000 (21:26 -0400)]
Fix not checking return value of drmIoctl function call to map dumb buffer
in drm_fb_create_dumb, the return value of the drmIoctl function call
to map the dumb buffer was never checked, thus the following "if
(ret)" check was invalid as it was checking the previous return value
from the above drmModeAddFB call.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
Richard Hughes [Wed, 1 May 2013 20:52:13 +0000 (21:52 +0100)]
Include config.h in compositor-drm.c
Richard Hughes [Wed, 1 May 2013 20:52:12 +0000 (21:52 +0100)]
Add a set_gamma vfunc on weston_output
Richard Hughes [Wed, 1 May 2013 20:52:11 +0000 (21:52 +0100)]
Add a output_created_signal on weston_compositor
Richard Hughes [Wed, 1 May 2013 20:52:10 +0000 (21:52 +0100)]
Add a destroy_signal on weston_output
Richard Hughes [Wed, 24 Apr 2013 13:58:02 +0000 (14:58 +0100)]
Extract and parse the EDID when outputs are added
At the moment we're only extracting interesting strings. We have to be quite
careful parsing the EDID data, as vendors like to do insane things.
The original EDID parsing code was written by me for gnome-color-manager.
Emilio Pozuelo Monfort [Mon, 22 Apr 2013 09:00:07 +0000 (11:00 +0200)]
weston.ini: document background-type
Yeh, Sinclair [Fri, 19 Apr 2013 17:49:12 +0000 (17:49 +0000)]
Fix simple-egl tear-down order to prevent a crash on exit time
wl_egl_window_destory() destroys the window handle that
dri2_destroy_surface() later uses when eglTerminate() is called.
Reordering the tear down order prevents such case from occuring.
Kristian Høgsberg [Mon, 29 Apr 2013 20:33:32 +0000 (16:33 -0400)]
configure.ac: Bump to 1.1.90 to open master for 1.2 work
Kristian Høgsberg [Tue, 16 Apr 2013 15:21:48 +0000 (11:21 -0400)]
window: Add a log handler for window.c clients
This way we can see what kind of error we get if we get an error.
Kristian Høgsberg [Tue, 16 Apr 2013 01:51:35 +0000 (21:51 -0400)]
configure.ac: Bump version to 1.1.0
Philipp Brüschweiler [Mon, 15 Apr 2013 19:09:54 +0000 (21:09 +0200)]
shell: clear popup grab interface on remove_popup_grab and popup_grab_end
Fixes a segfault. Steps to reproduce:
* start weston with the x11 backend
* open a terminal
* click on the icon in the top left corner, choose close
* close the x11 window containing weston
Philipp Brüschweiler [Mon, 15 Apr 2013 18:10:40 +0000 (20:10 +0200)]
desktop-shell: better error logging
v2: only call cairo_surface_status once
Hardening [Sat, 6 Apr 2013 21:39:26 +0000 (23:39 +0200)]
Correctly handle extended RDP keycodes
The keycodes received by the FreeRDP server aren't evdev keycodes.
This patch adds the correct convertion to evdev keycodes. After the
patch all keys that are marked as extended in RDP packets become
functionnal (that's the case for the windows key).
Please note that this patch rely on some corrections that have been
pushed on the FreeRDP github tonight.
Tiago Vignatti [Tue, 9 Apr 2013 14:48:06 +0000 (11:48 -0300)]
clients: tablet-shell: Wait for set_homescreen hits the server
This relates to:
https://bugs.freedesktop.org/show_bug.cgi?id=57634
https://bugs.freedesktop.org/show_bug.cgi?id=57637
Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
Jonas Ådahl [Fri, 5 Apr 2013 21:07:11 +0000 (23:07 +0200)]
Make backends always specify output repaint time
Most backends relies on gettimeofday(2) for output repaint timestamps
but this is not a requirement. Before this patch repaints coming from
idle_repaint() always used gettimeofday(2) for timestamps. For backends
not using that time source this could cause large jumps between
timestamps.
To fix this, timestamps needs to always come from the backend. This
means that the backend needs to always be responsible of starting the
repaint loop in case that the repaint cannot start immediately.
The drm backend implementation is from the patch by Ander Conselvan de
Oliveira found here:
http://lists.freedesktop.org/archives/wayland-devel/2013-February/007393.html
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
Kristian Høgsberg [Fri, 5 Apr 2013 01:36:20 +0000 (21:36 -0400)]
compositor-drm: Allow running without launcher if effective UID is 0
This lets us keep running weston as root or setuid root.
Armin K [Wed, 3 Apr 2013 19:29:03 +0000 (21:29 +0200)]
Fix compiler warnings
This prevents compiler warnings when using libpng 1.6 and GCC 4.8
Quentin Glidic [Wed, 3 Apr 2013 18:19:45 +0000 (20:19 +0200)]
autotools: Add a libunwind configure switch
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
Rob Bradford [Wed, 3 Apr 2013 14:21:55 +0000 (15:21 +0100)]
compositor: Use wl_pointer_set_current to cleanup after surface destruction
This API call handles setting the current surface on the wl_pointer and also
maintaining a destroy notification to monitor that surface for destruction.
This is part of the fix for: https://bugzilla.gnome.org/show_bug.cgi?id=696946
Giulio Camuffo [Wed, 3 Apr 2013 12:37:00 +0000 (14:37 +0200)]
window: don't execute the selected menu item when getting popup_done
Philipp Brüschweiler [Sat, 30 Mar 2013 14:18:49 +0000 (15:18 +0100)]
compositor: add information about the fbdev backend to --help output
Hardening [Mon, 1 Apr 2013 21:43:58 +0000 (23:43 +0200)]
RDP compositor take 6
This patch is the 6th version of the FreeRDP based compositor.
Changes from last version:
* use pixman_image_get_stride() when appropriate
* always realloc
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Philipp Brüschweiler [Fri, 29 Mar 2013 12:01:56 +0000 (13:01 +0100)]
compositor: add WESTON_COMPOSITOR_OFFSCREEN state
This state is used when the user switches the vt. It turns of rendering
and frame events, but doesn't set the DPMS state to off.
As a part of this change, also turn off the idle timer when entering
the SLEEPING or OFFSCREEN states, which fixes
https://bugs.freedesktop.org/show_bug.cgi?id=61910 (rpi backend
untested).
Damien Lespiau [Thu, 28 Mar 2013 17:28:22 +0000 (17:28 +0000)]
gitignore: Ignore test-driver
Automake (1.12 here) parallel-tests installs a test-driver file, another
file to add to .gitignore.
While at it, remove the duplicate cscope.out entry and add TAGS (the
result of automake's "make tag")
Giulio Camuffo [Thu, 28 Mar 2013 17:02:42 +0000 (18:02 +0100)]
sdk: be C++ friendly
This renames the weston_surface's private member to configure_private
and externs "C" the headers of the SDK.
Damien Lespiau [Thu, 28 Mar 2013 15:20:54 +0000 (15:20 +0000)]
build: Make the X11 compositor explicitely depend on xcb-shm
Otherwise, it means the X11 compositor depends on another library to
pull xcb-shm (cairo?), which is not always the case. Here I end up with:
[01:54:38.970] Failed to load module:
$prefix/lib/weston/x11-backend.so: undefined symbol: xcb_shm_id
Kristian Høgsberg [Thu, 28 Mar 2013 03:00:29 +0000 (23:00 -0400)]
compositor: Remove unused wl_pointer variable
Using move_pointer() in notify_pointer_focus() left the wl_pointer variable
unused.
Peter Maatman [Wed, 27 Mar 2013 21:38:53 +0000 (22:38 +0100)]
Added handler for SIGABRT
Jonas Ådahl [Fri, 22 Mar 2013 07:41:42 +0000 (08:41 +0100)]
evdev-touchpad: Disable tap FSM by default on touchpads with button pads
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
Kristian Høgsberg [Wed, 27 Mar 2013 19:14:07 +0000 (15:14 -0400)]
compositor-x11: Fix relative motion reporting for multiple outputs
Rob Bradford [Wed, 27 Mar 2013 15:59:43 +0000 (15:59 +0000)]
compositor: Support notifying with absolute position too
With evdev input devices that generate absolute positions we need to provide
an infrastructure in the compositor for supporting those.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=61997
Rafal Mielniczuk [Wed, 27 Mar 2013 17:39:28 +0000 (18:39 +0100)]
compositor-drm: ensure we run drm-backend using weston-launch
We do this by checking if launcher_sock != -1
This fixes https://bugs.freedesktop.org/show_bug.cgi?id=60926
Giulio Camuffo [Wed, 27 Mar 2013 17:05:26 +0000 (18:05 +0100)]
shell: set the popup grab button as pressed only if it actually is
This ensures the popup_grab.initial_up field isn't reset to 0
if the popup was not opened because of a mouse press but because
of moving the mouse with a popup already open. Not doing so will
make the first click outside the client area go ignored.
Giulio Camuffo [Mon, 25 Mar 2013 20:42:45 +0000 (21:42 +0100)]
shell: handle multiple popups
This patch implements a popup stack. When the first popup is opened
the grab is started, and it is added to a list. Further popups will
be added to this list but the grab won't change. When a popup is
closed it is removed from the list and, if it is now empty, the grab
is ended.
A click outside the client area will send the popup_done event to
all the popups in the list, and the grab will end.
Rob Bradford [Fri, 22 Mar 2013 14:15:49 +0000 (14:15 +0000)]
weston-egl: Allow compilation against older EGL stack
Provide a definition of EGL_BUFFER_AGE_EXT so that you can compile against an
EGL stack that may not yet support that extension.
Scott Moreau [Sun, 10 Mar 2013 15:30:16 +0000 (09:30 -0600)]
Revert "weston.ini: Use 'modeline' key for modeline example"
This reverts commit
97a56145636316fdb431b91ec64adff217287cd9.
The current code detects the mode key, not modeline. Reference:
http://cgit.freedesktop.org/wayland/weston/tree/src/compositor-drm.c#n2464
Scott Moreau [Sat, 9 Mar 2013 18:55:40 +0000 (11:55 -0700)]
weston.man: Document the way to disable idle timeout
Emilio Pozuelo Monfort [Thu, 14 Mar 2013 16:23:39 +0000 (17:23 +0100)]
config.ini: add examples for cursor-theme and cursor-size
Emilio Pozuelo Monfort [Thu, 14 Mar 2013 16:23:38 +0000 (17:23 +0100)]
weston.ini.man: document cursor-theme and cursor-key
Emilio Pozuelo Monfort [Thu, 14 Mar 2013 16:23:37 +0000 (17:23 +0100)]
toytoolkit: implement cursor-size config key
Siddharth Heroor [Mon, 11 Mar 2013 21:06:52 +0000 (02:36 +0530)]
weston-launch: cleanup - return failures in main with EXIT_FAILURE
Signed-off-by: Siddharth Heroor <heroor@gmail.com>
Philipp Brüschweiler [Sun, 10 Mar 2013 15:08:31 +0000 (16:08 +0100)]
compositor-rpi: Use correct enum, removes a warning
Philipp Brüschweiler [Sun, 10 Mar 2013 13:37:04 +0000 (14:37 +0100)]
compositor: remove unused field option_idle_time
Philipp Brüschweiler [Sun, 10 Mar 2013 14:14:01 +0000 (15:14 +0100)]
weston-launch: return better value if weston dies because of a signal
Before this commit, weston-launch returned 0 if weston was killed by a
signal. This makes it hard to automatically test weston by using
weston-launch, as there is no way to know why weston was terminated.
This commit makes weston-launch return 10+N instead, where N is the code
of the signal that terminated weston. 10 was chosen because it allows a
script to distinguish it from the case that weston-launch itself was
killed by a signal (128+N), and does not overlap the standard exit codes
defined in sysexits.h.
Partial fix for https://bugs.freedesktop.org/show_bug.cgi?id=60935. I
can't reproduce the SIGHUP using the fbdev backend.
v3: better commit message.
Philipp Brüschweiler [Sat, 9 Mar 2013 18:38:56 +0000 (19:38 +0100)]
weston-launch: move function calls out of assert()
MoD [Sat, 2 Mar 2013 23:43:57 +0000 (23:43 +0000)]
toytoolkit: avoid redrawing a window between maximize and configure
Resolve a bad frame visible when maximizing toytoolkit programs with the the
maximize button in decorations. Windows now use wl_display.sync requests to
wait for a maximize to finish before drawing again, following suggestions from
http://lists.freedesktop.org/archives/wayland-devel/2013-February/007650.html
Rafal Mielniczuk [Mon, 11 Mar 2013 18:26:56 +0000 (19:26 +0100)]
window: restore maximized state from fullscreen mode if necessary
This patch sets back maximized mode, if that was its state before going
fullscreen.
Rafal Mielniczuk [Mon, 11 Mar 2013 18:26:55 +0000 (19:26 +0100)]
window: save allocation only for toplevel window
Thanks to that we will not overwrite saved allocation, when going
fullscreen from maximized state
Rafal Mielniczuk [Mon, 11 Mar 2013 18:26:54 +0000 (19:26 +0100)]
shell: reset rotation for maximized surface
Surface will preserve its rotation transformation when maximizing, which
will cause inconsistencies (eg. no window shadows drawn)
This patch removes rotation from maximized surface and restore it when
unmaximizing (just like in fullscreen mode)
Rafal Mielniczuk [Mon, 11 Mar 2013 18:26:53 +0000 (19:26 +0100)]
shell: block move, rotate, resize in maximized state
To remain consisten with client side window, which blocks moving and
resizing of window in maximized state, we should do so on the compositor
side as well.
(until there is some unmaximize notification from server, which will
allow window to start drawing shadows and revert itself to toplevel
state)