summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarMobileView.java
Commit message (Collapse)AuthorAgeFilesLines
* Merge tag 'android-13.0.0_r35' of ↵George Zacharia2023-04-031-6/+4
|\ | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/base into t13.0 Android 13.0.0 release 35 Change-Id: I709958b2f015d1774b2ece25894467c3a279f93c
| * First pass at setting up a mobile connectivity pipelineEvan Laird2022-10-041-7/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL is pretty WIP, but contains a rough overall structure for monitoring mobile subscriptions, and info for each subscription. Naming is still TBD. The general structure is this: [Repo] MobileSubscriptionRepo monitors the list of subscriptions known to the device via SubscriptionManager, and can vend out a listener for a given subscription ID that can be individually tracked UserSetupRepo just tracks the isUserSetup bit [Domain] MobileInteractor defines the Interactor for the overall mobile feature, and can vend out MobileConnectionInteractors which track the individual subscriptionID from the repo [UI] Currently this is the least fleshed out, but there is a similar pair of MobileConnectivityViewModel and MobileIconViewModel to track the same as above -- the overall state and the states for each subId. Test: adb shell settings put global systemui/tag/SbConnectivity verbose Test: adb logcat | grep SbConnectivity Test: should output: SbConnectivity: Output: subId(1) level: 1 Bug: 240492102 Change-Id: I22d7e9e5b449057a92071ac00bc823460d5f58a6
* | Merge tag 'android-13.0.0_r16' into t13.0George Zacharia2022-12-151-13/+18
|\| | | | | | | | | | | | | | | | | | | | | Android 13.0.0 Release 16 (TQ1A.221205.011) Also included the following reverts: 1. Revert "fw/b: Import Wi-Fi standard icon [1/2]" 2. Revert "Add preference for toggling the wallpaper zooming animation" Co-authored-by: Semavi Ulusoy <doc.divxm@gmail.com> Change-Id: I9a6b51e452c28d10411712c59778bb54da5783e9
| * [SB Refactor] Add an annotation for the visibility states.Caitlin Shkuratov2022-09-261-2/+4
| | | | | | | | | | | | | | | | | | | | Also updates the starting visibility state values to HIDDEN for mobile and wifi. Bug: 238425913 Test: manual: Verified icons still work Test: StatusBarIconViewTest Change-Id: Icd9c2b14f46a148acc2113ac1e20f85924f19e75
| * Create Configuration overrides for MCC/MNC valuesEvan Laird2022-09-011-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SystemUI currently only shows the RAT type indicator for the active network, which may change. At the same time, the Resources system does not track the active mobile network, which means that `context.getResources().getConfiguration()` may return a `Configuration` object with an incorrect MCC/MNC for the current active subscription. This CL creates a `MobileContextProvider` class, which will lazily generate `Context`s with a correctly overridden MCC/MNC, so that resource overlays properly load individual carrier iconography when the active data subscription changes. We also will load each individual mobile icon with the proper context, in case there is ever a need to show the RAT type indicator for multiple subscriptions at once. Lastly, this CL adds a new "mccmnc" arg string to demo mode so that we can easily validate RAT type indicator overlays. Test: atest MobileContextProviderTest Test: use the new `mccmnc` string in sysui demo mode to manually verify Fixes: 240555502 Change-Id: If1f7d31a46f19f335b9545ca33638786a423ba0d
| * Remove remaining references to COMBINED_STATUS_BAR_SIGNAL_FLAGSEvan Laird2022-07-291-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | The previous CL removes all implementationso f the provider model combined iconography + call strength policy from the signal controllers. This CL removes the remaining handful of references fo the flag which could change some of our layouts. Test: atest SystemUITests Test: manual Bug: 238873748 Change-Id: If36675acbea5c2f1f250fd526a0877e2a59fb3f3
* | fw_base: [SQUASH] : revert VoLTE changes before 13-qpr1 mergeSemavi Ulusoy2022-12-101-24/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ** Squashed revert of following commits: 1. Revert "SystemUI: Add support for displaying Volte icon [SQUASH]" This reverts commit 9a56b291579e68a9b9373abbb947cc479226cf16. Change-Id: I36add1a64b4a43a06a38b8fb508764f57fef0bdb 2. Revert "SystemUI: support VoWIFI icons" This reverts commit 1dd522c8d8e0aaca3ca7dca36d94ddf456d15a90. Change-Id: I0a8a22f82a848a7d3e4e6b6d2e85f15b4e95bed2 3. Revert "SystemUI: Introduce dynamic VoLTE & VoWiFi icons" This reverts commit 351a1223f9b0b83cb70ba706abbdb7df07024250. Change-Id: Ib82a099bd0686d1bb64a0577b2f9460c3c608323 4. Revert "SystemUI: Fix issues with VoWiFi icon" This reverts commit fd11324c4dab36e0eda932747c2205ce56374b50. Change-Id: I6c7da1019d502c954140a9131abcc7c29ea27961 5. Revert "SystemUI: Fix QS expand lag when VoLTE/VoWiFi icons are enabled" This reverts commit f554f1dbeec4ef315a7732252929ad968a7caa5d. Change-Id: I78ad639019ee3d399533e258ed27d3774e82a1f2 6. Revert "SystemUI: VoLTE changes" This reverts commit ea5f01c09aeb3c8fedb7f59ac3ce12d9a4c8e7cf. Change-Id: I6f5b12b6a445e12a6bda697a797842fff76c27c4 7. Revert "SystemUI: Remove unnecessary showVoLTEIcon config." This reverts commit e1243d1ec2341b9d984157b7e936fe090e36f491. Change-Id: I5c02d9738a5b9bae3a4e8d04e279286fb1505a24 8. Revert "SystemUI: Use ImsStateCallback instead of FeatureConnector" This reverts commit bd08cc8e1ddf9e03b301bf97e3cfed227994b7be. Change-Id: Id5d483ed39ca0d1b0dba3cdc1c13212a07570098 9. Revert "SystemUI: Use StatusbarSwitch instead TunerSwitch for VoWiFi/VoLTE" This reverts commit bad7b93e79428cf17a91cdac6971437859216457. Change-Id: I9af2cd64ffd329b0a66cca2e52546ae26c6ff8af Change-Id: I33f365d71ca72aff864c6ab079c3fcfc986daf37
* | SystemUI: Introduce dynamic VoLTE & VoWiFi iconsSagarMakhar2022-10-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wave edits: - massive code cleanups, fixes, improvements - add toggle to statusbar tuner @SKULSHADY: Update drawables from OnePlus 8 Pro [cjh1249131356]: Adapt for A12.1 Co-authored-by: Adithya R <gh0strider.2k18.reborn@gmail.com> Co-authored-by: Jyotiraditya Panda <jyotiraditya@aospa.co> Change-Id: Iad808a404bb2c42c2fb2d228644f242ac26647ce Signed-off-by: cjh1249131356 <cjh1249131356@gmail.com>
* | SystemUI: support VoWIFI iconsWeijie Wang2022-10-261-1/+4
| | | | | | | | | | | | | | | | | | Show VoWIFI icon when VoWIFI is available Show VoWIFI call icon when voice call is over WIFI CRs-Fixed: 2689484 Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Change-Id: I5476ed00a2c0b66f8750ac3e4a0f1c329e710e51
* | SystemUI: Add support for displaying Volte icon [SQUASH]Weijie Wang2022-10-261-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Aex edits: - update ImsManager code for S - Port to S Squashed commit of the following: commit a4fdfbdf00e2087a36644532232c380558315c72 Author: Josh Fox (XlxFoXxlX) <joshfox87@gmail.com> Date: Sun Dec 16 06:05:09 2018 -0500 base: Fix padding for VoLTE icon Change-Id: I546ef623d79e648c873354a5b2501e3093a6a729 Signed-off-by: Josh Fox (XlxFoXxlX) <joshfox87@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 4998fc6b3069be8288bcd5192cecbb51263b1ef1 Author: theimpulson <aayushgupta219@gmail.com> Date: Sun Sep 29 06:10:42 2019 +0000 SystemUI: Use VoLTE icon from v6.x Signed-off-by: theimpulson <aayushgupta219@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 3588c1360cf86c2e2d70b02df079b33a6959b287 Author: Steven Laver <lavers@google.com> Date: Tue Feb 18 12:56:05 2020 -0800 MobileSignalController fix corresponding to upstream FeatureConnector change FeatureConnector was changed upstream, in platform/frameworks/opt/net/ims:c514e52ea6b0c89ae8f5e2ab8666585ed815900a%5E%21/#F0. Adjust code in MobileSignalController to match. Change-Id: Ie21bf189b70e4e16eb9f31e8b85eb6bc0c9f5f20 Signed-off-by: DennySPb <dennyspb@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 914b01376f73e92ca61148e40623779cef044dad Author: Daniel Norman <danielnorman@google.com> Date: Fri Nov 1 15:59:48 2019 -0700 ImsManager.Connector became FeatureConnector. See https://r.android.com/1132314 Bug: 144056746 Change-Id: I63ac8620390963583bedbd1bcd469890bdb0883a Signed-off-by: DennySPb <dennyspb@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 8b709b6908142e8bfaaee5a0a3a82e05591c77de Author: Weijie Wang <weijiew@codeaurora.org> Date: Thu Apr 25 14:09:40 2019 +0800 SystemUI: Enhancement for volte icon SystemUI uses callback to get ims capabilities and then check whether ims is registered. If low layer updates ims registered later than capabilities, SystemUI wil miss the ims registered value. In this case, SystemUI monitors both ims capabilities and registered. Change-Id: I87400dd4a726e17d31b2b4627e45456e1a44d289 CRs-Fixed: 2436991 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 805030dc108414c4949803ee4a453e9a22c09cde Author: Qimeng Pan <qimengp@codeaurora.org> Date: Fri Dec 14 13:42:28 2018 +0800 SystemUI: Query IMS state after CapabilityCallback is regisered Query IMS state after CapabilityCallback is regisered CRs-Fixed: 2364714 Change-Id: I9a527840ab14844f683a5a86602b54ce787581f4 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 3baf7d54174c1a820a8a894314d767cad1dcbdb9 Author: Weijie Wang <weijiew@codeaurora.org> Date: Wed Oct 17 16:46:28 2018 +0800 SystemUI: Fix HD icon missing When SIM is changed to OOS, IMS Connection is closed and all the active callbacks are removed, so SystemUI can not get the IMS registration messages after that. Replace ImsRegistrationImplBase.Callback with ImsFeature.CapabilityCallback, Register the callback when IMS connection is available. Change-Id: Ic4a8a39659413d40fc280f27fa734984f3fc1499 CRs-Fixed: 2334601 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit c9633c59b06032950d9dc7e7549e5d1f1e9ecbfc Author: Bill Peckham <bpeckham@google.com> Date: Fri Nov 2 16:46:03 2018 -0700 Adapt to IMS registration changes. The upstream change https://keystone-qcom.googlesource.com/platform/frameworks/base/+/941c0a5cfd5cdfe8a19c2928486fab9efa489ada modified the class to use when registering with ImsManager from android.telephony.ims.stub.ImsRegistrationImplBase.Callback to android.telephony.ims.ImsMmTelManager.RegistrationCallback. This keystone change adapts a Qualcomm addition to the upstream change. Change-Id: Ib93bb72797d5f87d35acd16156fc2aa2a073df4a Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit e4857ae2061def850678b4fe84ed8e03a741580e Author: Adarsh-MR <adarshmr1998@gmail.com> Date: Fri Oct 19 11:51:38 2018 +0000 Fix VOLTE icon color on Light statusbar Change-Id: I96803c61311e8fafe8a395c0afe03c9a33d07feb Signed-off-by: Adarsh-MR <adarshmr1998@gmail.com> Signed-off-by: Josh Fox (XlxFoXxlX) <joshfox87@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit 5813a78294723920e99daf346b08dc1b3959073a Author: Weijie Wang <weijiew@codeaurora.org> Date: Tue Sep 11 18:02:21 2018 +0800 SystemUI: Refactor the feature of volte icon 1. Move volte state to MobileState 2. Notify UI to update only when it is necessary Change-Id: I80572f7db7a3839b7261dceb625b358039799959 CRs-Fixed: 2318167 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit fa0a411cfbcc147fc781df59e1a4110adc94c2fb Author: Weijie Wang <weijiew@codeaurora.org> Date: Tue Aug 28 14:51:58 2018 +0800 SystemUI: Fix volte icon doesn't update in real time SystemUI will clean and reinitialize the subscripiton state when active subscripitons are chagned, but telephony doesn't report the ims registration state if it is not chagned. When two sims are both registered on ims, hotswap sim1. In this case, the volte icon of sim2 will not be updated in time Now we query the ims registration state first when reinitialize the subscripiton state; we also query the ims registration state when receiveing ImsRegistrationImplBase.Callback Change-Id: Ie12ca7c1e82eb2dcae933d5fb8c93937c5e1a050 CRs-Fixed: 2304136 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> commit a8b9599ca985ec1c52c5127901b5a486cf5fd71f Author: Weijie Wang <weijiew@codeaurora.org> Date: Fri Jun 29 17:54:25 2018 +0800 SystemUI: Add new configuration for displaying Volte icon Add new configuration for displaying Volte icon Delete some unused code Change-Id: Idd583ed807b2daad794598c17496bbc99b81a00d CRs-Fixed: 2284782 Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> Signed-off-by: SagarMakhar <sagarmakhar@gmail.com> Signed-off-by: Pranav Vashi <neobuddy89@gmail.com> Change-Id: Ic5ecc134afb77319639dba7557df295980884ce1
* | SystemUI: improve mobile data style switch logicjhonboy1212022-10-261-11/+11
| | | | | | | | | | | | | | | | | | | | | | * adapted to A12 L * ditch TunerService and use ContentObserver * added setting key to backup array * move settings observer to StatusBarIconControllerImpl class * set style when an icon manager is added and update it whenever settings changes, this way we don't update all icons whenever addMobileIcon is called Signed-off-by: jhonboy121 <alfredmathew05@gmail.com> Change-Id: I9f8cadd5fb7926b53e661ca0715574b595f30e10
* | SystemUI: old style mobile data indicators [1/2]maxwen2022-10-261-7/+118
|/ | | | | neobuddy89: Use Tuner API. Change-Id: I492c4007272037983f0da5fd9e972c2784fc19fa
* Merge "SystemUI: Fix signal bar icon overlay issue" am: ad9993d551 am: ↵Evan Laird2022-03-161-1/+1
|\ | | | | | | | | | | | | | | b38d7f3d06 am: 6fb94e506b Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2008755 Change-Id: I9cb6e04b0ff8edeae3cedd06d4e1592a472b53bd
| * SystemUI: Fix signal bar icon overlay issueWeijie Wang2022-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | If the signal bar visible state is STATE_DOT, it should be shown a dot instead of signal bar icons. But the signal bar icon will be shown again if the mobile state changed, and then, the dot and signal bar icon are both shown. So don't update signal bar visibility if the state is not STATE_ICON Bugs: 200915946 Test: Manual Change-Id: I7fb04049790f112441511462d3f2963aed42c790
| * Revert systemui status bar provider model behaviorEvan Laird2021-07-011-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This CL reverts the status bar provider model behavior. It removes the logic to show only one icon at a time, and removes showing the call strength indicators. This change keeps the Internet tile, and decouples SystemUI from the system setting SETTING_PROVIDER_MODEL. Bug: 191903788 Test: atest SystemUITests SystemUIGoogleTests; manual Test: test with a SIM and a Wi-Fi connection and there should be both icons in the status bar and quick settings with this change. As well as the Internet tile should stay (rather than going back to the Cell and Wi-Fi tiles). Change-Id: I017c10e4d7c1b15b152c44d092695dbc77e4a0ec Merged-In: I017c10e4d7c1b15b152c44d092695dbc77e4a0ec
* | Support multiple dark tint areas in status barWinson Chung2022-02-101-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | - With ag/16678942 the system will now compute multiple appearance regions for all windows under the status bar, so we need to handle scenarios where multiple apps can create multiple dark tint areas Bug: 208717544 Test: atest SystemUITests:LightBarControllerTest Test: Install MultiAppeareanceRegionTest apk from b/208717544 and verify that that the multiple dark areas work in multiwindow Change-Id: I0d8696f6b2fb7793ccbdcbfe7e2520fceb24e5ec
* | Revert systemui status bar provider model behaviorEvan Laird2021-07-011-5/+13
|/ | | | | | | | | | | | | | | | | This CL reverts the status bar provider model behavior. It removes the logic to show only one icon at a time, and removes showing the call strength indicators. This change keeps the Internet tile, and decouples SystemUI from the system setting SETTING_PROVIDER_MODEL. Bug: 191903788 Test: atest SystemUITests SystemUIGoogleTests; manual Test: test with a SIM and a Wi-Fi connection and there should be both icons in the status bar and quick settings with this change. As well as the Internet tile should stay (rather than going back to the Cell and Wi-Fi tiles). Change-Id: I017c10e4d7c1b15b152c44d092695dbc77e4a0ec
* Implement new QQS/QS headersFabian Kozynski2021-03-241-4/+23
| | | | | | | | | | | | | These new headers replace the old ones in all builds. Missing: * Improve animation of disappearing signal view * Improve animation of moving header in devices with corner cutouts * Design guidelines Test: manual with and without overlay Fixes: 182469533 Change-Id: Id31b11a2b50dd97e112caf6166574e44d4f7eda4
* Fix signal color in dark modeFabian Kozynski2021-02-171-6/+1
| | | | | | Test: manual Fixes: 180521630 Change-Id: I8021f078382bd1b6513091f4a4b59832629b09db
* Show standalone icon R for roaming indicationyinxu2021-01-271-4/+10
| | | | | | | | | clean cherry pick from https://googleplex-android-review.git.corp.google.com/c/platform/frameworks/base/+/13377028 Bug: 175421071 Test: Manual Tests Change-Id: I59e3a03eedfe5d76e0d33657d17ed70b7c0abd27
* Color/tint the wifi/mobile status bar icons correctlyEdward Savage-Jones2019-10-301-4/+2
| | | | | | | | | | When in split screen the Wifi and mobile status bar can sometimes end up in a state where they are tinted dark when they should be light and vice versa. This fixes that issue. Bug: 142921186 Test: Manual - see buganizer Change-Id: I2ac11db8048de1b2fb225d561ec34fda5000e3fe
* Fix StatusBarMobileView to use correct shadeFabian Kozynski2019-05-221-2/+2
| | | | | | | | | | | As SignalDrawable now uses a single color to draw, it should get DualToneHandler#getSingleColor passed to it. Test: manual on QS Header and launcher (white background). The shade of gray matches the other icons. Fixes: 133258347 Change-Id: Id9e324623d0e82753b1a31a7908df9399e75c827
* Update SignalDrawable.Amin Shaikh2019-05-031-4/+4
| | | | | | | | | | | | | | | | | | - Change SignalDrawable to render an SVG for the entire signal icon and only draw by hand the X and the carrier change animation - Changed carrier change animation to display a single dot at a time instead of cutting out the entire row - Removed unneeded methods due to single tone mobile signal icon - Remove unused airplane mode state - Remove unused CellTileView - Add demo mode command inflate to inflate signal strengths - Add GM2 cell signal drawables to the framework for 0-4 and 0-5 bars TODO: should empty state be the same as 0 bar state? Bug: 124107387 Test: visual Change-Id: Ib5a0c3d89d35c1e21efb67e526c508aab100f2a0
* Fix colors in QS HeaderFabian Kozynski2019-04-251-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes icon and text colors in QS Header to be darker in Light mode. Also, makes sure that all colors in the icons match. Does this by implementing the following: * A new theme that overrides darkIconTheme in Theme.SystemUI by one with darker colors. * QuickStatusBarHeader applies that theme and passes is onto its children, in particular StatusIconContainer/StatusBarMobileView and BatteryMeterView. * StatusBarMobileView and BatteryMeterView retrieve the colors from the theme and apply them accordingly. * Also applies to QSCarrierGroup * Additionally, the single color is used for the other icons. Also invalidates SignalDrawable after setColors is called if at least one of the colors changed. This is a real issue. For more info: * Text and icons set to 70% black on light mode, white in dark mode. * Dual tone set for background overlaid with fill match single tone. Test: visual Fixes: 124466915 Change-Id: Ia6cb28fca90a07c8936726334502e7accf534df6
* Make DarkIconDispatcher visible to pluginsBeverly2019-01-021-3/+3
| | | | | | Test: manual Bug: 115322193 Change-Id: I6204d771e476c504e9070ebc88dd8fd44b268635
* Fixes import ordering.Gus Prevas2018-11-141-3/+1
| | | | | Test: n/a Change-Id: I432e11b52deb7974e50f62076af3b7aa07e364b6
* Request layout if visiblity (thus, size) changesEvan Laird2018-06-251-10/+20
| | | | | | | | | | | | | | When wifi or mobile icons update state, they sometimes decide to show / hide themselves or subviews. When this happens, they need to call requestLayout() so that StatusIconContainer puts them in the right spot. Also always center the wifi/mobile icons. Bug: 110286625 Test: enter demo mode, show wifi and lte, hide lte, show lte -> there should be no overlapping Change-Id: Iad49783ac119d9994f4378f5b98f1a5b18f80c5d
* Fix status icon animationsEvan Laird2018-06-211-1/+1
| | | | | | | | | | | | | | | Hidden -> icon: animate alpha Icon -> hidden: disappear Other transitions: animate translation, size, alpha (whichever is changing) When visibility is not changing, but translation is, animate translationX so icons don't jump around. Now there shouldn't be any jumping and icons won't fly in from the left sometimes. Test: visual Change-Id: I2bc192959e950b0887dc0b38f669ca36cff3a732 Fixes: 109869537
* Wi-Fi, now corporeal!Evan Laird2018-06-041-1/+2
| | | | | | | | | | | | Given a state where the Wi-Fi icon could overflow (i.e. on the lock screen with mobile data and other icons showing: Killing the sysui process could cause the whole wifi icon to become hidden, and it never was unhidden. Test: With the overflow space in use, `adb shell kill $(pid com.android.systemui)` Change-Id: I026923b3dae16b9afa1a5acc3bd88887816a6391 Fixes: 80577291
* Override getDrawingRect for wifi and mobile viewsEvan Laird2018-05-211-0/+11
| | | | | | | | Fixes the ordering that gets generated for accessibility traversal Test: visual with TalkBack on Change-Id: Ib50dad448aaf2b9ed0fa90d12f6394db7fac3252 Fixes: 79722445
* Allow mobile status bar icon to overflowEvan Laird2018-05-101-17/+60
| | | | | | | | | | | | | | | | | 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
* Show up to 8 icons before eliding; fix animationsEvan Laird2018-05-071-0/+5
| | | | | | | | | 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
* Always copy SignalIconState when keeping a referenceEvan Laird2018-04-251-2/+2
| | | | | | | | | | | | | | | | | Defensively copy SignalIconState so that StatusBarWifiView and StatusBarMobileView can properly detect changes to state. Also don't do visibility changes if setting the same visibleState on StatusBarWifiView. Test: turn wifi on and off; verify that it goes away properly in status bar Fixes: 78353558 Fixes: 77738471 Fixes: 78050495 Fixes: 78163313 Change-Id: Ie9b9e05885c130c1ec6d6abb9d0567400df23e52
* Limit status icons and show etc dotsEvan Laird2018-04-121-0/+10
| | | | | | | | | | | 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
* Don't hide the mobile type id if it doesn't changeEvan Laird2018-04-051-6/+8
| | | | | | | | | | | | | | _Someone_ thought it would be a good idea to hide the mobile type indicator if it hadn't changed from the last state. Better to not do that. Also removed an unused method in StatusBarIconControllerImpl. Test: Reboot device with wifi off; data type indicator should show up eventually; i.e., visual Fixes: 77581445 Change-Id: I47a0c868b0e332c11e206b8c043a532bcbf10130
* Fix icon tinting when in split screenEvan Laird2018-04-031-0/+4
| | | | | | | | | | | NotificationIconAreaController, StatusBarWifiView, StatusBarMobileView all now respect the tintArea when `onDarkChanged` gets called Test: visual; Split screen, chrome on top and settings on bottom, no icons should be dark. Change-Id: I7aa8f3383da3855e8ceab702539fce71edaa6af2 Fixes: 77494939
* Remove SignalClusterView in favor of IconManagerEvan Laird2018-03-301-0/+207
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