am c1ae43ad: am f69320a1: Merge "Preventing more than five widgets from being added in the carousel (issue 7502935)" into jb-mr1-dev

* commit 'c1ae43ade0baa4dc8af1b505ba4b83f0f72c6dd8':
  Preventing more than five widgets from being added in the carousel (issue 7502935)
This commit is contained in:
Adam Cohen
2012-11-08 16:41:31 -08:00
committed by Android Git Automerger
2 changed files with 11 additions and 0 deletions

View File

@@ -323,6 +323,13 @@ public class KeyguardHostView extends KeyguardViewBase {
KeyguardHostView.this.onUserActivityTimeoutChanged(); KeyguardHostView.this.onUserActivityTimeoutChanged();
} }
@Override
public void onAddView(View v) {
if (numWidgets() >= MAX_WIDGETS) {
setAddWidgetEnabled(false);
}
};
@Override @Override
public void onRemoveView(View v) { public void onRemoveView(View v) {
if (numWidgets() < MAX_WIDGETS) { if (numWidgets() < MAX_WIDGETS) {

View File

@@ -236,6 +236,7 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit
public interface Callbacks { public interface Callbacks {
public void userActivity(); public void userActivity();
public void onUserActivityTimeoutChanged(); public void onUserActivityTimeoutChanged();
public void onAddView(View v);
public void onRemoveView(View v); public void onRemoveView(View v);
} }
@@ -262,6 +263,9 @@ public class KeyguardWidgetPager extends PagedView implements PagedView.PageSwit
final int[] pagesRange = new int[mTempVisiblePagesRange.length]; final int[] pagesRange = new int[mTempVisiblePagesRange.length];
getVisiblePages(pagesRange); getVisiblePages(pagesRange);
boundByReorderablePages(true, pagesRange); boundByReorderablePages(true, pagesRange);
if (mCallbacks != null) {
mCallbacks.onAddView(v);
}
// Subtract from the index to take into account pages before the reorderable // Subtract from the index to take into account pages before the reorderable
// pages (e.g. the "add widget" page) // pages (e.g. the "add widget" page)
mBackgroundWorkerHandler.post(new Runnable() { mBackgroundWorkerHandler.post(new Runnable() {