- also fix the issue of dynamic tile icon is being cached and not
updated properly.
Change-Id: I9289260340c1cddc4123fda88c366d658a11ddfc
Fixes: 74255242
Test: visual
When a setting is injected to homepage, we now allow the setting
provider customize the background color for its icon.
If no custom bg color is provided, we fallback to existing behavior.
This behavior is only needed in homepage, because we don't have any
tinting logic in other pages so external setting providers can just
provide arbitrary icon.
Bug: 77188317
Test: robotests
Change-Id: I7d4b512fafc28537de46192026ce4bbe51b498c4
Night Light suggestion will now show even if the user is using Night
Light in manual mode. If the user has previously tapped or dismissed the
suggestion, the suggestion will not show again.
Bug: 68938869
Test: make ROBOTEST_FILTER=\
"(NightDisplayPreferenceControllerTest|SuggestionFeatureProviderImplTest)" \
RunSettingsRoboTests
Change-Id: Iea838df043d75dfa73a1a383275dc42956374113
- Updated condition interface to use Drawable instead of Icon for icons.
- Converted all conditions to return drawable instead of Icon.
- Created a BatterySaverDrawable to draw a static battery saver icon.
Change-Id: Ie964f3439009c7658603a8ff352a05e964a0a795
Fixes: 76168403
Test: robotests
- check whether the receiver is registered before trying to unregister
it.
Change-Id: Ia949f5a90b8866f01684dc2c7797e87d8dc7804e
Fixes: 74073233
Test: make RunSettingsRoboTests
- added the shadow class for CardView to fix the not implemented error.
Change-Id: I17a53f804310ffb3330c1cd3ca11943cf91335a6
Fixes: 74446970
Test: make RunSettingsRoboTests
- other changes might have caused this test to start failing. Need more
time to investigate or properly fix the tests. Since they are blocking
presubmit right now, will ignore the tests first and provide fix
later.
Bug: 74444815
Test: make RunSettingsRoboTests
Change-Id: I985abe74c64a562fb117b91056a23895181897bd
- set minHeight instead of using a fix height, so that when the
font/display size is set to larger, the height will expand accordingly
to fit all elements in the suggestion card.
- revert the change that tint all suggestion icons. The previous logic
should be used to determine if we should tint the icon or not.
Change-Id: I2451490130cee216ff65301a600eb91d2e65c321
Fixes: 74261827
Test: visual and make RunSettingsRoboTests
On homepage, if an icon is already wrapped in RoundedHomepageIcon, we
shouldn't wrap it more. Otherwise each time we do this it will add a few
dp padding around the bitmap.
Change-Id: I5313a38f4bd128272d7b4e05209aaee72c690c55
Fixes: 73295342
Test: robotest
- using sublist of the original suggestions list may results in
ConcurrentModificationException if the originaly list is being modified.
Create a new list instead to avoid running into the issue.
Change-Id: Ia83a0432be542eeb428d177f6118d26fc2262e93
Fixes: 74194336
Test: run monkey
This allows Settings to test against the latest framework changes.
Also replaced TestConfig with traditional robolectric.properties.
Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
- since we now either have 1 or 2 suggestions, putting most layout
configuration in the xml instead of dynamically setting it in code.
- remove the suggestion header
- vertical center align the suggestion title text for 2 cards to make
the card with single line looks better.
- tint all suggestions icons.
Change-Id: I0130f15d530264e164e5afd7c091f165a4a6adc2
Fixes: 70573674
Fixes: 73293989
Fixes: 64986736
Test: visual and make RunSettingsRoboTests
After introducing the new data usage UI behind a feature flag a bug was
introduced that causes the data saver suggestion to throw an exception
from a missing class reference in "legacy" mode.
Bug: 73648306
Test: manual
Change-Id: I4fcd2bd0f55931f40738266dca94a55fea5087b3
getPreferenceControllers() -> createPreferenceControllers() for the same
reason as in ag/3647936
Bug: 73668763
Test: robotests
Change-Id: I97670a91a2a38d1c844d1b9d37f4222c5e6f45a0
To getPreferenceControllers. "all" is redundant. Then internally, the
old getPreferenceControllers() is renamed to
createPreferenceControllers() to emphasize the controllers are created
from code (versus the ones created from xml).
Bug: 73668763
Test: robotest
Change-Id: Ifec46aefdc2a418031c8e152028b30bdcd396fc7
- If a <preference> tag also defines a controller, we will try to
instantiate it before displaying the UI. The same logic is shared by
BaseSearchIndexProvider so it also drives search suppression.
- If user also defines a list of controllers programatically, the
programatically created ones takes precedence.
Bug: 73668763
Test: WIP
Change-Id: I7aecec270bcd3af261e012ef1f6995d2a523cfa1
- instead of using hard-coded width for 1 or 2 cards, they should take
up the whole screen width minus the defined padding, so that when the
device is in landscape mode, they look better.
Change-Id: Ic6485c858c7742a154a6d9b05fff180f161be323
Fixes: 72850225
Test: make RunSettingsRoboTests
If there's no suggestion, we should set the category to the adapter
before returning.
Bug: none
Test: robotests
Change-Id: I73bb248d17edb3c398a9fb0a8f3913e7233fcc0b
- reduce space above and below the suggestion header
- reduce space around the suggestion cardview
- set the font family for the suggestion header and title.
Change-Id: Ief6247005f1e69fe5025af60f3c9627d357d94a4
Fixes: 72710227
Test: visual
- instead of checking the icon resource package, check the icon tintable
flag to see if we should tint the suggestion icon.
Bug: 72330968
Test: make RunSettingsRoboTests
Change-Id: I4767df05bebf815774dbd8e528c7ac0f5b902d44
- remove the check for feature flag for suggestion UI v2 and switch to
use the v2 codes.
- remove all code related to v1 of suggestion UI
Fixes: 70573674
Test: make RunSettingsRoboTests
Change-Id: I99ab318c1c0192508a9c5e9e708e86319120d55b
- adjust suggestion card width and padding
- tint icon if it is from settings package.
Bug: 72330968
Test: visual
Change-Id: I4b82d51b3013ad0656d297305e0000958b71e94d
- add handling to the suggestion card to dismiss the suggestion when
the close button is clicked.
Bug: 70573674
Test: make RunSettingsRoboTests
Change-Id: I8155efc326242abde753a633009e2579a9b3aa9b
If a homepage tile is injected from external packages, we can't
control what their icons look like, so we put a generic blue circular
background to make it consistent with the other icons.
Change-Id: I2a935db37fff097ae15540262bff94efea55179a
Fixes: 69314641
Test: robotests
This is the initial change for updating the suggestion cards:
- add a feature flag to swap between the new and current UI
- change suggestions to a standalone dashboard item. It becomes a
horizontal scroll list that won't collapse/expand.
- the expand/collapse logic now only control the conditions list
- add draft for the new suggestion UI elements, but detail to fine-tune
to match the UI spec will come in following changes.
Bug: 70573674
Test: make RunSettingsRoboTests
Change-Id: I00c901e2598b26a34288fc73fd6031cc26a29ac6
Support v1 is no longer used and we want to keep the codebase clean.
Test: robotests still pass
Bug: 70620533
Change-Id: Ic8af0f34aab510a533bd7a7ec5c059834395baf5
Previously, DashboardFragment stores preference controllers in an
ArrayMap of <Class, AbstractPreferenceController>. Thus when there are
multiple controllers of same class (ie. multiple
PreferenceCategoryControllers), they cannot be stored simultaneously.
This changes the value to a List so we can store multiple controllers of
the same Class without extraneous sub-classing.
Bug: 70949662
Test: All existing tests still pass.
Added
DashboardFragmentTest#testPreferenceControllerSetter_shouldAddAndNotReplace
and DashboardFragmentTest#updateState_doesNotSkipControllersOfSameClass.
Change-Id: I397e8c91977ea1180d48a3af75dd4058bf1175c0