Commit Graph

34630 Commits

Author SHA1 Message Date
Muhammad Qureshi 33ec1e182e Use autogenerated SysUiStatsLog for statsd logging
StatsLogCompat is not needed because we can autogenerate StatsLog write
calls that are public. This CL switches uses of StatsLogCompat to using
SysUiStatsLog from SystemUI.

Bug: 145952197
Test: m
Test: fastboot flashall
Test: adb shell cmd stats print-logs && adb logcat "*:S statsd:*" and
inspect LAUNCHER_EVENT logging

Change-Id: Ib4f90a79f436cdd7e058fdb7027c09a5a59cc4f9
2020-01-16 15:16:23 -08:00
Sunny Goyal c0e9df6dd6 Removing some unnecessary LauncherProvider overrides
Change-Id: Ia07919309bd4fe942af152881642fe24de9b00ee
2020-01-16 14:57:39 -08:00
vadimt f6c1a167d9 TAPL: Optimization: avoid getting actual events twice
Getting events is an expensive operation involving reading logcat. We
did this al least twice even if the number of events was already
sufficient. Fixing this.

Change-Id: I5bfb57e3b573c4fc3f0327512327750dbb35af2f
2020-01-16 14:44:51 -08:00
Pinyao Ting 9be1cfde79 include roboelectric test to verify db backup is created when
initializing the db for the very first time.

Bug: 141472083
Change-Id: I84d3487bb296bf445323906e8a2d3734b1aa8594
2020-01-16 12:30:48 -08:00
Pinyao Ting ba9c557108 Initial support for restore workspace from last stable db entry.
(see go/play-launcher-plan-launcher-implementation)

1. When Launcher launches for the first time, creates a backup
   of the workspace before sanitizing db entries.
2. Creates a new path in LauncherProvider that triggers workspace
   restore using last stable db entry of the same grid size.
3. When restore from backup created this way, the table will be
   sanitized afterward.

Test:
1. apply on master, build & refresh on physical device
2. factory reset, go through SuW and perform restore
3. exit SuW without signing into Work Profile
4. run following commands in console
adb root
adb remount
adb pull
/data/data/com.google.android.apps.nexuslauncher/databases/launcher.db
sqlite3 ./launcher.db
.tables
SELECT * FROM favorites_bakup;

Bug: 141472083
Change-Id: I8032866a97eb333946d4f62352595d180364126b
2020-01-16 12:23:45 -08:00
Automerger Merge Worker 2b9151f0f6 [automerger skipped] DO NOT MERGE - Merge qt-qpr1-dev-plus-aosp-without-vendor (6129114) into stage-aosp-master am: b214ee473e am: 69c8edab0e -s ours
am skip reason: subject contains skip directive

Change-Id: I6a233f2c28b1488801f1389dd90db4f3996acf09
2020-01-16 19:01:00 +00:00
Automerger Merge Worker 69c8edab0e DO NOT MERGE - Merge qt-qpr1-dev-plus-aosp-without-vendor (6129114) into stage-aosp-master am: b214ee473e
Change-Id: If7c5677294f6e6b7a32eb83055b8b76603a092f4
2020-01-16 18:34:41 +00:00
Pinyao Ting 71e53bba16 Fix the issue malformed SQL statement was provided during db
sanitization.

Bug: 147114476
Change-Id: I34459267cfacb168ec520856e90e5da0b83728f0
Test:
1. follow the verification step in ag/9891836
2. add the following line in Launcher#onResume
LauncherSettings.Settings.call(getContentResolver(),
        LauncherSettings.Settings.METHOD_RESTORE_BACKUP_TABLE);
3. build & flash on the device
4. verify sanitizeDb success without error message
2020-01-16 10:02:23 -08:00
Jeongik Cha ad91de5185 Move the app to /system_ext
As mentioned in go/partitions-in-r, we plan to forbid hidden API in
product partition.
So this app should be moved to /system_ext because it uses hidden API.
It is not permanent, so they can be moved back to /product due to
needs if there isn't hidden usage anymore.

Bug: 137908189
Test: m
Test: check whether device boots successfully
Exempt-From-Owner-Approval: cherry-pick from internal
Change-Id: Ida940a2e1bb832cf5c3d147297e7ed65fa6921d5
Merged-In: Ida940a2e1bb832cf5c3d147297e7ed65fa6921d5
2020-01-16 06:45:25 +00:00
Tony Wickham 0e4cc09738 Merge "If RecentsView is empty when starting quickswitch, listen for tasks to load" into ub-launcher3-master 2020-01-16 00:18:19 +00:00
Xin Li b214ee473e DO NOT MERGE - Merge qt-qpr1-dev-plus-aosp-without-vendor (6129114) into stage-aosp-master
Bug: 146167222
Change-Id: I3b1456c370d4223f8f44566d1adfd7e437e8ac45
2020-01-15 15:57:19 -08:00
TreeHugger Robot a97958a22a Merge "Swipe up from nav bar in fallback recents to go home" into ub-launcher3-master 2020-01-15 22:56:41 +00:00
Vadim Tryshev f7b2d40347 Merge "TAPL: Verifying some interactions with system" into ub-launcher3-master 2020-01-15 22:32:13 +00:00
TreeHugger Robot 2abd13a80b Merge "Fix BaseSwipeDetector#setState() called inside another setState()" into ub-launcher3-master 2020-01-15 22:03:01 +00:00
vadimt 252d012ed0 TAPL: Verifying some interactions with system
Investigation of TAPL failures, especially flakes is complex, partially
because it’s hard to tell whether it’s Launcher who is wrong or the
system.

We need to introduce a framework that looks at Launcher interaction with
the system and reports when interactions deviate from the expected
course, and who made the first wrong step.

This is first, proof-of-concept CL.

It analyzes long-press events. We had multiple cases when long-presses
didn’t happen or happened unexpectedly.

Launcher registers the events, TAPL retrieves and compares against the
sequence of expected regular expressions. This diagnostic is used when
something fails and at the end of public methods.

Change-Id: I07aa3a027267c03422c99c73ccd8808445c55fe8
2020-01-15 13:31:18 -08:00
vadimt 9675452c2f Better diags and a small correction for scrolling in AllApps
Change-Id: I48dbba26139f42350831fb707bea847b7c76129f
2020-01-14 19:39:35 -08:00
TreeHugger Robot e16a2ba379 Merge "Add null check before updating NotificationItemView" into ub-launcher3-master 2020-01-15 02:44:08 +00:00
TreeHugger Robot 14bd192275 Merge "Track bottom of the app window when ENABLE_OVERVIEW_ACTIONS is true" into ub-launcher3-master 2020-01-14 23:33:02 +00:00
Tony Wickham 011439e353 If RecentsView is empty when starting quickswitch, listen for tasks to load
When first doing quick switch, RecentsView might be empty but tasks subsequently
load. In that case, we can update our animators to have the correct scale etc.

Test: From home, toggle dark theme or RTL from quick setting tiles,
then quick switch; ensure RecentsView comes in scaled up.

Bug: 126596417
Change-Id: I28d79455431b1da634372d6f31182406aa24cd06
2020-01-14 21:27:59 +00:00
TreeHugger Robot 8b0e50fecf Merge "Tracing launcher package name" into ub-launcher3-master 2020-01-14 18:41:53 +00:00
vadimt cef8008bfa Tracing launcher package name
I suspect that when the test starts, launcher package may be
com.google.android.setupwizard

Bug: 145935261
Change-Id: Ibf5e9785cd73762cbf2cdc8569482d77db782897
2020-01-13 17:10:12 -08:00
TreeHugger Robot 3d76dadcd6 Merge "Recognizing running "prebuilt" launcher and manually built platform" into ub-launcher3-master 2020-01-14 00:45:46 +00:00
Hyunyoung Song bab1101b87 Merge "Show suggestion when user taps on folder's edit text" into ub-launcher3-master 2020-01-13 23:18:21 +00:00
TreeHugger Robot d4ec31a51a Merge "TAPL: Tracing only changed part of the context for diags" into ub-launcher3-master 2020-01-13 22:39:20 +00:00
Hyunyoung Song 54d1f88ae6 Show suggestion when user taps on folder's edit text
Also, enabled preloading of the folder name db
Bug: 147523650
Bug: 147359653

Change-Id: Ia77e12d2b2bc428263c2b2821a96894a6004d82e
2020-01-11 23:39:02 -08:00
Tony Wickham 107dd8dd66 Track bottom of the app window when ENABLE_OVERVIEW_ACTIONS is true
- Fix the shelf tracking distance since there's no shelf.
- Pullback against a swipe up from an app later

Bug: 143361609
Change-Id: I296fb9bcb20d7d45931006f20512f0dc4a54212b
2020-01-10 14:44:29 -08:00
Sunny Goyal 2000228dc0 Merge "Adding support for multiple Model clients" into ub-launcher3-master 2020-01-10 22:21:20 +00:00
Sunny Goyal a7a5bf3101 Adding support for multiple Model clients
Bug: 137568159
Change-Id: Ia4db800b19cc80c695fcb9ea28e07709dfd08c6a
2020-01-10 12:23:27 -08:00
TreeHugger Robot 0e7a81ea0a Merge "Change hotseat edu strings" into ub-launcher3-master 2020-01-10 17:29:39 +00:00
TreeHugger Robot c85ab32e88 Merge "Use same content description for Recent apps" into ub-launcher3-master 2020-01-10 17:08:54 +00:00
Samuel Fufa 3db240a134 Change hotseat edu strings
Bug: 142753423
Change-Id: I0de86073b75eb1866d827d9e3fc35236accc67a0
2020-01-10 08:34:49 -08:00
android-build-team Robot 3d31603daf Snap for 6123763 from 4769b211af to rvc-release
Change-Id: I6a1133f27c1b3868a9c816310801d36479a2c4ba
2020-01-10 04:06:39 +00:00
Sunny Goyal 4823b0c99b Merge "Disabling some repo checks for rebolectric files" into ub-launcher3-master 2020-01-09 23:57:31 +00:00
Tony Wickham 3f330429a3 Fix BaseSwipeDetector#setState() called inside another setState()
Clients of BaseSwipeDetector are required to call finishedScrolling(),
which calls setState(IDLE). An obvious place to call this is in
onDragEnd(), which itself is called from a setState(SETTLING). If the
client does this, then the SETTLING state actually clobbers the IDLE
state, leading to undefined behavior. The reason we don't see this in
practice is because we usually call finishedScrolling() after an
animation from onDragEnd() instead of calling it immediately.

To fix this, we add a simple queue such that any calls to setState()
while one is in progress have to wait and are executed in turn. This
ensures we get all the proper state callbacks and end in the correct
one.

Also fix an incorrect call in AbstractStateChangeTouchController which
was masked by this bug. We were calling setState(IDLE) in onDragStart(),
which only worked because the original setState(DRAGGING) incorrectly
clobbered this. Now we only setState(IDLE) (via finishedScrolling())
when we fully clear the state, i.e. when the interaction is finished.

Test: added testInterleavedSetState

Bug: 141939911
Change-Id: Iae630ee7101921b57a85d40646468cf19f59b674
2020-01-09 15:39:38 -08:00
Hyunyoung Song ced004fb71 Merge "Change the load logic of FolderNameProvider Work profile apps are suggested as "Work" folder name" into ub-launcher3-master 2020-01-09 17:38:37 +00:00
Sunny Goyal cf7a48b1de Disabling some repo checks for rebolectric files
Change-Id: I025db602f14f7696e7f3165357afbec0cfa8e713
2020-01-09 09:18:41 -08:00
Hyunyoung Song 97253ec3ab Change the load logic of FolderNameProvider
Work profile apps are suggested as "Work" folder name

Bug: 147359653
Bug: 147359733

Change-Id: Idb2438de9c71c85cfeca6a6b0e116174ea2f3b62
2020-01-08 23:31:58 -08:00
Automerger Merge Worker 4769b211af Merging from ub-launcher3-qt-future-dev @ build 6099678 am: b676092514 am: c398eed9fd
Change-Id: I6ecbc183f7f39c086ab73164077fd8dc237cd0ae
2020-01-09 06:03:51 +00:00
Automerger Merge Worker c398eed9fd Merging from ub-launcher3-qt-future-dev @ build 6099678 am: b676092514
Change-Id: Ifda89a7872f0873a5443fdfcf52220182bf90e6c
2020-01-09 05:51:58 +00:00
android-build-team Robot 2095204bbd Snap for 6121193 from 54dd3e6e44 to rvc-release
Change-Id: I9050e0283672aa81461b31b2ab50734d128349b7
2020-01-09 04:19:04 +00:00
TreeHugger Robot d068f1cf66 Merge "integration test for open settings menu from workspace." into ub-launcher3-master 2020-01-09 04:17:03 +00:00
vadimt 1eb46b85ec Recognizing running "prebuilt" launcher and manually built platform
In scenarios like: atest NexusLauncherOutOfProcTests against the
platform built from command line, and Launcher from the platform, we are
not failing now, and @Stability treats it as a PLATFORM_POSTSUBMIT run.

Change-Id: Ia504216d238e58b2786f3749b737dfb95a2ede96
2020-01-08 17:32:15 -08:00
Pinyao Ting 654adf657e integration test for open settings menu from workspace.
compare pid of launcher process after test execution to verify launcher isn't crashed when running in oop test.

Bug: 147235759
Change-Id: Id13c47f5c4e388cc8e95b19d099e94a2e540bf3f
Test: fun flake locally
2020-01-08 17:01:39 -08:00
Tracy Zhou 4d7b244f3f Render user's actual workspace in ThemePicker preview (Part 2)
With this change, we can also render folders in preview. It's built on top of part 1.

Test: Go to grid options, choose a different grid option, and see user's workspace rendered in the preview
Bug: 144052839
Change-Id: Iaf6d8af6b909ece4147ea250d95dec3d2c0019d3
2020-01-08 15:42:58 -08:00
TreeHugger Robot 290f2cb028 Merge "Fixes duplicate "TAP" launcher event when new smart folder is created by drag and drop event." into ub-launcher3-master 2020-01-08 23:14:53 +00:00
Vadim Tryshev 466bf5538d Merge "Using grantRuntimePermission()" into ub-launcher3-master 2020-01-08 22:27:30 +00:00
Tony Wickham b676092514 Merging from ub-launcher3-qt-future-dev @ build 6099678
Test: manual, presubmit on the source branch
http://x20/teams/android-launcher/merge/ub-launcher3-qt-future-dev_6099678.html

Change-Id: I205e6a8dc0042dd69d62c319c170b4bbed378c75
2020-01-08 14:15:16 -08:00
Jonathan Miranda 1b4ed6dd9b Merge "Enable working springs. Move unstable springs to a seperate feature flag." into ub-launcher3-master 2020-01-08 21:17:49 +00:00
Thiru Ramasamy 652385d2ea Fixes duplicate "TAP" launcher event when new smart folder is created by drag and drop event.
Bug:147305113

Change-Id: I5d26df6a594b1d222e0db2e40c039c6661146d3a
2020-01-08 20:10:38 +00:00
vadimt aad54ab686 Using grantRuntimePermission()
"pm grant" is considered obsolete

Bug: 145686584
Change-Id: Ieeec76b2fdb666f89957a0a3039956bd69e9f315
2020-01-08 12:01:34 -08:00