[weston v2 6/8] xwm: Ignore configure request while the user is resizing

2017-11-13 Thread Louis-Francis Ratté-Boulianne
We don't want the application to fight with the user when manually resizing a window. v2: Re-enable sync when a new resize operation is started Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 20 +++- 1 file changed, 19 insertions(+), 1 del

[weston v2 8/8] xwm: Use Pango to draw title string if available

2017-11-13 Thread Louis-Francis Ratté-Boulianne
If Weston is built with Pango, use it to render the title for X11 applications and Weston toy toolkit clients. It allows us to ellipsize the title when there isn't enough space to show the whole string. Signed-off-by: Louis-Francis Ratté-Boulianne --- Makefile.am | 2 ++ configu

[weston v2 3/8] xwm: Don't resize windows if the application have these hints

2017-11-13 Thread Louis-Francis Ratté-Boulianne
If the minimum and maximum size hints are equal, that means the application doesn't want the window manager to allow resizing. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 26 -- 1 file changed, 20 insertions(+), 6 deletions(-) diff

[weston v2 4/8] xwm: Only send configure a window if the new size is different

2017-11-13 Thread Louis-Francis Ratté-Boulianne
If we configure a window with the same size and wait for the sync alarm to go off, the resizing is gonna block. The event is only handled is the size actually changed. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 15 +++ 1 file changed, 11 insertions

[weston v2 7/8] xwm: Deal with title in a smarter way when there isn't enough space

2017-11-13 Thread Louis-Francis Ratté-Boulianne
lebar isn't large enough; * Clip the end of the title if needed. Signed-off-by: Louis-Francis Ratté-Boulianne --- shared/cairo-util.c | 26 +++--- shared/cairo-util.h | 4 ++-- shared/frame.c | 10 +- 3 files changed, 26 insertions(+), 14 deletions(-) di

[weston v2 1/8] xwm: Implement _NET_WM_SYNC_REQUEST protocol

2017-11-13 Thread Louis-Francis Ratté-Boulianne
v2: Remove some useless checks and don't be too verbose Signed-off-by: Louis-Francis Ratté-Boulianne fixup: Implement _NET_WM_SYNC_REQUEST --- configure.ac | 2 +- xwayland/window-manager.c | 207 +++--- xwayland/xwayland.h

[weston v2 5/8] xwm: Make sure we respect the window's size hints

2017-11-13 Thread Louis-Francis Ratté-Boulianne
Don't just ignore the minimal and maximal sizes requested by the application. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index 3cc

[weston v2 2/8] xwm: Maximize windows when double-clicking on title bar

2017-11-13 Thread Louis-Francis Ratté-Boulianne
Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 26 -- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index 149d7fe4..4b84b24e 100644 --- a/xwayland/window-manager.c +++ b

[weston v2 0/8] Implement NET_WM_SYNC_REQUEST basic support

2017-11-13 Thread Louis-Francis Ratté-Boulianne
me useless checks - Be less verbose when resizing with debug log enabled - Re-enable the sync extension when a new resize operation is started instead of just disabling it forever when something times out. Louis-Francis Ratté-Boulianne (8): xwm: Implement _NET_WM_SYNC_REQUEST protocol xwm

[weston 8/8] xwm: Use Pango to draw title string if available

2017-04-11 Thread Louis-Francis Ratté-Boulianne
If Weston is built with Pango, use it to render the title for X11 applications and Weston toy toolkit clients. It allows us to ellipsize the title when there isn't enough space to show the whole string. Signed-off-by: Louis-Francis Ratté-Boulianne --- Makefile.am | 2 ++ configu

[weston 7/8] xwm: Deal with title in a smarter way when there isn't enough space

2017-04-11 Thread Louis-Francis Ratté-Boulianne
lebar isn't large enough; * Clip the end of the title if needed. Signed-off-by: Louis-Francis Ratté-Boulianne --- shared/cairo-util.c | 26 +++--- shared/cairo-util.h | 4 ++-- shared/frame.c | 10 +- 3 files changed, 26 insertions(+), 14 deletions(-) di

[weston 6/8] xwm: Ignore configure request while the user is resizing

2017-04-11 Thread Louis-Francis Ratté-Boulianne
We don't want the application to fight with the user when manually resizing a window. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 16 +++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/xwayland/window-manager.c b/xwayland/w

[weston 1/8] xwm: Implement _NET_WM_SYNC_REQUEST protocol

2017-04-11 Thread Louis-Francis Ratté-Boulianne
Implement NET_WM_SYNC_REQUEST protocol for throtting X11 window resizes in Weston's XWM. We wait for the window to be drawn (by setting an alarm on the sync counter) before configuring the window again. Signed-off-by: Louis-Francis Ratté-Boulianne --- configure.ac

[weston 3/8] xwm: Don't resize windows if the application have these hints

2017-04-11 Thread Louis-Francis Ratté-Boulianne
If the minimum and maximum size hints are equal, that means the application doesn't want the window manager to allow resizing. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 26 -- 1 file changed, 20 insertions(+), 6 deletions(-) diff

[weston 4/8] xwm: Only send configure a window if the new size is different

2017-04-11 Thread Louis-Francis Ratté-Boulianne
If we configure a window with the same size and wait for the sync alarm to go off, the resizing is gonna block. The event is only handled is the size actually changed. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 15 +++ 1 file changed, 11 insertions

[weston 5/8] xwm: Make sure we respect the window's size hints

2017-04-11 Thread Louis-Francis Ratté-Boulianne
Don't just ignore the minimal and maximal sizes requested by the application. Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index 804

[weston 0/8] Implement NET_WM_SYNC_REQUEST basic support

2017-04-11 Thread Louis-Francis Ratté-Boulianne
from X11 applications and to display the title more elegantly when there isn't enough space available. Louis-Francis Ratté-Boulianne (8): xwm: Implement _NET_WM_SYNC_REQUEST protocol xwm: Maximize windows when double-clicking on title bar xwm: Don't resize windows if the applica

[weston 2/8] xwm: Maximize windows when double-clicking on title bar

2017-04-11 Thread Louis-Francis Ratté-Boulianne
Signed-off-by: Louis-Francis Ratté-Boulianne --- xwayland/window-manager.c | 26 -- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index a067f741..02a7c252 100644 --- a/xwayland/window-manager.c +++ b

Re: [weston, v3, 3/3] libweston-desktop/xwayland: react to geometry changes

2017-04-11 Thread Louis-Francis Ratté-Boulianne
pulating the dx,dy > arguments originating from a wl_surface.attach request. > > Signed-off-by: Pekka Paalanen Reviewed-by: Louis-Francis Ratté-Boulianne > --- >  libweston-desktop/xwayland.c | 7 +++ >  1 file changed, 7 insertions(+) > > diff --git a/libweston-desktop/xw

Re: [weston,v3,2/3] xwm: use _XWAYLAND_ALLOW_COMMITS

2017-04-11 Thread Louis-Francis Ratté-Boulianne
2, excluding the > _NET_WM_SYNC_REQUEST handling. > > Task: https://phabricator.freedesktop.org/T7622 > Signed-off-by: Pekka Paalanen It seems to fix the race just fine. Reviewed-by: Louis-Francis Ratté-Boulianne > --- >  xwayland/window-manager.c | 40 > ++-

Re: [weston,v3,1/3] xwm: do not draw decor twice on map

2017-04-11 Thread Louis-Francis Ratté-Boulianne
> patch. > > For override-redirect windows weston_wm_window_schedule_repaint() > reduced into a call to weston_wm_window_set_pending_state_OR(), so we > can just call that directly. It should not matter that the call is > moved > to the end of the function. > > Signed-off

[PATCH 7/7] clients: add simple-dmabuf client

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: George Kiagiadakis Signed-off-by: George Kiagiadakis Signed-off-by: Louis-Francis Ratté-Boulianne --- .gitignore | 1 + Makefile.am | 15 ++ clients/simple-dmabuf.c | 578 configure.ac| 9 + 4

[PATCH 4/7] compositor-x11: init linux_dmabuf support

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen --- src/compositor-x11.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/compositor-x11.c b/src/compositor-x11.c index a760f33..7b15ba9 100644 --- a/src/compositor-x11.c +++ b/src/compositor-x11.c @@ -51,6 +51,7 @@ #include "pixman-renderer.h" #include "../sha

[PATCH 1/7] protocol: add linux_dmabuf extension RFCv1

2014-12-12 Thread Louis-Francis Ratté-Boulianne
s from the compositor to a client before-hand. The client has to create a wl_buffer wrapping one or more dmabuf buffers and then listen at the feedback object returned to know if the operation was successful. Signed-off-by: Pekka Paalanen Signed-off-by: Louis-Francis Ratté-Boulianne --- M

[PATCH 5/7] compositor-drm: init linux_dmabuf support

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen --- src/compositor-drm.c | 5 + 1 file changed, 5 insertions(+) diff --git a/src/compositor-drm.c b/src/compositor-drm.c index 9b4d4dc..44fc912 100644 --- a/src/compositor-drm.c +++ b/src/compositor-drm.c @@ -50,6 +50,7 @@ #include "libinput-seat.h" #include "launcher

[PATCH 0/7] Generic dmabuf protocol RFCv1

2014-12-12 Thread Louis-Francis Ratté-Boulianne
This serie of patches by Pekka and George contains an experimental implementation of "zlinux_dmabuf" protocol. See these links for more information about the design and failed previous attempts: http://lists.freedesktop.org/archives/wayland-devel/2014-June/015362.html https://bugs.freedesktop.org

[PATCH 6/7] compositor-drm: dmabuf GBM import

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen --- src/compositor-drm.c | 26 ++ 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/compositor-drm.c b/src/compositor-drm.c index 44fc912..d3e8b34 100644 --- a/src/compositor-drm.c +++ b/src/compositor-drm.c @@ -839,7 +839,9 @@ drm_ou

[PATCH 3/7] gl-renderer: add dmabuf import

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Squashed with: gl-renderer: error if dmabuf exposed unsupported gl_renderer: always use GL_TEXTURE_EXTERNAL_OES with dmabuf --- src/gl-renderer.c | 103 ++ 1 file changed, 103 insertions(+) diff --git a/src/gl-renderer.c

[PATCH 2/7] dmabuf: implement linux_dmabuf extension

2014-12-12 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Signed-off-by: Pekka Paalanen Signed-off-by: Louis-Francis Ratté-Boulianne --- Makefile.am| 2 + src/linux-dmabuf.c | 322 + src/linux-dmabuf.h | 45 3 files changed, 369 insertions(+) create mode

[PATCH 3/8] weston-info: report presentation clock

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Signed-off-by: Pekka Paalanen v3 Reviewed-by: Mario Kleiner --- Makefile.am | 3 ++ clients/weston-info.c | 81 +++ 2 files changed, 84 insertions(+) diff --git a/Makefile.am b/Makefile.am index b1dcc21..6a91a8f 1

[PATCH 6/8] compositor-drm: deliver frame seq for feedback

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Add 'msc' field to weston_output to maintain the refresh counter, and use it in presentation_feedback.presented. Make compositor-drm update the per-output refresh counter with the values reported by DRM. If the DRM reported value jumps backwards, assume it wrapped around onc

[PATCH 5/8] compositor: implement presentation_feedback

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Implement the presentation.feedback request, and the presentation_feedback protocol interface. Feedback information is delivered to clients as the backend reports it, except the refresh counter (MSC) which is always reported as zero. Changes in v4: * add 'flags' argument to

[PATCH 2/8] compositor: add stub implementation of presentation interface

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen You can bind to the global interface, and it delivers a fake clock id. All requests on it raise an error. Changes in v4: * queuing methods were extractracted for a later series [Louis-Francis Ratté-Boulianne: split queuing feature] Signed-off-by: Pekka Paalanen Signed

[PATCH 7/8] tests: presentation test, simple

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen --- Makefile.am | 8 ++ tests/presentation-test.c | 246 ++ 2 files changed, 254 insertions(+) create mode 100644 tests/presentation-test.c diff --git a/Makefile.am b/Makefile.am index 6a91a8f..87204a6 100644 ---

[PATCH 8/8] clients: add presentation-shm demo

2014-09-23 Thread Louis-Francis Ratté-Boulianne
e-rendered at startup, so no rendering happens during the animation. [Louis-Francis Ratté-Boulianne: split queuing feature] Signed-off-by: Pekka Paalanen Signed-off-by: Louis-Francis Ratté-Boulianne --- .gitignore | 1 + Makefile.am| 8 + clients/presentation-s

[PATCH 1/8] protocol: add presentation extension v5

2014-09-23 Thread Louis-Francis Ratté-Boulianne
protocol error code for invalid flags Changes in v5: * remove the destroy method for the feedback object The protocol object should instead be automatically destroyed after a 'presented' or 'discarded' event has been triggered. * some grammatical corrections to the specificatio

[PATCH 4/8] compositor: set and use the presentation clock everywhere

2014-09-23 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Add presentation clock setters that verify the given clock actually works. Offer an automatic choice of a software fallback clock, when a backend has to always use clock_gettime() to approximate the presentation time. The DRM backend already queried the DRM about the clock i

[PATCH 0/8] Wayland Presentation Extension v5

2014-09-23 Thread Louis-Francis Ratté-Boulianne
ion-test.c| 246 +++ 15 files changed, 1823 insertions(+), 69 deletions(-) create mode 100644 clients/presentation-shm.c create mode 100644 protocol/presentation_timing.xml create mode 100644 tests/presentation-test.c Thanks, Louis-Francis Ratté-Boulianne

[PATCH 0/8] Wayland Presentation Extension v4

2014-09-15 Thread Louis-Francis Ratté-Boulianne
show_bug.cgi?id=78190 According to Pekka, it's high time we get the feedback basics into Weston for everyone to try out. Let's hope it's ready to be merged. Thanks, Louis-Francis Ratté-Boulianne -- 1.9.3 ___ wayland-de

[PATCH 4/8] compositor: set and use the presentation clock everywhere

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Add presentation clock setters that verify the given clock actually works. Offer an automatic choice of a software fallback clock, when a backend has to always use clock_gettime() to approximate the presentation time. The DRM backend already queried the DRM about the clock i

[PATCH 7/8] tests: presentation test, simple

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Added in v4. Signed-off-by: Pekka Paalanen --- Makefile.am | 8 ++ tests/presentation-test.c | 246 ++ 2 files changed, 254 insertions(+) create mode 100644 tests/presentation-test.c diff --git a/Makefile.am b/M

[PATCH 3/8] weston-info: report presentation clock

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Signed-off-by: Pekka Paalanen v3 Reviewed-by: Mario Kleiner --- Makefile.am | 3 ++ clients/weston-info.c | 81 +++ 2 files changed, 84 insertions(+) diff --git a/Makefile.am b/Makefile.am index b1dcc21..6a91a8f 1

[PATCH 6/8] compositor-drm: deliver frame seq for feedback

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Add 'msc' field to weston_output to maintain the refresh counter, and use it in presentation_feedback.presented. Make compositor-drm update the per-output refresh counter with the values reported by DRM. If the DRM reported value jumps backwards, assume it wrapped around onc

[PATCH 2/8] compositor: add stub implementation of presentation interface

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen You can bind to the global interface, and it delivers a fake clock id. All requests on it raise an error. Changes in v4: * queuing methods were extractracted for a later series [Louis-Francis Ratté-Boulianne: split queuing feature] Signed-off-by: Pekka Paalanen Signed

[PATCH 1/8] protocol: add presentation extension v4

2014-09-15 Thread Louis-Francis Ratté-Boulianne
protocol error code for invalid flags [Louis-Francis Ratté-Boulianne: split the spec in two parts] Signed-off-by: Pekka Paalanen Signed-off-by: Louis-Francis Ratté-Boulianne v3 Reviewed-by: Mario Kleiner --- Makefile.am | 5 + protocol/presentat

[PATCH 5/8] compositor: implement presentation_feedback

2014-09-15 Thread Louis-Francis Ratté-Boulianne
From: Pekka Paalanen Implement the presentation.feedback request, and the presentation_feedback protocol interface. Feedback information is delivered to clients as the backend reports it, except the refresh counter (MSC) which is always reported as zero. Changes in v4: * add 'flags' argument to

[PATCH 8/8] clients: add presentation-shm demo

2014-09-15 Thread Louis-Francis Ratté-Boulianne
e-rendered at startup, so no rendering happens during the animation. [Louis-Francis Ratté-Boulianne: split queuing feature] Signed-off-by: Pekka Paalanen Signed-off-by: Louis-Francis Ratté-Boulianne --- .gitignore | 1 + Makefile.am| 8 + clients/presentation-s

Re: [PATCH 3/4 v2] xwayland: Draw decoration on window manager side

2013-08-05 Thread Louis-Francis Ratté-Boulianne
Draw everything in a cairo image surface before copying it to the XCB surface. That removes the flickering visible on rpi whenever the decoration were redrawn. --- src/xwayland/window-manager.c | 26 -- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/src/xway

Re: [PATCH 3/4] xwayland: Draw decoration on window manager side

2013-08-05 Thread Louis-Francis Ratté-Boulianne
On Wednesday, July 31, 2013 10:41 EDT, Uli Schlachter wrote: > Hi, > > On 30.07.2013 18:13, Louis-Francis Ratté-Boulianne wrote: > > Draw everything in a cairo image surface before copying it to the XCB > > surface. That removes the flickering visible on rpi whenever th

[PATCH 1/4] xwayland: Fix the race condition when mapping a surface

2013-07-30 Thread Louis-Francis Ratté-Boulianne
From: Louis-Francis Ratté-Boulianne Make sure XCB_MAP_NOTIFY has been received and the window id has been set before mapping the shell surface. It fixes race condition making the surface appears at wrong coordinates or with wrong size. --- src/xwayland/window-manager.c | 29 ++

[PATCH] xwayland: Check surface is not null when handling enter events

2013-07-30 Thread Louis-Francis Ratté-Boulianne
--- hw/xfree86/xwayland/xwayland-input.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/xfree86/xwayland/xwayland-input.c b/hw/xfree86/xwayland/xwayland-input.c index c550d77..e1858f2 100644 --- a/hw/xfree86/xwayland/xwayland-input.c +++ b/hw/xfree86/xwayland/xwayland-input.c @@ -278,6

[PATCH 4/4] xwayland: Implement extended version of _NET_WM_SYNC_REQUEST protocol

2013-07-30 Thread Louis-Francis Ratté-Boulianne
"Extended synchronization provides a more general framework for redraw coordination, including spontaneous application updates as well as resizing." See documentation http://fishsoup.net/misc/wm-spec-synchronization.html --- src/compositor.c | 3 + src/compositor.h |

[PATCH 3/4] xwayland: Draw decoration on window manager side

2013-07-30 Thread Louis-Francis Ratté-Boulianne
Draw everything in a cairo image surface before copying it to the XCB surface. That removes the flickering visible on rpi whenever the decoration were redrawn. --- src/xwayland/window-manager.c | 22 -- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/xwayland

[PATCH 2/4] xwayland: Implement _NET_WM_SYNC_REQUEST protocol

2013-07-30 Thread Louis-Francis Ratté-Boulianne
>From the documentation: "This protocol uses the XSync extension to let client and window manager synchronize the repaint of the window manager frame and the client window" * It makes sure the window manager doesn't send configure events faster than the application can handle them. * If an sync

[PATCH weston] xwayland: Remove transform listener when destroying the wm

2013-07-19 Thread Louis-Francis Ratté-Boulianne
Fix a segfault occuring after the last X window was closed. --- src/xwayland/window-manager.c |1 + 1 file changed, 1 insertion(+) diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c index fd91004..57a5d99 100644 --- a/src/xwayland/window-manager.c +++ b/src/xwayland/wi

Re: [PATCH weston 17/18] xwayland: Fix the race condition when mapping a surface

2013-06-14 Thread Louis-Francis Ratté-Boulianne
n slowest hardware (rpi) though. I also found it weird to map the surface without being sure we received MAP_NOTIFY first. > Thanks. > > On 22 de mayo de 2013 at 10:27 AM, ppaala...@gmail.com wrote: > > > >From: Louis-Francis Ratté-Boulianne > > > >Make sure XCB_