summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Adam Cohen <adamcohen@google.com> 2012-09-30 16:11:00 -0700
committer Adam Cohen <adamcohen@google.com> 2012-10-01 19:13:56 -0700
commit0207c0992cb05d0acc60540748c8ae6985917abb (patch)
tree20b328c531a1638b4564f50b9ddc21bcc568d8f9
parentb35000f3f48c5f2c620c4aa30275b92e38afb6c1 (diff)
Fixing a coupld lockscreen bugs
-> Showing correct page, as per discussions (issue 7205431) -> Hide the time when the system status widget is showsing (issue 7216577) Change-Id: I5b79d72e8fd8226952f6a8ea99b776feb4ddde1f
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java11
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetRegion.java16
2 files changed, 27 insertions, 0 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
index 4d56700d7ec7..a7fc1a165490 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
@@ -166,6 +166,7 @@ public class KeyguardHostView extends KeyguardViewBase {
// from AudioManager
KeyguardHostView.this.addView(mTransportControl);
mTransportControl.setVisibility(View.GONE);
+ showAppropriateWidgetPage();
}
}
@@ -178,6 +179,7 @@ public class KeyguardHostView extends KeyguardViewBase {
mTransportControl.setVisibility(View.VISIBLE);
// Once shown, leave it showing
mSticky = true;
+ showAppropriateWidgetPage();
}
}
});
@@ -736,6 +738,15 @@ public class KeyguardHostView extends KeyguardViewBase {
addWidget(widgets[i]);
}
}
+ showAppropriateWidgetPage();
+ }
+
+ private void showAppropriateWidgetPage() {
+ int page = mAppWidgetContainer.indexOfChild(findViewById(R.id.keyguard_status_view));
+ if (mAppWidgetContainer.indexOfChild(mTransportControl) != -1) {
+ page = mAppWidgetContainer.indexOfChild(mTransportControl);
+ }
+ mAppWidgetContainer.setCurrentPage(page);
}
private void inflateAndAddUserSelectorWidgetIfNecessary() {
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetRegion.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetRegion.java
index e9cf9a56e60e..f7f23c714528 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetRegion.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardWidgetRegion.java
@@ -18,6 +18,7 @@ package com.android.internal.policy.impl.keyguard;
import android.content.Context;
import android.util.AttributeSet;
import android.view.View;
+import android.view.ViewGroup;
import android.widget.LinearLayout;
import com.android.internal.R;
@@ -70,5 +71,20 @@ public class KeyguardWidgetRegion extends LinearLayout implements PageSwitchList
@Override
public void onPageSwitch(View newPage, int newPageIndex) {
mPage = newPageIndex;
+
+ // If we're showing the default system status widget, then we want to hide the clock
+ boolean hideClock = false;
+ if ((newPage instanceof ViewGroup)) {
+ ViewGroup vg = (ViewGroup) newPage;
+ if (vg.getChildAt(0) instanceof KeyguardStatusView) {
+ hideClock = true;
+ }
+ }
+
+ if (hideClock) {
+ setSystemUiVisibility(getSystemUiVisibility() | View.STATUS_BAR_DISABLE_CLOCK);
+ } else {
+ setSystemUiVisibility(getSystemUiVisibility() & ~View.STATUS_BAR_DISABLE_CLOCK);
+ }
}
}