Kill CameraPage::needsPipeline property
authorMohammed Sameer <msameer@foolab.org>
Sat, 5 Jan 2013 15:40:36 +0000 (17:40 +0200)
committerMohammed Sameer <msameer@foolab.org>
Sat, 5 Jan 2013 15:40:36 +0000 (17:40 +0200)
If a page doesn't need the pipeline then it should set the policyMode to CameraResources.None

qml/CameraPage.qml
qml/PipelineManager.qml
qml/PostCapturePage.qml
qml/VideoPlayerPage.qml
src/cameraresources.cpp
src/cameraresources.h

index b919e8c..f4630a0 100644 (file)
@@ -28,7 +28,6 @@ import CameraPlus 1.0
 Page {
         id: page
 
-        property bool needsPipeline: true
         property int policyMode: CameraResources.None
 
         property Camera cam: null
index 366c3c0..4a599d2 100644 (file)
@@ -24,8 +24,6 @@ import QtQuick 1.1
 import QtCamera 1.0
 import CameraPlus 1.0
 
-// TODO: if a page doesn't need the pipeline then we will release its resources :(
-
 Item {
         id: handler
 
@@ -86,11 +84,11 @@ Item {
         states: [
         State {
                 name: "on"
-                when: Qt.application.active && currentPage && currentPage.needsPipeline && !policy.hijacked
+                when: Qt.application.active && currentPage && currentPage.policyMode != CameraResources.None && !policy.hijacked
         },
         State {
                 name: "off"
-                when: (!Qt.application.active && camera.idle) || (currentPage && !currentPage.needsPipeline && camera.idle)
+                when: (!Qt.application.active && camera.idle) || (currentPage && currentPage.policyMode == CameraResources.None && camera.idle)
         },
         State {
                 name: "policyLost"
index 84d0b74..5743ccf 100644 (file)
@@ -25,14 +25,11 @@ import com.nokia.meego 1.1
 import QtCamera 1.0
 import CameraPlus 1.0
 
-// TODO: losing resources while playback won't show an error
-
 CameraPage {
         id: page
 
         controlsVisible: false
-        policyMode: CameraResources.PostCapture
-        needsPipeline: false
+        policyMode: CameraResources.None
         standbyVisible: !Qt.application.active
 
         property Item currentItem: null
index 65fee79..759b097 100644 (file)
@@ -32,8 +32,7 @@ CameraPage {
 
         property bool popTwice: false
         controlsVisible: false
-        policyMode: CameraResources.PostCapture
-        needsPipeline: false
+        policyMode: CameraResources.None
         standbyVisible: false
 
         property alias source: video.source
index 59a8138..d067d3c 100644 (file)
@@ -216,10 +216,6 @@ void CameraResourcesWorker::acquire(bool *ok, const CameraResources::Mode& mode)
                    << ResourcePolicy::AudioPlaybackType);
     break;
 
-  case CameraResources::PostCapture:
-    *ok = release();
-    break;
-
   default:
     qWarning() << "Unknown mode" << mode;
 
index ba1e448..71a085f 100644 (file)
@@ -45,7 +45,6 @@ public:
     Image,
     Video,
     Recording,
-    PostCapture,
   } Mode;
 
   CameraResources(QObject *parent = 0);