summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2013-04-18move input code from compositor.c into input.cinputKristian Høgsberg3-1167/+1209
2013-04-18fold wl_keyboard into weston_keyboardKristian Høgsberg8-130/+127
2013-04-18Import input structs and helper functions from waylandKristian Høgsberg4-0/+1325
2013-04-16nested compositor exampleKristian Høgsberg5-0/+1192
2013-04-16window: Add a log handler for window.c clientsKristian Høgsberg1-0/+8
This way we can see what kind of error we get if we get an error.
2013-04-15configure.ac: Bump version to 1.1.0Kristian Høgsberg1-2/+2
2013-04-15shell: clear popup grab interface on remove_popup_grab and popup_grab_endPhilipp Brüschweiler1-0/+3
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
2013-04-15desktop-shell: better error loggingPhilipp Brüschweiler1-2/+5
v2: only call cairo_surface_status once
2013-04-11Correctly handle extended RDP keycodesHardening1-12/+42
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.
2013-04-09clients: tablet-shell: Wait for set_homescreen hits the serverTiago Vignatti1-0/+3
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>
2013-04-08Make backends always specify output repaint timeJonas Ådahl9-30/+198
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>
2013-04-04compositor-drm: Allow running without launcher if effective UID is 0Kristian Høgsberg1-2/+2
This lets us keep running weston as root or setuid root.
2013-04-03Fix compiler warningsArmin K1-0/+1
This prevents compiler warnings when using libpng 1.6 and GCC 4.8
2013-04-03autotools: Add a libunwind configure switchQuentin Glidic1-5/+7
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
2013-04-03compositor: Use wl_pointer_set_current to cleanup after surface destructionRob Bradford1-1/+1
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
2013-04-03window: don't execute the selected menu item when getting popup_doneGiulio Camuffo1-1/+0
2013-04-01compositor: add information about the fbdev backend to --help outputPhilipp Brüschweiler1-1/+7
2013-04-01RDP compositor take 6Hardening3-1/+1026
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>
2013-03-29compositor: add WESTON_COMPOSITOR_OFFSCREEN statePhilipp Brüschweiler5-9/+31
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).
2013-03-28gitignore: Ignore test-driverDamien Lespiau1-1/+2
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")
2013-03-28sdk: be C++ friendlyGiulio Camuffo6-22/+46
This renames the weston_surface's private member to configure_private and externs "C" the headers of the SDK.
2013-03-28build: Make the X11 compositor explicitely depend on xcb-shmDamien Lespiau1-1/+1
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
2013-03-27compositor: Remove unused wl_pointer variableKristian Høgsberg1-1/+0
Using move_pointer() in notify_pointer_focus() left the wl_pointer variable unused.
2013-03-27Added handler for SIGABRTPeter Maatman1-11/+18
2013-03-27evdev-touchpad: Disable tap FSM by default on touchpads with button padsJonas Ådahl1-0/+17
Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
2013-03-27compositor-x11: Fix relative motion reporting for multiple outputsKristian Høgsberg2-17/+13
2013-03-27compositor: Support notifying with absolute position tooRob Bradford3-7/+25
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
2013-03-27compositor-drm: ensure we run drm-backend using weston-launchRafal Mielniczuk1-0/+7
We do this by checking if launcher_sock != -1 This fixes https://bugs.freedesktop.org/show_bug.cgi?id=60926
2013-03-27shell: set the popup grab button as pressed only if it actually isGiulio Camuffo1-1/+5
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.
2013-03-25shell: handle multiple popupsGiulio Camuffo3-25/+144
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.
2013-03-22weston-egl: Allow compilation against older EGL stackRob Bradford1-0/+4
Provide a definition of EGL_BUFFER_AGE_EXT so that you can compile against an EGL stack that may not yet support that extension.
2013-03-19Revert "weston.ini: Use 'modeline' key for modeline example"Scott Moreau1-1/+1
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
2013-03-19weston.man: Document the way to disable idle timeoutScott Moreau1-0/+1
2013-03-19config.ini: add examples for cursor-theme and cursor-sizeEmilio Pozuelo Monfort1-0/+2
2013-03-19weston.ini.man: document cursor-theme and cursor-keyEmilio Pozuelo Monfort1-0/+6
2013-03-19toytoolkit: implement cursor-size config keyEmilio Pozuelo Monfort1-1/+3
2013-03-19weston-launch: cleanup - return failures in main with EXIT_FAILURESiddharth Heroor1-5/+5
Signed-off-by: Siddharth Heroor <heroor@gmail.com>
2013-03-19compositor-rpi: Use correct enum, removes a warningPhilipp Brüschweiler1-1/+1
2013-03-19compositor: remove unused field option_idle_timePhilipp Brüschweiler2-3/+1
2013-03-19weston-launch: return better value if weston dies because of a signalPhilipp Brüschweiler1-2/+14
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.
2013-03-19weston-launch: move function calls out of assert()Philipp Brüschweiler1-3/+7
2013-03-19toytoolkit: avoid redrawing a window between maximize and configureMoD1-0/+42
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
2013-03-19window: restore maximized state from fullscreen mode if necessaryRafal Mielniczuk1-5/+15
This patch sets back maximized mode, if that was its state before going fullscreen.
2013-03-19window: save allocation only for toplevel windowRafal Mielniczuk1-1/+3
Thanks to that we will not overwrite saved allocation, when going fullscreen from maximized state
2013-03-19shell: reset rotation for maximized surfaceRafal Mielniczuk1-9/+22
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)
2013-03-19shell: block move, rotate, resize in maximized stateRafal Mielniczuk1-4/+8
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)
2013-03-18pixman-renderer: don't forget to initialize the debug fieldsPhilipp Brüschweiler1-0/+2
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=61930
2013-03-18compositor, shell: surface transform inheritancePekka Paalanen3-28/+82
Implements surface transform inheritance. A 'parent' pointer is added to weston_surface::geometry, and is automatically used by weston_surface_update_transform(). When updating the transform, the parent transform is updated as needed, too. shell_map_popup() is converted to use the new weston_surface_set_transform_parent() function. Now, if we moved the popup's parent surface while the popup is open, the popup surface will stick to the parent properly. Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
2013-03-18compositor: introduce weston_surface_geometry_dirty()Pekka Paalanen6-36/+38
Instead of directly setting the dirty flag on weston_surface geometry, use a function for that. This allows us to hook into geometry dirtying in a following patch. Also add comments to weston_surface fields, whose modification causes transform state to become outdated. Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
2013-03-18compositor: remove redundant geometry dirtyingPekka Paalanen1-32/+3
Remove redundant geometry dirtying from surface_commit() to simplify further changes. This code was added in commit 5df8ecac5d31467122a9d8bda6241d5957ae6848 "compositor: Fix partial repaints" as the fix to: https://bugs.freedesktop.org/show_bug.cgi?id=56538 The issue fixed by that commit was making the geometry dirty on every attach, which caused full-surface repaints every time. The bug was probably introduced by the opaque region changes during implementing wl_surface.commit. The mentioned commit fixes the opaque handling by comparing the new and old regions. However, the commit also introduces additional checks that set geometry.dirty. In the current code base, this should be unnecessary. If the pending.sx or pending.sy are not zero, or if the surface size changes, the configure() hook is responsible for applying the new values, and so also marking the geometry dirty. The configure() hook is only called, if there has been a new wl_surface.attach. Nothing else can change these variables, so this should be enough. Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com> Cc: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>