homescreenapp/hsapplication/src/hsstatemachine.cpp
changeset 92 6727c5d0afc7
parent 85 35368b604b28
child 96 458d8c8d9580
--- a/homescreenapp/hsapplication/src/hsstatemachine.cpp	Thu Sep 02 20:17:27 2010 +0300
+++ b/homescreenapp/hsapplication/src/hsstatemachine.cpp	Fri Sep 17 08:27:54 2010 +0300
@@ -276,7 +276,8 @@
     	mPublisher = new QValueSpacePublisher(HsStatePSKeyPath);
     }
 
-    mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenInactive);
+    // initialize state to invalid, actual status updates after state creation
+    mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenInvalid);
 }
 
 /*!
@@ -436,18 +437,21 @@
 		createStatePublisher();
 	}
 
-	if (mHomeScreenActive && mIdleStateActive){
-    	qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenIdleState";
-    	mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenIdleState);
-    }
-    else{
-    	qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenInactive";
-    	mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenInactive);
-    }	
-    
-    if (mHomeScreenActive && !mIdleStateActive) {
+    if (mHomeScreenActive && mIdleStateActive) {
+    	qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenWidgetViewForeground";
+    	mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenWidgetViewForeground);
+        captureEndKey(false);
+    } else if (mHomeScreenActive && !mIdleStateActive) {
+    	qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenApplicationLibraryViewForeground";
+    	mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenApplicationLibraryViewForeground);
         captureEndKey(true);
+    } else if (!mHomeScreenActive && mIdleStateActive){
+        qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenApplicationBackground | EHomeScreenWidgetViewActive";
+        mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenApplicationBackground | EHomeScreenWidgetViewActive);
+        captureEndKey(false);
     } else {
+        qDebug() << "HsStateMachine::updatePSKeys: EHomeScreenApplicationBackground | EHomeScreenApplicationLibraryViewActive";
+        mPublisher->setValue(HsStatePSKeySubPath, EHomeScreenApplicationBackground | EHomeScreenApplicationLibraryViewActive);
         captureEndKey(false);
     }
     mSendKeyCaptured = false;
@@ -466,6 +470,8 @@
         mEndKeyCaptured = false;
         keyCapture.cancelCaptureKey(Qt::Key_No);
     }
+#else
+    Q_UNUSED(enable)
 #endif
 }