From b708c9814ecfdb9209b2d183350141c3fa2ac635 Mon Sep 17 00:00:00 2001 From: Tadao Tanikawa Date: Tue, 3 Jan 2017 01:33:11 +0900 Subject: Revert "Change QWindow::visible when surface visibility in ivi shell changes" 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 --- .../qt5/qtwayland/0002_expand_ivi-shell.patch | 46 ---------------------- recipes-qt/qt5/qtwayland_%.bbappend | 1 - 2 files changed, 47 deletions(-) delete mode 100644 recipes-qt/qt5/qtwayland/0002_expand_ivi-shell.patch 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 -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 -Reviewed-by: Giulio Camuffo ---- - 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 - - diff --git a/recipes-qt/qt5/qtwayland_%.bbappend b/recipes-qt/qt5/qtwayland_%.bbappend index c430e526d..baaf11492 100644 --- a/recipes-qt/qt5/qtwayland_%.bbappend +++ b/recipes-qt/qt5/qtwayland_%.bbappend @@ -22,7 +22,6 @@ FILESEXTRAPATHS_append := ":${THISDIR}/${PN}" SRC_URI_append = "\ file://0010-Added-manifest-file-according-to-smack-3-domain-mode.patch \ - file://0002_expand_ivi-shell.patch \ file://0001-Avoid-attaching-NULL-buffer-while-hiding-EGL-windows.patch \ " SRC_URI_append_checkforkrogoth = "\ -- cgit 1.2.3-korg