summaryrefslogtreecommitdiff
path: root/core/java/android/view/WindowManager.java
diff options
context:
space:
mode:
authorJoe Onorato <joeo@google.com>2011-01-23 23:36:57 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-01-23 23:36:57 -0800
commitfaf083ef0b7b893acb871084231d20e08e208f8f (patch)
tree30fb5d8ca4eceed0b137b407077edd0e3ed3ebed /core/java/android/view/WindowManager.java
parentb4ae633df775f99c4c0e47da228d71489d44b353 (diff)
parent4c541b1303b0ee2b9b0d19bee85d3780c5c4c110 (diff)
am 4c541b13: Merge "visibility ("lights out") API." into honeycomb
* commit '4c541b1303b0ee2b9b0d19bee85d3780c5c4c110': visibility ("lights out") API.
Diffstat (limited to 'core/java/android/view/WindowManager.java')
-rw-r--r--core/java/android/view/WindowManager.java43
1 files changed, 42 insertions, 1 deletions
diff --git a/core/java/android/view/WindowManager.java b/core/java/android/view/WindowManager.java
index c985358fc44b..d3d8b08ee28a 100644
--- a/core/java/android/view/WindowManager.java
+++ b/core/java/android/view/WindowManager.java
@@ -950,7 +950,22 @@ public interface WindowManager extends ViewManager {
* will be used.
*/
public int screenOrientation = ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
-
+
+ /**
+ * Control the visibility of the status bar.
+ * @hide
+ */
+ public int systemUiVisibility;
+
+ /**
+ * Get callbacks about the system ui visibility changing.
+ *
+ * TODO: Maybe there should be a bitfield of optional callbacks that we need.
+ *
+ * @hide
+ */
+ public boolean hasSystemUiListeners;
+
public LayoutParams() {
super(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
type = TYPE_APPLICATION;
@@ -1030,6 +1045,8 @@ public interface WindowManager extends ViewManager {
out.writeString(packageName);
TextUtils.writeToParcel(mTitle, out, parcelableFlags);
out.writeInt(screenOrientation);
+ out.writeInt(systemUiVisibility);
+ out.writeInt(hasSystemUiListeners ? 1 : 0);
}
public static final Parcelable.Creator<LayoutParams> CREATOR
@@ -1065,6 +1082,8 @@ public interface WindowManager extends ViewManager {
packageName = in.readString();
mTitle = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(in);
screenOrientation = in.readInt();
+ systemUiVisibility = in.readInt();
+ hasSystemUiListeners = in.readInt() != 0;
}
@SuppressWarnings({"PointlessBitwiseExpression"})
@@ -1082,6 +1101,10 @@ public interface WindowManager extends ViewManager {
public static final int SCREEN_BRIGHTNESS_CHANGED = 1<<11;
/** {@hide} */
public static final int BUTTON_BRIGHTNESS_CHANGED = 1<<12;
+ /** {@hide} */
+ public static final int SYSTEM_UI_VISIBILITY_CHANGED = 1<<13;
+ /** {@hide} */
+ public static final int SYSTEM_UI_LISTENER_CHANGED = 1<<14;
// internal buffer to backup/restore parameters under compatibility mode.
private int[] mCompatibilityParamsBackup = null;
@@ -1181,6 +1204,16 @@ public interface WindowManager extends ViewManager {
changes |= SCREEN_ORIENTATION_CHANGED;
}
+ if (systemUiVisibility != o.systemUiVisibility) {
+ systemUiVisibility = o.systemUiVisibility;
+ changes |= SYSTEM_UI_VISIBILITY_CHANGED;
+ }
+
+ if (hasSystemUiListeners != o.hasSystemUiListeners) {
+ hasSystemUiListeners = o.hasSystemUiListeners;
+ changes |= SYSTEM_UI_LISTENER_CHANGED;
+ }
+
return changes;
}
@@ -1253,6 +1286,14 @@ public interface WindowManager extends ViewManager {
if ((flags & FLAG_COMPATIBLE_WINDOW) != 0) {
sb.append(" compatible=true");
}
+ if (systemUiVisibility != 0) {
+ sb.append(" sysui=0x");
+ sb.append(Integer.toHexString(systemUiVisibility));
+ }
+ if (hasSystemUiListeners) {
+ sb.append(" sysuil=");
+ sb.append(hasSystemUiListeners);
+ }
sb.append('}');
return sb.toString();
}