History log of /frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
97ae20c5d841a244369dba5decaa3ab994cdad33 10-May-2018 Evan Laird <evanlaird@google.com> Allow mobile status bar icon to overflow

With display size set to larest, a wide notch emulated, and battery
percentage showing, it's possible to not be able to fit a single status
icon other than the battery. In this case, the mobile icon needs to
overflow into the etc area.

Some other changes:
- set View.INVISIBLE instead of View.GONE when hiding the mobile view so
that it correctly reports its width on measure
- Don't subtract padding from width when laying out StatusIconContainer

Test: visual
Change-Id: Ic8e73402a3371331dd4c803f3c4559da276ba0a2
Fixes: 78149953
Fixes: 77504032
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
150701d41f6e766b07265798c4dd9b5fc78e02cc 04-May-2018 Evan Laird <evanlaird@google.com> Show up to 8 icons before eliding; fix animations

Show up to 8 (including battery) system icons, and after 8 show 7 icons
and only 1 etc dot

Test: visual
Change-Id: I4c1eeb2bd6afd9d5a1aed3358919f0d29ef2a084
Fixes: 79165032
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
feec2ab2f0fac83b5ac58fd6e5a5c94b06c4ec36 02-May-2018 Evan Laird <evanlaird@google.com> Fix DemoMode icon spacing

- Use the same margin on the left of Wi-Fi (2.5dp)
- DemoMode uses the padding of the view it's replacing, and WRAP_CONTENT
for the width of its children
- Fix DemoMode etc dot color
- Don't constrain number of icons if DemoMode is replacing an
unconstrained container

Test: visual;
adb shell settings put global sysui_demo_allowed 1 && \
adb shell am broadcast -a com.android.systemui.demo -e command clock -e hhmm 0900 && \
adb shell am broadcast -a com.android.systemui.demo -e command network -e wifi show -e level 4 && \
adb shell am broadcast -a com.android.systemui.demo -e command network -e mobile show -e datatype none -e level 4 && \
adb shell am broadcast -a com.android.systemui.demo -e command status -e bluetooth disconnected && \
adb shell am broadcast -a com.android.systemui.demo -e command battery -e level 100 -e plugged false

Change-Id: I1d1389f9c6d6cb7d6078af5bbe4bc21e42771560
Fixes: 79094455
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
20b87bf0ae8c880a76d0de859b3665b7d4f2e144 12-Apr-2018 Evan Laird <evanlaird@google.com> Limit status icons and show etc dots

When <= 5 status icons exist, try to show them all (space permitting).
If > 5 exist, show 4 and etc dots.

Test: visual
Change-Id: I4c09344bee75b3cab6256dd69f11337b9b667b0f
Fixes: 73778753
Fixes: 77660387
Bug: 77822905
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
e1d13c9884e6f4579b1265400b61a36207748dc3 20-Mar-2018 Evan Laird <evanlaird@google.com> Remove SignalClusterView in favor of IconManager

Refactors SignalClusterView into StatusBarSignalPolicy so that it can be
used in a StatusBarIconContainer and solve all of our status bar
problems.

- Remove all uses of SignalClusterView and references to
R.id.signal_cluster. The class still exists it's just unused now

- Add StatusBarIconHolder, which can point to StatusBarIcon,
WifiIconState, or PhoneIconState

- StatusBarIconList.Slot. Allows for easier indexing of icons now that
there can be multiple icons per slot

- Add StatusBarWifiView to be inflated inside of the
StatusBarIconController when needed

- StatusBarMobile view. similar to above

- Upgrade StatusBarIconControllerImpl and StatusBarIconList to
understand the holders and added 2 new methods to specifically handle
wifi / phone state changes

- Create IStatusBarIconView (todo: rename). Abstracts the properties we
want away from StatusBarIconView so that we can use an arbitrary view
type

- NeutralGoodDrawable. Draws a light and a dark icon when needed.

- Fixes a few demo mode bugs: multi sim was broken and also turning off
demo mode was a little broken

TODO: More tests are needed for StatusBarSignalPolicy and maybe the
IconManagers

Test: runtest systemui; visual
Bug: 63772836
Bug: 73778753
Bug: 74985733
Fixes: 74427768
Fixes: 74338687
Fixes: 74388467

Change-Id: I5621b3013cdc9638b61552bd4d7211f211eddf1b
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
264275e85824148d18ba0656de7826ea0e7ab2aa 02-Mar-2018 Evan Laird <evanlaird@google.com> Don't draw behind the display cutout in keyguard

Add layout mode to KeyguardStatusBarView so that it can behave exactly
as it used to when there is no cutout, but have reasonable behavior when
there is.

Test: visual with/without cutout and with/without multi-user switch
Fixes: 72683977
Fixes: 72388285

Change-Id: I72ae5a581dd9d1884ffaf5332f7490d806d319b5
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
937d9fa271eb73dc3e6ef9234d5a1ce3f920e770 08-Feb-2018 Evan Laird <evanlaird@google.com> Fix broken demo mode

Demo mode was relying on the CollapsedStatusBar's icon manager being the
first element of the IconGroup list, and this is no longer true. Also
demo mode used to be a regular LinearLayout but now needs to be a
StatusIconContainer because of notchiness

Fixes: 73897667
Test: enable demo mode; adb shell am broadcast -a "com.android.systemui.demo" -e command status -e alarm show
Change-Id: Ieb84ac2860082e339305160ac135ee5e78c23d7f
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
e0fbc3ef31ba4d3b25a7efa85a2da5bc723b00f6 13-Feb-2018 Evan Laird <evanlaird@google.com> Don't be so chatty, StatusIconContainer

Test: adb logcat -c; adb logcat -d | grep "StatusIconContainer";
Change-Id: I74608756f020009f371e773a6db1282df8f0ce4b
Fixes: 73257460
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
6303613b216dd56a58033b8e00ef718dce1d7e02 02-Feb-2018 Evan Laird <evanlaird@google.com> Fix RTL in StatusIconContainer

Do the same thing that NotificationIconContainer does, instead of the
wrong thing.

Test: set RTL, observe
Change-Id: I034d648795ff565fdb5f804621174e3c1f485bc5
Fixes: 72391234
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java
058c8aee39927bc9f0df35e0274e7aede59d8b56 12-Jan-2018 Evan Laird <evanlaird@google.com> Initial support for camera cutout in CollapsedStatusBar

- Display a space view exactly covering where the display cutout is

- Custom layout for system_icons because this view needs to now layout
right-to-left, and hide icons that don't fit. Similar to notification
icon container but in the other direction. Still needs dots and to limit
the # of icons

- When in landscape/seascape, the cutout space disappears and instead
the status bar insets itself by the same amount that the window is
letterboxed

- Moved battery percent back to the right of the battery because the
time is no longer on that side

Test: adb shell cmd overlay enable
com.android.internal.display.cutout.emulation && adb shell stop && adb
shell start # to start emulation
Bug: 63772836

Change-Id: I8071bfb4983a9d9306df1487cdac956494e80c28
/frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusIconContainer.java