Qt: destroy transWidget before offGuideImage shows
authorJihye Won <jihye.won1@samsung.com>
Tue, 3 Nov 2015 06:51:28 +0000 (15:51 +0900)
committerSeokYeon Hwang <syeon.hwang@samsung.com>
Fri, 6 Nov 2015 13:19:13 +0000 (22:19 +0900)
When emulator does not receive any event,
offGuideImage is loaded on the top of the screen.
The problem is that offGuideImage shows with transparent widget
created for Move function.
To resolve the problem, transparent widget should be deleted
just before offGuidImage shows.

Change-Id: Ia2ceb186034d4e37bff3c1f22c206202a20b7e8b
Signed-off-by: Jihye Won <jihye.won1@samsung.com>
tizen/src/ui/displaybase.cpp
tizen/src/ui/transwidget.cpp

index cbf9ea40ba692d4eb6fabeae59a1484f5507b8c7..50a46b6a12881b865d849bd9eace5ba33fbdbe31 100644 (file)
@@ -96,6 +96,13 @@ bool DisplayBase::isOffGuideReady()
 
 void DisplayBase::showOffGuideImg()
 {
+    /* destroy transparent widget before OffGuideImage shows */
+    TransWidget *widget = win->getTransWidget();
+    if (widget != NULL) {
+        qDebug() << "move: delete transparent widget because of offGuideImg";
+        delete widget;
+    }
+
     offGuideShown = true;
 
     offGuide = new QLabel(win);
index ba7ef4abe11fbd9573f69bb4d155332aa70b04ff..88becb6b2e08574d29d00a3fb5acbcfee85c301a 100644 (file)
@@ -99,10 +99,6 @@ TransWidget::~TransWidget()
 {
     qDebug("destroy transparent widget");
     removeEventFilter(this);
-    MainWindow *parent = qobject_cast<MainWindow*>(this->parent());
-    if (parent == NULL) {
-        qWarning() << "parent object(MainWindow) is null.";
-    } else {
-        parent->setTransWidget(NULL);
-    }
+    MainWindow *parent = (MainWindow *)(this->parent());
+    parent->setTransWidget(NULL);
 }