diff options
author | Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com> | 2017-01-03 01:33:11 +0900 |
---|---|---|
committer | Jan-Simon Moeller <jsmoeller@linuxfoundation.org> | 2017-01-04 09:39:18 +0000 |
commit | 31926d7657fc1cc1eb01daa48934b759a51f4616 (patch) | |
tree | 290fb5154f3a2db3a53c0b6473a437cd3c2a8b71 /recipes-qt/qt5/qtwayland | |
parent | 7e540a7240a786051f50c1b56f61444628cdc82e (diff) |
Revert "Change QWindow::visible when surface visibility in ivi shell changes"chinook_3.0.0chinook/3.0.03.0.0
This reverts commit d0f95885030e5f425c0423a7a29414a204aaa341.
This is root cause of issue that screen doesn't change
from blank screen after booting.
ivi-surface's visibility must not link to QWindow's visibility
because changing it's visibility to 0 means destroying wayland
surface (--> eglsurface --> ivi-surface) immmediatly.
On the other hand, ivi-surface is created with
visibility == 0. Therefore, creating ivi-surface triggers
self destruction of ivi-surface itself immediately.
And to make matters worse, Qt5.7's hiding(visibility == 0)
window method, wl.attach(nil, 0, 0) was wrong, it cause
unpredictable operation of weston (In our case, it drops some
events between WindowManager and Weston).
For linking ivi-surface's visibility and visibility in QML,
we should consider another method. At least, commit d0f958's
approach is incorrect in Qt5.7 so far.
Change-Id: Ibe90f9dae634aa5cdb3c166caf4db02dfd71965b
Signed-off-by: Tadao Tanikawa <tanikawa.tadao@jp.panasonic.com>
Diffstat (limited to 'recipes-qt/qt5/qtwayland')
-rw-r--r-- | recipes-qt/qt5/qtwayland/0002_expand_ivi-shell.patch | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/recipes-qt/qt5/qtwayland/0002_expand_ivi-shell.patch b/recipes-qt/qt5/qtwayland/0002_expand_ivi-shell.patch deleted file mode 100644 index 12337101a..000000000 --- a/recipes-qt/qt5/qtwayland/0002_expand_ivi-shell.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 74e146ac208dcbfc34c99d903e9827ef2b932046 Mon Sep 17 00:00:00 2001 -From: Tasuku Suzuki <tasuku.suzuki@qt.io> -Date: Wed, 9 Nov 2016 16:33:28 +0900 -Subject: [PATCH] Change QWindow::visible when surface visibility in ivi shell - is changed - -Change-Id: I2c2debe47fcb173f02aef5f4e60e52c35ad7b395 -Reviewed-by: Yusuke Binsaki <yusuke.binsaki@itage.co.jp> -Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com> ---- - src/plugins/shellintegration/ivi-shell/qwaylandivisurface.cpp | 5 +++++ - src/plugins/shellintegration/ivi-shell/qwaylandivisurface_p.h | 1 + - 2 files changed, 6 insertions(+) - -diff --git a/src/plugins/shellintegration/ivi-shell/qwaylandivisurface.cpp b/src/plugins/shellintegration/ivi-shell/qwaylandivisurface.cpp -index ecc47e0..a2c7788 100644 ---- a/src/plugins/shellintegration/ivi-shell/qwaylandivisurface.cpp -+++ b/src/plugins/shellintegration/ivi-shell/qwaylandivisurface.cpp -@@ -89,6 +89,11 @@ void QWaylandIviSurface::ivi_surface_configure(int32_t width, int32_t height) - this->m_window->configure(0, width, height); - } - -+void QWaylandIviSurface::ivi_controller_surface_visibility(int32_t visibility) -+{ -+ this->m_window->window()->setVisible(visibility != 0); -+} -+ - } - - QT_END_NAMESPACE -diff --git a/src/plugins/shellintegration/ivi-shell/qwaylandivisurface_p.h b/src/plugins/shellintegration/ivi-shell/qwaylandivisurface_p.h -index 9ac81ad..e332ce7 100644 ---- a/src/plugins/shellintegration/ivi-shell/qwaylandivisurface_p.h -+++ b/src/plugins/shellintegration/ivi-shell/qwaylandivisurface_p.h -@@ -61,6 +61,7 @@ public: - private: - void createExtendedSurface(QWaylandWindow *window); - virtual void ivi_surface_configure(int32_t width, int32_t height) Q_DECL_OVERRIDE; -+ void ivi_controller_surface_visibility(int32_t visibility) Q_DECL_OVERRIDE; - - QWaylandWindow *m_window; - QWaylandExtendedSurface *m_extendedWindow; --- -2.7.4 - - |