diff options
author | John Spurlock <jspurlock@google.com> | 2014-07-07 08:37:56 -0400 |
---|---|---|
committer | John Spurlock <jspurlock@google.com> | 2014-07-12 18:41:57 -0400 |
commit | 486b78e42652466f6241eb87d5bed60040db7a25 (patch) | |
tree | 6d11449bd70d79355d489558f8145e3655e0e672 /packages/SystemUI/src/com/android/systemui/qs/QSTile.java | |
parent | 030f0b2340877b0a466ae112466a88456fcb5a0e (diff) | |
download | frameworks_base-486b78e42652466f6241eb87d5bed60040db7a25.zip frameworks_base-486b78e42652466f6241eb87d5bed60040db7a25.tar.gz frameworks_base-486b78e42652466f6241eb87d5bed60040db7a25.tar.bz2 |
QS: Introduce bluetooth control panel.
- Factor out common detail item panel view, share with Wifi.
- Add an empty state (large icon + text)
- Implement connect / disconnect for supported BT profiles.
- Wire up "scanning" state, but still waiting on asset.
- Add BT controller info to dump.
Bug:16235253
Change-Id: Icf854cafba962fe4b63767d7206e309d80b7b87b
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/qs/QSTile.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/qs/QSTile.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSTile.java b/packages/SystemUI/src/com/android/systemui/qs/QSTile.java index 62c9d9f..fc08cf4 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSTile.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSTile.java @@ -50,7 +50,7 @@ import java.util.Objects; */ public abstract class QSTile<TState extends State> implements Listenable { protected final String TAG = "QSTile." + getClass().getSimpleName(); - protected static final boolean DEBUG = false; + protected static final boolean DEBUG = Log.isLoggable("QSTile", Log.DEBUG); protected final Host mHost; protected final Context mContext; @@ -129,6 +129,10 @@ public abstract class QSTile<TState extends State> implements Listenable { mHandler.obtainMessage(H.TOGGLE_STATE_CHANGED, state ? 1 : 0, 0).sendToTarget(); } + public void fireScanStateChanged(boolean state) { + mHandler.obtainMessage(H.SCAN_STATE_CHANGED, state ? 1 : 0, 0).sendToTarget(); + } + // call only on tile worker looper private void handleSetCallback(Callback callback) { @@ -166,6 +170,12 @@ public abstract class QSTile<TState extends State> implements Listenable { } } + private void handleScanStateChanged(boolean state) { + if (mCallback != null) { + mCallback.onScanStateChanged(state); + } + } + protected void handleUserSwitch(int newUserId) { handleRefreshState(null); } @@ -178,6 +188,7 @@ public abstract class QSTile<TState extends State> implements Listenable { private static final int SHOW_DETAIL = 5; private static final int USER_SWITCH = 6; private static final int TOGGLE_STATE_CHANGED = 7; + private static final int SCAN_STATE_CHANGED = 8; private H(Looper looper) { super(looper); @@ -208,6 +219,9 @@ public abstract class QSTile<TState extends State> implements Listenable { } else if (msg.what == TOGGLE_STATE_CHANGED) { name = "handleToggleStateChanged"; handleToggleStateChanged(msg.arg1 != 0); + } else if (msg.what == SCAN_STATE_CHANGED) { + name = "handleScanStateChanged"; + handleScanStateChanged(msg.arg1 != 0); } } catch (Throwable t) { final String error = "Error in " + name; @@ -221,6 +235,7 @@ public abstract class QSTile<TState extends State> implements Listenable { void onStateChanged(State state); void onShowDetail(boolean show); void onToggleStateChanged(boolean state); + void onScanStateChanged(boolean state); } public interface Host { |