Skip to content

Commit ed1395f

Browse files
author
Winson Chung
committed
Updating Wifi/Mobile tiles to reflect actual connection state with new assets.
Change-Id: Ic1cd78c77f94f1c9cf9bbc1bcea3082ca536d94c
1 parent 35f3a22 commit ed1395f

File tree

6 files changed

+85
-26
lines changed

6 files changed

+85
-26
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<!--
3+
/*
4+
** Copyright 2012, The Android Open Source Project
5+
**
6+
** Licensed under the Apache License, Version 2.0 (the "License");
7+
** you may not use this file except in compliance with the License.
8+
** You may obtain a copy of the License at
9+
**
10+
** http://www.apache.org/licenses/LICENSE-2.0
11+
**
12+
** Unless required by applicable law or agreed to in writing, software
13+
** distributed under the License is distributed on an "AS IS" BASIS,
14+
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
** See the License for the specific language governing permissions and
16+
** limitations under the License.
17+
*/
18+
-->
19+
20+
<!-- These resources are around just to allow their values to be customized
21+
for different hardware and product builds. -->
22+
<resources>
23+
<!-- The number of columns in the QuickSettings -->
24+
<integer name="quick_settings_num_columns">3</integer>
25+
26+
<!-- The number of columns that the top level tiles span in the QuickSettings -->
27+
<integer name="quick_settings_user_time_settings_tile_span">1</integer>
28+
</resources>

packages/SystemUI/res/values/styles.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,8 +74,8 @@
7474
<style name="TextAppearance.QuickSettings" />
7575

7676
<style name="TextAppearance.QuickSettings.TileView">
77-
<item name="android:paddingLeft">4dp</item>
78-
<item name="android:paddingRight">4dp</item>
77+
<item name="android:paddingLeft">6dp</item>
78+
<item name="android:paddingRight">6dp</item>
7979
<item name="android:paddingBottom">2dp</item>
8080
<item name="android:drawablePadding">12dp</item>
8181
<item name="android:textSize">12dp</item>

packages/SystemUI/src/com/android/systemui/statusbar/phone/QuickSettingsModel.java

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -228,17 +228,15 @@ void addWifiTile(QuickSettingsTileView view, RefreshCallback cb) {
228228
}
229229
// NetworkSignalChanged callback
230230
@Override
231-
public void onWifiSignalChanged(boolean enabled, String description) {
231+
public void onWifiSignalChanged(boolean enabled, int wifiSignalIconId, String enabledDesc) {
232232
// TODO: If view is in awaiting state, disable
233233
Resources r = mContext.getResources();
234-
// TODO: Check if wifi is enabled
235-
mWifiState.enabled = enabled;
236-
mWifiState.iconId = (enabled ?
237-
R.drawable.ic_qs_wifi_4 :
238-
R.drawable.ic_qs_wifi_not_connected);
239-
mWifiState.label = (enabled ?
240-
description :
241-
r.getString(R.string.quick_settings_wifi_no_network));
234+
mWifiState.iconId = enabled && (wifiSignalIconId > 0)
235+
? wifiSignalIconId
236+
: R.drawable.ic_qs_wifi_no_network;
237+
mWifiState.label = enabled
238+
? enabledDesc
239+
: r.getString(R.string.quick_settings_wifi_no_network);
242240
mWifiCallback.refreshView(mWifiTile, mWifiState);
243241
}
244242

@@ -254,18 +252,17 @@ boolean deviceSupportsTelephony() {
254252
}
255253
// NetworkSignalChanged callback
256254
@Override
257-
public void onMobileDataSignalChanged(boolean enabled, String description) {
255+
public void onMobileDataSignalChanged(boolean enabled, int mobileSignalIconId,
256+
String enabledDesc) {
258257
if (deviceSupportsTelephony()) {
259258
// TODO: If view is in awaiting state, disable
260259
Resources r = mContext.getResources();
261-
// TODO: Check if RSSI is enabled
262-
mRSSIState.enabled = enabled;
263-
mRSSIState.iconId = (enabled ?
264-
R.drawable.ic_qs_signal_4 :
265-
R.drawable.ic_qs_signal_0);
266-
mRSSIState.label = (enabled ?
267-
description :
268-
r.getString(R.string.quick_settings_rssi_emergency_only));
260+
mRSSIState.iconId = enabled && (mobileSignalIconId > 0)
261+
? mobileSignalIconId
262+
: R.drawable.ic_qs_signal_no_signal;
263+
mRSSIState.label = enabled
264+
? enabledDesc
265+
: r.getString(R.string.quick_settings_rssi_emergency_only);
269266
mRSSICallback.refreshView(mRSSITile, mRSSIState);
270267
}
271268
}

packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,7 @@ public class NetworkController extends BroadcastReceiver {
8181
String mNetworkNameDefault;
8282
String mNetworkNameSeparator;
8383
int mPhoneSignalIconId;
84+
int mQSPhoneSignalIconId;
8485
int mDataDirectionIconId; // data + data direction on phones
8586
int mDataSignalIconId;
8687
int mDataTypeIconId;
@@ -105,6 +106,7 @@ public class NetworkController extends BroadcastReceiver {
105106
int mWifiRssi, mWifiLevel;
106107
String mWifiSsid;
107108
int mWifiIconId = 0;
109+
int mQSWifiIconId = 0;
108110
int mWifiActivityIconId = 0; // overlay arrows for wifi direction
109111
int mWifiActivity = WifiManager.DATA_ACTIVITY_NONE;
110112

@@ -175,8 +177,8 @@ void setMobileDataIndicators(boolean visible, int strengthIcon, int activityIcon
175177
}
176178

177179
public interface NetworkSignalChangedCallback {
178-
void onWifiSignalChanged(boolean enabled, String description);
179-
void onMobileDataSignalChanged(boolean enabled, String description);
180+
void onWifiSignalChanged(boolean enabled, int wifiSignalIconId, String description);
181+
void onMobileDataSignalChanged(boolean enabled, int mobileSignalIconId, String description);
180182
void onAirplaneModeChanged(boolean enabled);
181183
}
182184

@@ -347,17 +349,18 @@ void notifySignalsChangedCallbacks(NetworkSignalChangedCallback cb) {
347349
boolean wifiEnabled = mWifiEnabled && (mWifiConnected || !mHasMobileDataFeature);
348350
String wifiDesc = wifiEnabled ?
349351
mWifiSsid : null;
350-
cb.onWifiSignalChanged(wifiEnabled, wifiDesc);
352+
cb.onWifiSignalChanged(wifiEnabled, mQSWifiIconId, wifiDesc);
351353

352354
if (isEmergencyOnly()) {
353-
cb.onMobileDataSignalChanged(false, null);
355+
cb.onMobileDataSignalChanged(false, mQSPhoneSignalIconId, null);
354356
} else {
355357
if (mIsWimaxEnabled && mWimaxConnected) {
356358
// wimax is special
357-
cb.onMobileDataSignalChanged(true, mNetworkName);
359+
cb.onMobileDataSignalChanged(true, mQSPhoneSignalIconId, mNetworkName);
358360
} else {
359361
// normal mobile data
360-
cb.onMobileDataSignalChanged(mHasMobileDataFeature, mNetworkName);
362+
cb.onMobileDataSignalChanged(mHasMobileDataFeature, mQSPhoneSignalIconId,
363+
mNetworkName);
361364
}
362365
}
363366
cb.onAirplaneModeChanged(mAirplaneMode);
@@ -517,11 +520,13 @@ private final void updateTelephonySignalStrength() {
517520
if (!hasService()) {
518521
if (CHATTY) Slog.d(TAG, "updateTelephonySignalStrength: !hasService()");
519522
mPhoneSignalIconId = R.drawable.stat_sys_signal_null;
523+
mQSPhoneSignalIconId = R.drawable.ic_qs_signal_no_signal;
520524
mDataSignalIconId = R.drawable.stat_sys_signal_null;
521525
} else {
522526
if (mSignalStrength == null) {
523527
if (CHATTY) Slog.d(TAG, "updateTelephonySignalStrength: mSignalStrength == null");
524528
mPhoneSignalIconId = R.drawable.stat_sys_signal_null;
529+
mQSPhoneSignalIconId = R.drawable.ic_qs_signal_no_signal;
525530
mDataSignalIconId = R.drawable.stat_sys_signal_null;
526531
mContentDescriptionPhoneSignal = mContext.getString(
527532
AccessibilityContentDescriptions.PHONE_SIGNAL_STRENGTH[0]);
@@ -552,6 +557,7 @@ private final void updateTelephonySignalStrength() {
552557
}
553558
}
554559
mPhoneSignalIconId = iconList[iconLevel];
560+
mQSPhoneSignalIconId = TelephonyIcons.QS_TELEPHONY_SIGNAL_STRENGTH[iconLevel];
555561
mContentDescriptionPhoneSignal = mContext.getString(
556562
AccessibilityContentDescriptions.PHONE_SIGNAL_STRENGTH[iconLevel]);
557563
mDataSignalIconId = TelephonyIcons.DATA_SIGNAL_STRENGTH[mInetCondition][iconLevel];
@@ -844,13 +850,16 @@ private void updateWifiState(Intent intent) {
844850
private void updateWifiIcons() {
845851
if (mWifiConnected) {
846852
mWifiIconId = WifiIcons.WIFI_SIGNAL_STRENGTH[mInetCondition][mWifiLevel];
853+
mQSWifiIconId = WifiIcons.QS_WIFI_SIGNAL_STRENGTH[mWifiLevel];
847854
mContentDescriptionWifi = mContext.getString(
848855
AccessibilityContentDescriptions.WIFI_CONNECTION_STRENGTH[mWifiLevel]);
849856
} else {
850857
if (mDataAndWifiStacked) {
851858
mWifiIconId = 0;
859+
mQSWifiIconId = 0;
852860
} else {
853861
mWifiIconId = mWifiEnabled ? R.drawable.stat_sys_wifi_signal_null : 0;
862+
mQSWifiIconId = mWifiEnabled ? R.drawable.ic_qs_wifi_no_network : 0;
854863
}
855864
mContentDescriptionWifi = mContext.getString(R.string.accessibility_no_wifi);
856865
}
@@ -975,6 +984,7 @@ void refreshViews() {
975984

976985
if (!mHasMobileDataFeature) {
977986
mDataSignalIconId = mPhoneSignalIconId = 0;
987+
mQSPhoneSignalIconId = 0;
978988
mobileLabel = "";
979989
} else {
980990
// We want to show the carrier name if in service and either:
@@ -1086,6 +1096,7 @@ void refreshViews() {
10861096
R.string.accessibility_airplane_mode);
10871097
mAirplaneIconId = R.drawable.stat_sys_signal_flightmode;
10881098
mPhoneSignalIconId = mDataSignalIconId = mDataTypeIconId = 0;
1099+
mQSPhoneSignalIconId = 0;
10891100

10901101
// combined values from connected wifi take precedence over airplane mode
10911102
if (mWifiConnected) {
@@ -1140,10 +1151,12 @@ else if (!mDataConnected && !mWifiConnected && !mBluetoothTethered && !mWimaxCon
11401151
+ " mAirplaneMode=" + mAirplaneMode
11411152
+ " mDataActivity=" + mDataActivity
11421153
+ " mPhoneSignalIconId=0x" + Integer.toHexString(mPhoneSignalIconId)
1154+
+ " mQSPhoneSignalIconId=0x" + Integer.toHexString(mQSPhoneSignalIconId)
11431155
+ " mDataDirectionIconId=0x" + Integer.toHexString(mDataDirectionIconId)
11441156
+ " mDataSignalIconId=0x" + Integer.toHexString(mDataSignalIconId)
11451157
+ " mDataTypeIconId=0x" + Integer.toHexString(mDataTypeIconId)
11461158
+ " mWifiIconId=0x" + Integer.toHexString(mWifiIconId)
1159+
+ " mQSWifiIconId=0x" + Integer.toHexString(mQSWifiIconId)
11471160
+ " mBluetoothTetherIconId=0x" + Integer.toHexString(mBluetoothTetherIconId));
11481161
}
11491162

@@ -1357,6 +1370,9 @@ public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
13571370
pw.print(" mPhoneSignalIconId=0x");
13581371
pw.print(Integer.toHexString(mPhoneSignalIconId));
13591372
pw.print("/");
1373+
pw.print(" mQSPhoneSignalIconId=0x");
1374+
pw.print(Integer.toHexString(mQSPhoneSignalIconId));
1375+
pw.print("/");
13601376
pw.println(getResourceName(mPhoneSignalIconId));
13611377
pw.print(" mDataDirectionIconId=");
13621378
pw.print(Integer.toHexString(mDataDirectionIconId));
@@ -1384,6 +1400,8 @@ public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
13841400
pw.println(mWifiSsid);
13851401
pw.println(String.format(" mWifiIconId=0x%08x/%s",
13861402
mWifiIconId, getResourceName(mWifiIconId)));
1403+
pw.println(String.format(" mQSWifiIconId=0x%08x/%s",
1404+
mQSWifiIconId, getResourceName(mQSWifiIconId)));
13871405
pw.print(" mWifiActivity=");
13881406
pw.println(mWifiActivity);
13891407

packages/SystemUI/src/com/android/systemui/statusbar/policy/TelephonyIcons.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,14 @@ class TelephonyIcons {
3535
R.drawable.stat_sys_signal_4_fully }
3636
};
3737

38+
static final int[] QS_TELEPHONY_SIGNAL_STRENGTH = {
39+
R.drawable.ic_qs_signal_0,
40+
R.drawable.ic_qs_signal_1,
41+
R.drawable.ic_qs_signal_2,
42+
R.drawable.ic_qs_signal_3,
43+
R.drawable.ic_qs_signal_4
44+
};
45+
3846
static final int[][] TELEPHONY_SIGNAL_STRENGTH_ROAMING = {
3947
{ R.drawable.stat_sys_signal_0,
4048
R.drawable.stat_sys_signal_1,

packages/SystemUI/src/com/android/systemui/statusbar/policy/WifiIcons.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,13 @@ class WifiIcons {
3232
R.drawable.stat_sys_wifi_signal_4_fully }
3333
};
3434

35+
static final int[] QS_WIFI_SIGNAL_STRENGTH = {
36+
R.drawable.ic_qs_wifi_not_connected,
37+
R.drawable.ic_qs_wifi_1,
38+
R.drawable.ic_qs_wifi_2,
39+
R.drawable.ic_qs_wifi_3,
40+
R.drawable.ic_qs_wifi_4
41+
};
42+
3543
static final int WIFI_LEVEL_COUNT = WIFI_SIGNAL_STRENGTH[0].length;
3644
}

0 commit comments

Comments
 (0)