The issue happens mainly because two animations(move + change) running
on the same view interrupt with each other. When ItemAnimator runs the
move animation, it will change the translationX&Y in a time period.
When the change animation occurs in this period, it gets this translation
value and calculates a non-zero deta, then it would run an unnecessary
move animation, which causes the strange reshuffling.
In this cl, I skip the translation value only for the tile view when
there is pending animation.
I also add scroll operation for conditions view to make it scroll to
top after condition change.
Bug: 33839777
Bug: 33839780
Test: make -j40 RunSettingsRoboTests
Change-Id: I2152f93f756ae20cf754d6fca3525119cb4ceb1f
- Refresh connected state before setting summary text.
- Detect inconsistent state (BT manager says connected but doesn't
provide a connected device)
(This basically syncs implementation between settings and QS tile)
Change-Id: Id23138f8432b9aecd194f5016bf2576e33e8ca98
Fixes: 33341275
Test: RunSettingsRoboTests
Support screen is now refreshed in the onResume.
This will prevent the situation where you open the
support tab and then you cross a hours of operation
boundary and the button is not updated.
Test: make RunSettingsRoboTests
Bug: 33272736
Change-Id: I9312b3b6f711eda91d5d60b3ff30e5ac12bf89c1
Add a new method to get the extra intent-filter action to be used
to query the dynamic dashboard tiles.
Bug: 32739952
Test: make RunSettingsRoboTests
Change-Id: I96d9d8bd32ebe34b7c0df00c3fb4d8900b476c94
(this is partially revert of ag/I0ce486f7ac6)
- Only draw divider lines on top of PreferenceCategory and
FooterPreference
Bug: 33601143
Test: make RunSettingsRoboTests
Change-Id: I26146dcae1603dc807e54ea431910685107be94c
- Programatically create SearchView to make it always expand across
entire action bar.
- Store current query text during screen rotation
- Restart loader when query text changes
Bug: 33354491
Test: RunSettingsRoboTests
Change-Id: I63838a38514569aac60c5d67ac52ac06a7acd5a3
This allows app fragment use a less heavyweight fragment as super class
if they don't need PreferenceFragment. Using this class as base is
generally easier to set up robolectric tests too.
Bug: 33354536
Test: RunSettingsRoboTests
Change-Id: I91c4d242ea0333c76c8767c03c3f18dee6b6e104
If intent action is provided in the metadata for the dynamic tiles, it
will be added to the launching intent when user selects the tile.
Fixes: 31801423
Test: make RunSettingsRoboTests
Change-Id: Ic3e583a578660f4d9c40feff1418e5e354ab8f60
Sometimes the airplane mode banner will show up even
though airplane mode is not on. Logging has been added
to several areas around this condition in addition to
where the actual view is created. This will be used
to try and get a better handle on what the source of
the bug is.
Test: manual
Bug: 30860132
Change-Id: I7213aa7e187c5a8c0e94a5ce7a3269e6667cd61b
When there is no offset change for identical holder in
animateChange, simply return and don't invoke the
resetAnimation.
Bug: 33198024
Test: make RunSettingsRoboTests
Change-Id: Ib83363873bc5f51e5bd71af5a013ee0756728d1a
- List individual account instead of account type under User & account
screen.
- Add handling to move account tiles with specific account type from
top level account dashboard to inside the corresponding account
preference.
- Rename settings.accounts.AccountPreference to
settings.accounts.AccountTypePreference to make it less confused
with settings.AccountPreference
Bug: 31801423
Test: make RunSettingsRoboTests
Change-Id: Iebe70a3c4230e8d979344f142a5c2a60945e552e
Bug: 31002801
Test: make RunSettingsRoboTests
Reads in optional metadata field for specifying the key used for an
injected preference.
Change-Id: Ief2ff10c508d42f91906b531cf34906c1c42fdd4
- Add account preference controller and move the handling for
displaying user's accounts from AccountSettings to the
controller.
- Move AccountPreference and RemoveUserFragment from inner class to
standalone class.
- Add AccountRestrictionHelper to handle API that needs to be mocked for
testing.
Bug: 31801423
Test: make RunSettingsRoboTests
Change-Id: I3d16d0b6a8922a8abec7037c52b7a4de2d76eb0d
Ideally a page should use DashboardFragment and it doesn't need to
handle adding dynamic tiles manually. This method is only designed for
page that are not fully migrated to DashboardFragment yet.
Bug: 32623105
Test: RunSettingsRoboTests
Change-Id: I0cafcddf9a43b164daea500bade869fada5b3f4e
Insteads of inserting tile onto screen using absolute priority values,
now each page can have a placeholder preference, and at run time we will
add dynamic dashboard tiles to placeholder's place.
Bug: 32827787
Test: RunSettingsRoboTests
Change-Id: I1fe9e11dce4eb6fb4a9b56af05a2b8e5cdae00d2
Since the method parameter tile and tile in adpater is the same
instance, it is useless to check whether summary has changed.
Test: Run SettingsRoboTests
The function used in notifySummaryChanged already has testcases
in DashboardDataTest
Change-Id: I8c8969fcd2c89f368ca507808910fc7a9852f192