src/hbcore/gui/hbmainwindow_p.cpp
changeset 28 b7da29130b0e
parent 21 4633027730f5
child 30 80e4d18b72f5
--- a/src/hbcore/gui/hbmainwindow_p.cpp	Thu Sep 02 20:44:51 2010 +0300
+++ b/src/hbcore/gui/hbmainwindow_p.cpp	Fri Sep 17 08:32:10 2010 +0300
@@ -204,6 +204,8 @@
                 if (mViewStackWidget->isSwitchingViews() || !mToolbarWasAdded) {
                     toolBarD->suppressNextAppearEffect();
                     mToolbarWasAdded = true;
+                } else if (mOrientationChangeOngoing && !mAnimateOrientationSwitch) {
+                    toolBarD->suppressNextAppearEffect();
                 }
                 mScene->addItem(toolBar); // top level
             }
@@ -470,7 +472,7 @@
 
     // do some sanity checking for the size got from device profile
     if (newSize.isNull() || ((newSize.width()*newSize.height()) < QVga_res)) {  // the resolution must be at least QVGA..
-        qWarning("Orient. change error: size from device profile is faulty!");
+        hbWarning("Orient. change error: size from device profile is faulty!");
     }
 
     q->setSceneRect(0, 0, newSize.width(), newSize.height());
@@ -572,7 +574,7 @@
                   QStringList() << "view_show_normal" << "view_hide_normal" <<  "view_show_back" << "view_hide_back",
                   QStringList() << "show" << "hide" << "show_back" << "hide_back");
     if (!ok) {
-        qWarning("HbMainWindow: addViewEffects: atomic registration for show/hide effects failed");
+        hbWarning("HbMainWindow: addViewEffects: atomic registration for show/hide effects failed");
     }
 
     // Register the alternative default.
@@ -581,7 +583,7 @@
              QStringList() << "view_show_normal_alt" << "view_hide_normal_alt" << "view_show_back_alt" << "view_hide_back_alt",
              QStringList() << "show_alt" << "hide_alt" << "show_alt_back" << "hide_alt_back");
     if (!ok) {
-        qWarning("HbMainWindow: addViewEffects: atomic registration for alternative show/hide effects failed");
+        hbWarning("HbMainWindow: addViewEffects: atomic registration for alternative show/hide effects failed");
     }
 
     // Register titlebar effects.
@@ -591,7 +593,7 @@
              QStringList() << "titlebar_disappear" <<  "titlebar_appear" << "titlebar_orient_disappear" << "titlebar_orient_appear",
              QStringList() << "disappear" << "appear" <<  "disappear_orient" << "appear_orient");
     if (!ok) {
-        qWarning("HbMainWindow: addViewEffects: atomic registration for titlebar effects failed");
+        hbWarning("HbMainWindow: addViewEffects: atomic registration for titlebar effects failed");
     }
 
     // Register statusbar effects.
@@ -600,7 +602,7 @@
              QStringList() << "statusbar_disappear" <<  "statusbar_appear" << "statusbar_orient_disappear" << "statusbar_orient_appear",
              QStringList() << "disappear" << "appear" <<  "disappear_orient" << "appear_orient");
     if (!ok) {
-        qWarning("HbMainWindow: addViewEffects: atomic registration for statusbar effects failed");
+        hbWarning("HbMainWindow: addViewEffects: atomic registration for statusbar effects failed");
     }
 }
 
@@ -812,8 +814,16 @@
     HbView *view = q->currentView();
     if (view) {
         const Hb::SceneItems visibleItems(view->visibleItems());
-        view->setTitleBarVisible(visibleItems & Hb::TitleBarItem); // also handles updating of the navigation button
-        view->setStatusBarVisible(visibleItems & Hb::StatusBarItem);
+
+        // set statusbar and titlebar flag
+        HbView::HbViewFlags flags = view->viewFlags();
+        flags = (visibleItems & Hb::StatusBarItem) ?
+                    flags &~ HbView::ViewStatusBarHidden :
+                    flags |  HbView::ViewStatusBarHidden;
+        flags = (visibleItems & Hb::TitleBarItem) ?
+                    flags &~ HbView::ViewTitleBarHidden :
+                    flags |  HbView::ViewTitleBarHidden;
+        view->setViewFlags( flags ); // also handles updating of the navigation button
 
         // ToolBar is a special case, since it depens on the current view's toolbar
         if (visibleItems & Hb::ToolBarItem) {