rework screen on/off code

Change-Id: I13f71e850592a588bbd4805b1830c503bd4decb4
diff --git a/services/surfaceflinger/DisplayHardware/DisplayHardwareBase.cpp b/services/surfaceflinger/DisplayHardware/DisplayHardwareBase.cpp
index 69f1aca..d3a8bde 100644
--- a/services/surfaceflinger/DisplayHardware/DisplayHardwareBase.cpp
+++ b/services/surfaceflinger/DisplayHardware/DisplayHardwareBase.cpp
@@ -54,15 +54,12 @@
         sp<SurfaceFlinger> flinger = mFlinger.promote();
         ALOGD("About to give-up screen, flinger = %p", flinger.get());
         if (flinger != 0) {
-            mBarrier.close();
-            flinger->screenReleased(0);
-            mBarrier.wait();
+            flinger->screenReleased();
         }
         if (waitForFbWake() == NO_ERROR) {
-            sp<SurfaceFlinger> flinger = mFlinger.promote();
             ALOGD("Screen about to return, flinger = %p", flinger.get());
             if (flinger != 0) {
-                flinger->screenAcquired(0);
+                flinger->screenAcquired();
             }
             return true;
         }
@@ -98,17 +95,12 @@
     return err < 0 ? -errno : int(NO_ERROR);
 }
 
-status_t DisplayHardwareBase::DisplayEventThread::releaseScreen() const {
-    mBarrier.open();
-    return NO_ERROR;
-}
-
 // ----------------------------------------------------------------------------
 
 DisplayHardwareBase::DisplayHardwareBase(const sp<SurfaceFlinger>& flinger,
         uint32_t displayIndex) 
-    : mScreenAcquired(true)
 {
+    mScreenAcquired = true;
     mDisplayEventThread = new DisplayEventThread(flinger);
 }
 
@@ -130,10 +122,7 @@
 }
 
 void DisplayHardwareBase::releaseScreen() const {
-    status_t err = mDisplayEventThread->releaseScreen();
-    if (err >= 0) {
-        mScreenAcquired = false;
-    }
+    mScreenAcquired = false;
 }
 
 void DisplayHardwareBase::acquireScreen() const {