OSDN Git Service

Update to implement new APIs.
authorDianne Hackborn <hackbod@google.com>
Fri, 21 Aug 2009 02:33:02 +0000 (19:33 -0700)
committerDianne Hackborn <hackbod@google.com>
Fri, 21 Aug 2009 02:33:02 +0000 (19:33 -0700)
mid/com/android/internal/policy/impl/MidWindow.java
phone/com/android/internal/policy/impl/PhoneWindow.java

index 68727fb..b2e9ebd 100644 (file)
@@ -67,6 +67,8 @@ import android.view.WindowManager;
 import static android.view.WindowManager.LayoutParams.FLAG_FULLSCREEN;
 import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN;
 import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR;
+
+import android.view.Window.Callback;
 import android.view.animation.Animation;
 import android.view.animation.AnimationUtils;
 import android.widget.FrameLayout;
@@ -1886,6 +1888,11 @@ public class MidWindow extends Window implements MenuBuilder.Callback {
         @Override
         protected void onAttachedToWindow() {
             super.onAttachedToWindow();
+            
+            final Callback cb = getCallback();
+            if (cb != null && mFeatureId < 0) {
+                cb.onAttachedToWindow();
+            }
 
             if (mFeatureId == -1) {
                 /*
@@ -1898,6 +1905,16 @@ public class MidWindow extends Window implements MenuBuilder.Callback {
                 openPanelsAfterRestore();
             }
         }
+
+        @Override
+        protected void onDetachedFromWindow() {
+            super.onDetachedFromWindow();
+            
+            final Callback cb = getCallback();
+            if (cb != null && mFeatureId < 0) {
+                cb.onDetachedFromWindow();
+            }
+        }
     }
 
     protected DecorView generateDecor() {
index 4a1011b..ee96e1c 100644 (file)
@@ -568,7 +568,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
                 WRAP_CONTENT, WRAP_CONTENT,
                 st.x, st.y, WindowManager.LayoutParams.TYPE_APPLICATION_PANEL,
                 WindowManager.LayoutParams.FLAG_DITHER
-                | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM,
+                | WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM
+                | WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
                 st.decorView.mDefaultOpacity);
 
         lp.gravity = st.gravity;
@@ -2040,6 +2041,11 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
         @Override
         protected void onAttachedToWindow() {
             super.onAttachedToWindow();
+            
+            final Callback cb = getCallback();
+            if (cb != null && mFeatureId < 0) {
+                cb.onAttachedToWindow();
+            }
 
             if (mFeatureId == -1) {
                 /*
@@ -2052,6 +2058,16 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
                 openPanelsAfterRestore();
             }
         }
+
+        @Override
+        protected void onDetachedFromWindow() {
+            super.onDetachedFromWindow();
+            
+            final Callback cb = getCallback();
+            if (cb != null && mFeatureId < 0) {
+                cb.onDetachedFromWindow();
+            }
+        }
     }
 
     protected DecorView generateDecor() {