|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
48dc8f4 |
From 1cac327a6ef9c0ca44ec32c7146da37ecb930dca Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
From: Daniel Stone <daniels@collabora.com>
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
Date: Thu, 12 Sep 2013 16:58:00 -0400
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
48dc8f4 |
Subject: [PATCH 29/38] XWayland: Don't commit empty surfaces
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
Instead of attaching, damaging and then committing a new buffer as soon
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
as we allocate a pixmap, just attach and damage the entire buffer. When
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
the buffer is changed, we'll commit the changes.
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
This avoids an ugly black (on SHM) flash when a window is mapped or
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
resized.
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
Signed-off-by: Daniel Stone <daniels@collabora.com>
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
---
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
hw/xfree86/xwayland/xwayland-window.c | 1 -
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
1 file changed, 1 deletion(-)
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
diff --git a/hw/xfree86/xwayland/xwayland-window.c b/hw/xfree86/xwayland/xwayland-window.c
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
48dc8f4 |
index 20db80c..5045e65 100644
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
--- a/hw/xfree86/xwayland/xwayland-window.c
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
+++ b/hw/xfree86/xwayland/xwayland-window.c
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
@@ -80,7 +80,6 @@ xwl_window_attach(struct xwl_window *xwl_window, PixmapPtr pixmap)
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
wl_surface_damage(xwl_window->surface, 0, 0,
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
72ddd37 |
pixmap->drawable.width,
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
72ddd37 |
pixmap->drawable.height);
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
- wl_surface_commit(xwl_window->surface);
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
72ddd37 |
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
callback = wl_display_sync(xwl_screen->display);
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
973c76f |
wl_callback_add_listener(callback, &free_pixmap_listener, pixmap);
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
72ddd37 |
--
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
48dc8f4 |
1.8.4.2
|
|
![](https://seccdn.libravatar.org/avatar/4a0fc9d2dfbe9dc214f4e8cfd3e4f5ab3d62796420bb9b7e99de30089fccdcac?s=16&d=retro) |
72ddd37 |
|