Merge commit '8d14dbe041199d611839140f1c9285fd4174e9f4' into merge_ub-launcher3-master_6877130

Change-Id: I624658ce682b55042a12faacd4cf0cfd5d3a9a56
diff --git a/Android.bp b/Android.bp
index e132854..4265a44 100644
--- a/Android.bp
+++ b/Android.bp
@@ -19,6 +19,7 @@
         "androidx.test.runner",
         "androidx.test.rules",
         "androidx.test.uiautomator_uiautomator",
+        "androidx.preference_preference",
         "SystemUISharedLib",
     ],
     srcs: [
diff --git a/CleanSpec.mk b/CleanSpec.mk
index f7bda94..489abd1 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -52,6 +52,7 @@
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/Launcher2.apk)
 $(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Launcher2_intermediates)
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/Launcher2.apk)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/Launcher3QuickStep)
 
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/product/priv-app/Launcher3)
 $(call add-clean-step, rm -rf $(PRODUCT_OUT)/product/priv-app/Launcher3Go)
diff --git a/MODULE_LICENSE_APACHE2 b/MODULE_LICENSE_APACHE2
deleted file mode 100644
index e69de29..0000000
--- a/MODULE_LICENSE_APACHE2
+++ /dev/null
diff --git a/buglist.txt b/buglist.txt
new file mode 100644
index 0000000..382ccfd
--- /dev/null
+++ b/buglist.txt
@@ -0,0 +1,38 @@
+160759508
+144170434
+144170434
+161801331
+162564471
+160361464
+161901771
+160568387
+162623012
+162012217
+160718310
+160361464
+160718310
+162012217
+160748731
+154951045
+162861289
+149934536
+149934536
+144170434
+144170434
+162454040
+161273376
+149934536
+149934536
+158701272
+162871508
+149934536
+161939759
+154964045
+161536946
+149934536
+161685099
+162812884
+162480567
+162480567
+149934536
+149934536
diff --git a/buglist_unique.txt b/buglist_unique.txt
new file mode 100644
index 0000000..d33f4f1
--- /dev/null
+++ b/buglist_unique.txt
@@ -0,0 +1,24 @@
+144170434
+149934536
+154951045
+154964045
+158701272
+160361464
+160568387
+160718310
+160748731
+160759508
+161273376
+161536946
+161685099
+161801331
+161901771
+161939759
+162012217
+162454040
+162480567
+162564471
+162623012
+162812884
+162861289
+162871508
diff --git a/buglist_with_title.txt b/buglist_with_title.txt
new file mode 100644
index 0000000..aa8b413
--- /dev/null
+++ b/buglist_with_title.txt
@@ -0,0 +1,24 @@
+144170434  twickham  P1        FIXED   Improve Overview ->  Home transition ----
+149934536  twickham  P2        FIXED   Update gesture nav pullback logic ----
+154951045  peanutbutter  P1        FIXED   Odd animation occuring at times when swiping to home ----
+154964045  awickham  P2        FIXED   "Clear all" text is not in the middle of app's window vertically ----
+158701272  twickham  P4        FIXED   Discontinuities when long-swiping to home ----
+160361464  tracyzhou  P2        FIXED   Place launcher above the target app in live tile mode ----
+160568387  twickham  P2        FIXED   Can't get to app switcher by swiping up (motion pause not detected) ----
+160718310  xuqiu     P1        FIXED   With "Select" overview action selected, App icon is missing in other overview apps after orientation change ----
+160748731  sunnygoyal  P2        ASSIGNED  Unify prediction model with Launcher model ----
+160759508  twickham  P2        FIXED   Swipe up cannot back to home screen in overview. ----
+161273376  xuqiu     P2        FIXED   [Overview Actions] Add logging and helpful messages ----
+161536946  twickham  P2        FIXED   Haptics don't indicate snap-to in overview,  ----
+161685099  winsonc   P2        FIXED   Screen still stay at the quick settings/notification when I swipe up with 3 finger to check the all apps. ----
+161801331  hyunyoungs  P2        FIXED   Change AllAppsSearch plugin to support only data fetch ----
+161901771  xuqiu     P1        FIXED   Overlapping layer of highlights with app layout getting darker when keep rotating the device from "Feedback" viewpoint in split screen ----
+161939759  sunnygoyal  P2        FIXED   RD1A: Going to overview in landscape mode clips the screen content ----
+162012217  perumaal  P2        ASSIGNED  Leaked Activity Caused by Gleams ----
+162454040  bookatz   P2        ASSIGNED  Create multiuser test that checks that opening an app works properly ----
+162480567  sfufa     P4        FIXED   Enable Item Decorations for search items ----
+162564471  tracyzhou  P2        FIXED   [Live tile] Handle tapping overview actions in live tile mode ----
+162623012  zakcohen  P1        ASSIGNED  Enable chips flag ----
+162812884  winsonc   P2        ASSIGNED  [R]The color have not changed in some page after turning on the dark theme. ----
+162861289  hyunyoungs  P2        FIXED   Add FocusIndicator support to DEVICE_SEARCH feature in S ----
+162871508  sfufa     P2        ASSIGNED  Introduce support for Hero app section ----
diff --git a/commitlist.txt b/commitlist.txt
new file mode 100644
index 0000000..e8eb105
--- /dev/null
+++ b/commitlist.txt
@@ -0,0 +1,1133 @@
+COMMAND>> git log 23bb2d1a4d632c46ed42b22808c052b19365fcb4..532b962a034762b231c0fbb95e145459897e45d5(B
+commit 532b962a034762b231c0fbb95e145459897e45d5
+Merge: 87be28a67 107fe60f6
+Author: Tony Wickham <twickham@google.com>
+Date:   Sat Aug 15 00:20:36 2020 +0000
+
+    resolve merge conflicts of 107fe60f6ef5b3336ece35122650d9ccc1c69913 to ub-launcher3-master
+    
+    Change-Id: I9a1c52e66edd627fd54cc3cb423fa28a6175f8ac
+
+commit 87be28a67b12c5b12a89155c794c0ddd438e8750
+Merge: 4fedc4e58 d844fe758
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Fri Aug 14 23:47:44 2020 +0000
+
+    Merge "Remove ENABLE_OVERVIEW_ACTIONS flag, defaulting to true" into ub-launcher3-master
+
+commit 4fedc4e583fd5b6edcd4ea9b66d4c32991f04867
+Merge: 4fb5f74bb 6c1a88f17
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Fri Aug 14 23:00:09 2020 +0000
+
+    [automerger skipped] Merge "Track OverviewToHomeAnim with StateManager" into ub-launcher3-rvc-qpr-dev am: 6c1a88f172 -s ours
+    
+    am skip reason: Change-Id I5348565b9e705d8ffba39818dde9efe82b16bb7a with SHA-1 4fb5f74bb4 is in history
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12352271
+    
+    Change-Id: I2a164ac97082a33bd8e859d6fb3f40d338996304
+
+commit d844fe758c880447bff8708646ecfcd92e98ba06
+Author: Tony Wickham <twickham@google.com>
+Date:   Thu Aug 13 19:33:26 2020 -0700
+
+    Remove ENABLE_OVERVIEW_ACTIONS flag, defaulting to true
+    
+    We no longer support the "peeking" model where the shelf would
+    peek on motion pause from an app and overview would peek on motion
+    pause from home. Thus, removed/inlined the following:
+    - FlingAndHoldTouchController (merged into its sole subclass
+      NoButtonNavbarToOverviewTouchController)
+    - ShelfPeekAnim
+    - OverviewPeekState
+    
+    Change-Id: I066a3ad2636fde4786089c922b896bf1e03361fd
+
+commit 107fe60f6ef5b3336ece35122650d9ccc1c69913
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Aug 12 12:30:00 2020 -0700
+
+    Ensure we clearState() when going to Overview from home
+    
+    We need to do this before potentially starting another
+    interaction during the animation, or we could end up in
+    an inconsistent state.
+    
+    Fixes: 160759508
+    Change-Id: Ia28dceddcc258679fc0b968f5a83fae5ef3f5acb
+
+commit 6c1a88f1720a102d8a3ef94073754b7cd163d6a8
+Merge: 20983ae1f 9dfcc316c
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Fri Aug 14 22:45:17 2020 +0000
+
+    Merge "Track OverviewToHomeAnim with StateManager" into ub-launcher3-rvc-qpr-dev
+
+commit 9dfcc316c1519978e49462707ba36156d7abb2e5
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 18:33:01 2020 -0700
+
+    Track OverviewToHomeAnim with StateManager
+    
+    This way we mark the the current state as NORMAL at the start of
+    the animation, and cancel it as part of other state transitions.
+    This allows us to interact with launcher (e.g. to go to all apps
+    or pull down the notification shade) during the animation.
+    
+    Also use OverviewToHomeAnim from RecentsView#startHome() to
+    ensure the animation is consistent, e.g. doesn't fade out
+    RecentsView, scrolls to page 1, etc.
+    
+    Bug: 144170434
+    Change-Id: I5348565b9e705d8ffba39818dde9efe82b16bb7a
+    Merged-In: I5348565b9e705d8ffba39818dde9efe82b16bb7a
+
+commit 4fb5f74bb4884794a1a5f08f62092f7f63c2d05b
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 18:33:01 2020 -0700
+
+    Track OverviewToHomeAnim with StateManager
+    
+    This way we mark the the current state as NORMAL at the start of
+    the animation, and cancel it as part of other state transitions.
+    This allows us to interact with launcher (e.g. to go to all apps
+    or pull down the notification shade) during the animation.
+    
+    Also use OverviewToHomeAnim from RecentsView#startHome() to
+    ensure the animation is consistent, e.g. doesn't fade out
+    RecentsView, scrolls to page 1, etc.
+    
+    Bug: 144170434
+    Change-Id: I5348565b9e705d8ffba39818dde9efe82b16bb7a
+
+commit 1ae2937f7527517eafcf79071b4547800c1daad4
+Merge: 5fb83a47f 8cac927bd
+Author: Hyunyoung Song <hyunyoungs@google.com>
+Date:   Fri Aug 14 19:34:50 2020 +0000
+
+    Merge "Hookup existing AllAppsSearchPlugin interface to SearchBarController Bug: 161801331" into ub-launcher3-master
+
+commit 5fb83a47f292df4be2f55380caac65e36048052d
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Mon Aug 10 10:50:36 2020 -0700
+
+    Removing icon recents version
+    
+    Change-Id: Ibdc88715e38590cedf8a7b5174061bb2c6ef9533
+
+commit 8cac927bdb1054de643db86c918bb825f0860177
+Author: Hyunyoung Song <hyunyoungs@google.com>
+Date:   Fri Aug 14 00:11:36 2020 -0700
+
+    Hookup existing AllAppsSearchPlugin interface to SearchBarController
+    Bug: 161801331
+    
+    Change-Id: Ied575f78ad2139c6818ae5a13467b7399b9ab17a
+
+commit 8ad575e1e65c8a73b37abcd89062c22a27f0ad37
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Sat Aug 1 16:08:48 2020 -0700
+
+    Handle overview actions in Live Tile mode
+    
+    - Switch to screenshot and finish recents animation when an overview action is selected
+    
+    Fixes: 162564471
+    Test: Manual
+    Change-Id: I3db20619435d079bb39ce4cb37b46ea775416336
+
+commit 9a472fbd7dba66d756631ec98430b1da0fb9f00e
+Merge: a9f955173 81c0cac45
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Thu Aug 13 21:29:28 2020 +0000
+
+    Merge "[Live Tile] Place the target app back above Launcher when swipe up end target is home" into ub-launcher3-master
+
+commit a9f955173239fb734da22bd56cd0c2178a72213d
+Merge: 895ece297 a310e9c03
+Author: Andy Wickham <awickham@google.com>
+Date:   Thu Aug 13 19:22:12 2020 +0000
+
+    Merge "Refactors LauncherPreviewRenderer to better support subclassing." into ub-launcher3-master
+
+commit 895ece297d748291fcd7b3b429511729e64a1bb2
+Merge: ba9415162 20983ae1f
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 18:57:49 2020 +0000
+
+    Merge "[Overview Actions] Reset the modal task view when rotate from select mode." into ub-launcher3-rvc-qpr-dev am: 20983ae1f8
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12366024
+    
+    Change-Id: I3fec240a659c5a1c80bf4f78aca1af6ace270e27
+
+commit 20983ae1f8a5896f15cbee61397c554990e6bf58
+Merge: 2ddbe127f ba6fec3ea
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 18:42:46 2020 +0000
+
+    Merge "[Overview Actions] Reset the modal task view when rotate from select mode." into ub-launcher3-rvc-qpr-dev
+
+commit ba9415162cf2b3c0f46d4c252e50bafcd853616a
+Merge: 58a1689ce 59d04e6ea
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 18:17:41 2020 +0000
+
+    Merge "Use system VelocityTracker instead of forking least squares algorithm" into ub-launcher3-master
+
+commit 58a1689cef9f638467cb4dc9835bb6a92d704ce3
+Merge: 9529b95e0 2ddbe127f
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 18:05:50 2020 +0000
+
+    Merge "Overview Actions - enable proactive actions flag." into ub-launcher3-rvc-qpr-dev am: 2ddbe127fb
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12286410
+    
+    Change-Id: I54898c6a1a47d271c8d18c17d24a5acb6e67fd1e
+
+commit 81c0cac4574915a6bf77955bbb74ecc1cde79c6f
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Thu Aug 13 11:01:15 2020 -0700
+
+    [Live Tile] Place the target app back above Launcher when swipe up end target is home
+    
+    Test: manual
+    Bug: 160361464
+    Change-Id: Ic2b332774fe3f25f36f0bfd2b5e6cf66fb1d09dd
+
+commit 2ddbe127fb69bd860fc4176893015b63474c6609
+Merge: f35053ad5 1e414d500
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 17:50:30 2020 +0000
+
+    Merge "Overview Actions - enable proactive actions flag." into ub-launcher3-rvc-qpr-dev
+
+commit 59d04e6ea69dc0c81fceab601194d8c0a6238fa0
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Aug 12 18:05:42 2020 -0700
+
+    Use system VelocityTracker instead of forking least squares algorithm
+    
+    Change-Id: I8e03cdd0942b9037054cd1955bdb6809c89f3ea2
+
+commit a310e9c035c87c4fc5b3d23bbcc70f11ffc48561
+Author: Andy Wickham <awickham@google.com>
+Date:   Mon Aug 10 17:04:40 2020 -0700
+
+    Refactors LauncherPreviewRenderer to better support subclassing.
+    
+    Basically this removes the inner class MainThreadRenderer, which
+    was only created and used for its populate() method in the parent's
+    getRenderedView() method. All methods and members of that subclass
+    are merged into the parent LauncherPreviewRenderer class, and
+    getRenderedView() simply inlines the previous populate() code.
+    
+    Other smaller changes:
+     - Extracted out shouldShowQsb() and shouldShowRealLauncherPreview()
+     - Disables search view and its children to prevent interaction
+    
+    Change-Id: I7d0cce73efbe022c16661a0ad66eefe5cb285641
+
+commit 9529b95e06a6ab91650f373d5a335b6bc090ce77
+Merge: 72385839e f35053ad5
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 02:25:50 2020 +0000
+
+    Merge "Store mHistoricTimes as longs intead of floats" into ub-launcher3-rvc-qpr-dev am: f35053ad58
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12365858
+    
+    Change-Id: I3c21d9d47a525e9c975c6acf38c99a2f1668359c
+
+commit f35053ad588974b4daf37fa19866e416b880360d
+Merge: 30fe240f9 a14567096
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 02:10:20 2020 +0000
+
+    Merge "Store mHistoricTimes as longs intead of floats" into ub-launcher3-rvc-qpr-dev
+
+commit 72385839ed9038607e186c198ce31a54c52778a4
+Merge: 635c08095 30fe240f9
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 01:01:07 2020 +0000
+
+    Merge "TaskOverlayFactory - remove static factory." into ub-launcher3-rvc-qpr-dev am: 30fe240f99
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12353636
+    
+    Change-Id: Ic165b6184f4f36b5956493d3880a9d93ad27a0d6
+
+commit 30fe240f99f38dfb81a6075b8ab2b0ed436afb75
+Merge: cbe1fc063 cf8275438
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 13 00:47:34 2020 +0000
+
+    Merge "TaskOverlayFactory - remove static factory." into ub-launcher3-rvc-qpr-dev
+
+commit ba6fec3eaeb2087428c8e33826429d72ad0290cf
+Author: Becky Qiu <xuqiu@google.com>
+Date:   Wed Aug 12 17:17:00 2020 -0700
+
+    [Overview Actions] Reset the modal task view when rotate from select mode.
+    
+    Test: local
+    Bug: 161901771
+    Change-Id: I103e59ad68874db7fcb39556764d315983ac047c
+
+commit 635c08095a9057cce7e25952c0f5d5b12a7903d7
+Merge: 93caa9310 cbe1fc063
+Author: Zak Cohen <zakcohen@google.com>
+Date:   Thu Aug 13 00:12:20 2020 +0000
+
+    Merge "Overscroll plugin - give the plugin its own factory." into ub-launcher3-rvc-qpr-dev am: cbe1fc063d
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12353635
+    
+    Change-Id: Ia471594443d1b744c5c34f0c9c45e7191bbf7938
+
+commit a14567096922f23d6e03c84fc930e3451e7471c2
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Aug 12 16:48:33 2020 -0700
+
+    Store mHistoricTimes as longs intead of floats
+    
+    The loss of precision was causing us to miscalculate the age of
+    events, and thus not detecting any pause due to denominator = 0.
+    
+    Test: have a device that hasn't been rebooted for a certain
+    amount of time such that SystemClock#uptimeMillis can't be
+    accurately converted to a float, then try to swipe up and hold
+    
+    Fixes: 160568387
+    Change-Id: Idef112187f34a18feea7e6a0b77258626f9d0ed4
+
+commit cbe1fc063d924b2c68a2de8929687baab06439df
+Merge: 9367f9834 fac874152
+Author: Zak Cohen <zakcohen@google.com>
+Date:   Wed Aug 12 23:58:38 2020 +0000
+
+    Merge "Overscroll plugin - give the plugin its own factory." into ub-launcher3-rvc-qpr-dev
+
+commit 93caa93102df1b84e8b8d66fe7ca63e8950e4a6f
+Merge: 74f218530 9367f9834
+Author: Becky Qiu <xuqiu@google.com>
+Date:   Wed Aug 12 23:43:10 2020 +0000
+
+    [automerger skipped] [Overview Actions] Set launcher state to Overview when rotate in recents. am: 9367f98348 -s ours
+    
+    am skip reason: Change-Id I73f498151d7cc6a9db9d352549124c9d550ae6f2 with SHA-1 cb956ff4f5 is in history
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12354807
+    
+    Change-Id: I02f43e3ee9a7f0f1730b673be220055d72a07d81
+
+commit 74f218530e069c11b36cf4a2cfcc1b76726aea6b
+Merge: cb956ff4f fd58da6a7
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Wed Aug 12 23:36:27 2020 +0000
+
+    Merge "Wrapping display properties in a wrapper class" into ub-launcher3-master
+
+commit 1e414d500591e88c027bfead4c0e456444dc5407
+Author: Zak Cohen <zakcohen@google.com>
+Date:   Fri Jul 31 15:54:36 2020 -0700
+
+    Overview Actions - enable proactive actions flag.
+    
+    Bug: 162623012
+    Test: local
+    Change-Id: I343ae83601ebdab4dacc9f4611b069f87b5542eb
+
+commit cf82754384a26d2038ba1f13c0ecea57c0d3116d
+Author: Zak Cohen <zakcohen@google.com>
+Date:   Tue Aug 11 16:17:41 2020 -0700
+
+    TaskOverlayFactory - remove static factory.
+    
+    Make the overlay factory a member of the recents view.
+    Before the factory was static. The factory has references to activity
+    objects so was causing leaks.
+    
+    Bug: 162012217
+    Tested: local, factory still works
+    Change-Id: I2283134f3008b630ba2056f07e65ac042957cdbd
+
+commit fd58da6a75b55eb2ef40dd53fc6135636812ac6a
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Tue Aug 11 12:06:49 2020 -0700
+
+    Wrapping display properties in a wrapper class
+    
+    This would allow us to support gestures on multiple-displays
+    
+    Change-Id: I8f426bbdf04520f4189cadce2bde6aab4933c8d9
+
+commit cb956ff4f5adf0c4abb586940d9e89582a70bfd3
+Author: Becky Qiu <xuqiu@google.com>
+Date:   Mon Aug 10 12:44:48 2020 -0700
+
+    [Overview Actions] Set launcher state to Overview when rotate in recents.
+    
+    Test: local
+    Bug: 160718310
+    
+    Change-Id: I73f498151d7cc6a9db9d352549124c9d550ae6f2
+
+commit 73f0c3698fe74bb051e0e65a523a2f750b1ba40d
+Merge: 53116c6cc d6c3315a6
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Wed Aug 12 16:53:23 2020 +0000
+
+    Merge "Only draw app below launcher for TaskViewSimulator at swipe up or in Overview" into ub-launcher3-master
+
+commit d6c3315a67980c90712103135bae302b86ee080e
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Tue Aug 11 22:46:22 2020 -0700
+
+    Only draw app below launcher for TaskViewSimulator at swipe up or in Overview
+    
+    Bug: 160361464
+    Test: Manual
+    Change-Id: Ic4d912f1656d87f445a8016640c0eb166cace0d5
+
+commit 9367f98348f9db5b5b6840b8003dd62c037d8be8
+Author: Becky Qiu <xuqiu@google.com>
+Date:   Mon Aug 10 12:44:48 2020 -0700
+
+    [Overview Actions] Set launcher state to Overview when rotate in recents.
+    
+    Test: local
+    Bug: 160718310
+    
+    Change-Id: I73f498151d7cc6a9db9d352549124c9d550ae6f2
+    Merged-In: I73f498151d7cc6a9db9d352549124c9d550ae6f2
+
+commit fac87415221447f8f47ef4a88d187b7e175a6296
+Author: Zak Cohen <zakcohen@google.com>
+Date:   Mon Aug 10 15:51:45 2020 -0700
+
+    Overscroll plugin - give the plugin its own factory.
+    
+    Separate out the overscroll plugin from the task overlay.
+    These two classes aren't really related.
+    
+    Bug: 162012217
+    Tested: checked plugin still works
+    Change-Id: Id89eff1ad2ae9766efaaecd8cfc66d6521b9ca8c
+
+commit 53116c6cc84236ac49064efa9988f92b5b558599
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Fri Aug 7 16:32:18 2020 -0700
+
+     Simplifying InstallShortcutReceiver
+    
+    > Removing support for legacy shortcuts (with embedded icon)
+    > Unifying pattern for storing the data in prefs
+    
+    Change-Id: Ife250807c7ce5337969d25444ee23c751bc2a487
+
+commit b313f71615c64c8022f587ef3c4ebd34bfdc6171
+Merge: 762d06136 2104d72b2
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Tue Aug 11 21:44:37 2020 +0000
+
+    Merge "LauncherInstrumentation enables even when non-system user" into ub-launcher3-master
+
+commit 762d06136cc7c91afe8cdfdac5426b58c174edd8
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Wed Jul 29 15:03:46 2020 -0700
+
+    Caching last predictions and loading it with model
+    
+    Adding support for persisting itemInfos on disk. This uses
+    a separate xml file. Unlike prefs, it does not keep the items
+    in memory and is just a wraper over reading/writing a file.
+    
+    Bug: 160748731
+    Change-Id: Iaccab9928ab8f30127fb3c2d630ca8ca83f0bd05
+
+commit d62e797d1834306ec394ebf64f4c84939f033d97
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Tue Aug 11 12:10:36 2020 -0700
+
+    Disabling debug log as the associated bug is closed
+    
+    Bug: 154951045
+    Change-Id: I2e503c6d2f0a9f694ee1f88167924114fe495c2f
+
+commit 1bdb8f0efc73419b114074375126883162f4c838
+Merge: 3003e57d1 66aead7d2
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Tue Aug 11 18:57:13 2020 +0000
+
+    Merge "Removing some obsolete methods and wrapper" into ub-launcher3-master
+
+commit 3003e57d1714ba7016c89e520f11aebe83b71b7d
+Merge: fe9b7e37a 5dd045bec
+Author: Hyunyoung Song <hyunyoungs@google.com>
+Date:   Tue Aug 11 17:56:59 2020 +0000
+
+    Merge "Handle IME selection focus for ENABLE_DEVICE_SEARCH" into ub-launcher3-master
+
+commit 5dd045bec67ca12a3de4b4adc88a92a0166c0f50
+Author: Hyunyoung Song <hyunyoungs@google.com>
+Date:   Tue Aug 4 22:22:49 2020 -0700
+
+    Handle IME selection focus for ENABLE_DEVICE_SEARCH
+    
+    Bug: 162861289
+    Change-Id: I15e4eae09be2aa9f89a5157fd74c95e91e64bc53
+
+commit fe9b7e37a801135f959e03ecf26ee454a24d6f8e
+Merge: b810c10bb e14b55c2a
+Author: Tony Wickham <twickham@google.com>
+Date:   Tue Aug 11 00:37:05 2020 +0000
+
+    [automerger skipped] Merge "Don't reapply window transform if we are already running a window anim" into ub-launcher3-rvc-qpr-dev am: e14b55c2a9 -s ours
+    
+    am skip reason: Change-Id I3fa7f0b2581ca83923a42f37f52850b02c22e995 with SHA-1 c830bef923 is in history
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12346435
+    
+    Change-Id: I35f6f3572754e49626c7a09b832aecf114413bd7
+
+commit e14b55c2a94a255750bca8b2fa4e068fcbeba0cc
+Merge: b460ff1ef 06513f11c
+Author: Tony Wickham <twickham@google.com>
+Date:   Tue Aug 11 00:19:28 2020 +0000
+
+    Merge "Don't reapply window transform if we are already running a window anim" into ub-launcher3-rvc-qpr-dev
+
+commit b810c10bb90a2bae5adf02b7050dcb595f383707
+Merge: 9fc65cb0b b55f7591e
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 23:55:24 2020 +0000
+
+    Merge "Ensure that the task is always clipped to match the tile aspect ratio" into ub-launcher3-master
+
+commit 9fc65cb0b79e6d87098aa72aeaadb425619dd656
+Merge: c830bef92 b460ff1ef
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 23:02:20 2020 +0000
+
+    Merge "Fix TaskViewTouchController success progress to match haptic" into ub-launcher3-rvc-qpr-dev am: b460ff1ef1
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12321076
+    
+    Change-Id: Ic4317b94cca7d760d23da0c1c115d422236586e7
+
+commit b460ff1ef1f7fac734f1d0411fd7284e6c1eea7b
+Merge: 03a4a0cd5 b8b3e957a
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 22:46:03 2020 +0000
+
+    Merge "Fix TaskViewTouchController success progress to match haptic" into ub-launcher3-rvc-qpr-dev
+
+commit b55f7591ed2fee28e1c2a4059d19d2f069185cf5
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Mon Aug 10 15:08:36 2020 -0700
+
+    Ensure that the task is always clipped to match the tile aspect ratio
+    
+    Instead of trying to estimate the insets, we clip the task such it is
+    restricted within the task insets when possible.
+    
+    Change-Id: If160115fda07dfd2e01e96d41e4b5dc43a77ac94
+
+commit 06513f11c2304a371a7c79cec371562d65393322
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 15:06:02 2020 -0700
+
+    Don't reapply window transform if we are already running a window anim
+    
+    Bug: 149934536
+    Change-Id: I3fa7f0b2581ca83923a42f37f52850b02c22e995
+    Merged-In: I3fa7f0b2581ca83923a42f37f52850b02c22e995
+
+commit c830bef923200e97ad8d0ef9bf37d0c121d7e56d
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 15:06:02 2020 -0700
+
+    Don't reapply window transform if we are already running a window anim
+    
+    Bug: 149934536
+    Change-Id: I3fa7f0b2581ca83923a42f37f52850b02c22e995
+
+commit cf5aea05b3888ea0adc8a53fad62987405206eeb
+Merge: 2fe0d5f71 03a4a0cd5
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 21:29:00 2020 +0000
+
+    Update overview from home transitions am: 03a4a0cd53
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12184426
+    
+    Change-Id: Iac33ad0742264a97e754a1cc4336ed3ab727944a
+
+commit 2fe0d5f71ded4537c42d07df1464a71daf27e047
+Merge: a2c6c9737 90751820d
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 21:08:54 2020 +0000
+
+    Merge "Add back code missing from upstream merge" into ub-launcher3-master
+
+commit 03a4a0cd530c6d13f01882e81568ab1544030c12
+Author: Tony Wickham <twickham@google.com>
+Date:   Fri Jul 17 13:06:57 2020 -0700
+
+    Update overview from home transitions
+    
+    For both NoButtonNavbarToOverviewTouchController and
+    NavBarToHomeTouchController:
+    - Have consistent resistance applied such that RecentsView scales
+      down and translates up slightly (but not as much as from an app)
+    - Have consistent animation to home if you fling to that state
+      rather than stay in overview. This is handled by a new class,
+      OverviewToHomeAnim, which consolidates logic from NBTHTC and
+      overrides some interpolators such that RecentsView doesn't fade
+      out or translate downwards during the animation (it just slides
+      off the screen while the home animation plays).
+    
+    Also make overview actions not clickable when alpha == 0, so that
+    you can tap the hotseat/qsb during the transition from home to
+    overview.
+    
+    Bug: 144170434
+    Change-Id: Ic291f285ff2f63c477633c48d4fadb23cf70c28a
+
+commit 90751820d9ef8f09ece7aba656dfe881e3b149dd
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 13:11:43 2020 -0700
+
+    Add back code missing from upstream merge
+    
+    Change-Id: I7c2f08ed1b9c7462feabe1ad793af4ddc55aff1b
+
+commit a2c6c973749e1a67bcdbb33cb316c0ba467e3c6d
+Merge: c0ed292cc e6f9e0eb7
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 20:01:06 2020 +0000
+
+    Merge "Revert "Update overview from home transitions"" into ub-launcher3-master
+
+commit e6f9e0eb7ea49b0f2feae80d7a2d57fe9db5e38e
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 19:13:17 2020 +0000
+
+    Revert "Update overview from home transitions"
+    
+    This reverts commit f3bc79718201cf17479a46e9860ea518a900d68f.
+    
+    Reason for revert: updating upstream, need to wait to cherry-pick until that's approved
+    
+    Change-Id: I702286dba66fb4582ab682a5b0b8cd80ccebf346
+
+commit c0ed292ccbaa5b94bd3e54a85f5d7e9c1b2a1229
+Merge: cb4c4dea9 999e08f6f
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Aug 10 16:32:08 2020 +0000
+
+    Merge "Add swipe up resistance to quick switch from home" into ub-launcher3-rvc-qpr-dev am: 999e08f6ff
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12174364
+    
+    Change-Id: I6ce2dbb31ec8ed0d340165b2fc9a9f0532081d3e
+
+commit cb4c4dea95157c8bce1561bec6cd38daa57cec9e
+Merge: e54db4fbd 6bd1882ea
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 16:31:55 2020 +0000
+
+    Merge "[Overview Actions] Add a logging event for tapping images in select mode." into ub-launcher3-rvc-qpr-dev am: 6bd1882eae
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12336644
+    
+    Change-Id: I2dba3dda4d6ef8a8857e18708a96ebab9da30f20
+
+commit e54db4fbd4a293ecbe0c959aaae356472f9e8db6
+Merge: d72857950 2ace6a25d
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 16:31:44 2020 +0000
+
+    Merge "Fixing cutouts insets not clipped properly during swipeup for rotated activities" into ub-launcher3-rvc-qpr-dev am: 2ace6a25d2
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12327967
+    
+    Change-Id: I6e3f28e464a8ca63840a53f1b35c86cf377c4ad4
+
+commit d72857950461c1b82ce80f85bf359c050c0f0b0c
+Merge: f3bc79718 1a965c190
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 10 16:28:35 2020 +0000
+
+    Merge "resolve merge conflicts of 3a22956f0a6214285500ac040b4ae565d882cc47 to ub-launcher3-master" into ub-launcher3-master
+
+commit f3bc79718201cf17479a46e9860ea518a900d68f
+Author: Tony Wickham <twickham@google.com>
+Date:   Fri Jul 17 13:06:57 2020 -0700
+
+    Update overview from home transitions
+    
+    For both NoButtonNavbarToOverviewTouchController and
+    NavBarToHomeTouchController:
+    - Have consistent resistance applied such that RecentsView scales
+      down and translates up slightly (but not as much as from an app)
+    - Have consistent animation to home if you fling to that state
+      rather than stay in overview. This is handled by a new class,
+      OverviewToHomeAnim, which consolidates logic from NBTHTC and
+      overrides some interpolators such that RecentsView doesn't fade
+      out or translate downwards during the animation (it just slides
+      off the screen while the home animation plays).
+    
+    Also make overview actions not clickable when alpha == 0, so that
+    you can tap the hotseat/qsb during the transition from home to
+    overview.
+    
+    Bug: 144170434
+    Change-Id: Ic291f285ff2f63c477633c48d4fadb23cf70c28a
+
+commit 1a965c190d07140690602761c497495ad1875d03
+Merge: 70a556da1 3a22956f0
+Author: Tony Wickham <twickham@google.com>
+Date:   Sat Aug 8 19:12:11 2020 +0000
+
+    resolve merge conflicts of 3a22956f0a6214285500ac040b4ae565d882cc47 to ub-launcher3-master
+    
+    Change-Id: I2bb370e63d7206d52acb912d5b55a0f0c5f59c3d
+
+commit 999e08f6ffdcf2aa4eb3697cfd2c6c1488a72710
+Merge: 6bd1882ea d6a1063f2
+Author: Tony Wickham <twickham@google.com>
+Date:   Sat Aug 8 02:18:46 2020 +0000
+
+    Merge "Add swipe up resistance to quick switch from home" into ub-launcher3-rvc-qpr-dev
+
+commit 6bd1882eaec5c0571b78e47b58c524f1fcaae207
+Merge: 2ace6a25d 14e03d1c4
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Sat Aug 8 00:53:33 2020 +0000
+
+    Merge "[Overview Actions] Add a logging event for tapping images in select mode." into ub-launcher3-rvc-qpr-dev
+
+commit 2ace6a25d2835eb6bfd7082456dda1a07e419930
+Merge: 3a22956f0 d00340f7a
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Sat Aug 8 00:00:28 2020 +0000
+
+    Merge "Fixing cutouts insets not clipped properly during swipeup for rotated activities" into ub-launcher3-rvc-qpr-dev
+
+commit 66aead7d2cf426f64d06b573470d0658c858b1b3
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Fri Aug 7 16:56:50 2020 -0700
+
+    Removing some obsolete methods and wrapper
+    
+    Change-Id: I9d3c8d851ad596ba0d5165ab3c0f6661575166fc
+
+commit 3a22956f0a6214285500ac040b4ae565d882cc47
+Merge: ce8b2b518 3af714f05
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Fri Aug 7 23:44:37 2020 +0000
+
+    Merge "Remove overscroll on running task when it's not attached to RecentsView" into ub-launcher3-rvc-qpr-dev
+
+commit 2104d72b281ef4ee9f15aef333bd65a03f8f7eb4
+Author: Adam Bookatz <bookatz@google.com>
+Date:   Wed Jul 29 15:46:16 2020 -0700
+
+    LauncherInstrumentation enables even when non-system user
+    
+    Attempting to run a tapl test while the device is in a secondary user
+    currently fails because the test app doesn't get enabled for
+    this secondary user. We fix that (at least one issue with it) in this cl.
+    
+    Test: make PlatformScenarioTests; adb root && adb install -r -g ${ANDROID_PRODUCT_OUT}/testcases/PlatformScenarioTests/$(get_build_var TARGET_ARCH)/PlatformScenarioTests.apk
+    adb shell am instrument -w -r -e class android.platform.test.scenario.chrome.OpenApp android.platform.test.scenario/androidx.test.runner.AndroidJUnitRunner
+    (Do this while the current user is SYSTEM as well as Guest)
+    
+    Bug: 162454040
+    Change-Id: If6d8e545b41eb20e3fed2935c39069ce97d8b6cd
+
+commit 14e03d1c4d6c68e84f3f4d9867e0757562a78e4a
+Author: Becky Qiu <xuqiu@google.com>
+Date:   Fri Aug 7 15:06:38 2020 -0700
+
+    [Overview Actions] Add a logging event for tapping images in select mode.
+    
+    Event IDs were generated by command line on my workstation by uieventscli.
+    Manually added to StatsLogManager.
+    
+    Test: local
+    Bug: 161273376
+    Change-Id: Iee36c450ddb207f87653a8da2355c720369caa34
+
+commit 70a556da1d02fa32218d8dfcd4f4105f090997d9
+Merge: 87805cd94 ce8b2b518
+Author: Tony Wickham <twickham@google.com>
+Date:   Fri Aug 7 20:22:52 2020 +0000
+
+    Add translation component to swipe up resistance am: ce8b2b5180
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12174363
+    
+    Change-Id: I18d7be49bb3bfc9f846c14a9138b5daf381e1d56
+
+commit d6a1063f258452b5f34dcad22dc416cc03c16dd4
+Author: Tony Wickham <twickham@google.com>
+Date:   Mon Jul 6 17:26:39 2020 -0700
+
+    Add swipe up resistance to quick switch from home
+    
+    Bug: 149934536
+    Change-Id: I1b355a16d972f94d541231449ef323a41861a3e6
+
+commit ce8b2b51800e42fc61c14f516ec563c3561b7adb
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Jul 1 17:25:28 2020 -0700
+
+    Add translation component to swipe up resistance
+    
+    Now recents view follows your finger all the way to the top of the
+    screen. Specifically, your finger tracks the bottom of the window
+    until resistance starts (when RecentsView is at 75% scale), then
+    we add translation to compensate for the slower rate of scaling
+    down, such that your finger slips to the top of the window by the
+    time it reaches the top of the screen.
+    
+    Also reset this translation back to 0 in the state handlers.
+    
+    Bug: 149934536
+    Fixes: 158701272
+    Change-Id: Iaee58da758d422f0173c29d002f5c451ce0c1809
+
+commit 87805cd9415b7cfb968c1785bbd9845aa4b9db9e
+Merge: 4ade3fd56 4a53c70c5
+Author: Samuel Fufa <sfufa@google.com>
+Date:   Fri Aug 7 18:11:59 2020 +0000
+
+    Merge "Introduce support for Hero app Section" into ub-launcher3-master
+
+commit 4a53c70c5734f65d210c1b425549224acbe7c642
+Author: Samuel Fufa <sfufa@google.com>
+Date:   Tue Aug 4 14:06:55 2020 -0700
+
+    Introduce support for Hero app Section
+    
+    [Video attached to bug report]
+    
+    Bug: 162871508
+    Test: Manual
+    Change-Id: Ia6f5621d6220f55e6fd5e56530853c267838442c
+
+commit 4ade3fd561e357744c41da715d4dfda65f2fee9e
+Merge: 8ccd877f4 3f20e33af
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Fri Aug 7 00:10:05 2020 +0000
+
+    Merge "Fix adjacent page offset in landscape orientation" into ub-launcher3-rvc-qpr-dev am: 3f20e33af6
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12327711
+    
+    Change-Id: I8f2da96439372a9f6671469c3c41e4c0a43a4067
+
+commit 3f20e33af652f8ecdd729d3f861bf6d95e3f1fa0
+Merge: 3f8d86811 3b9d5843c
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Thu Aug 6 23:52:04 2020 +0000
+
+    Merge "Fix adjacent page offset in landscape orientation" into ub-launcher3-rvc-qpr-dev
+
+commit 3b9d5843c94d042655d5d43a673cf2738f69c5f9
+Author: Tony Wickham <twickham@google.com>
+Date:   Thu Aug 6 15:04:51 2020 -0700
+
+    Fix adjacent page offset in landscape orientation
+    
+    Before, the adjacent tasks were coming in from the top and bottom
+    of the screen rather than the sides.
+    
+    Bug: 149934536
+    Change-Id: Id6e57dcbc1967d70869df06068d25717de116934
+
+commit d00340f7a24d11db58954298eb979e6c8ac0438f
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Thu Aug 6 14:28:13 2020 -0700
+
+    Fixing cutouts insets not clipped properly during swipeup
+    for rotated activities
+    
+    Bug: 161939759
+    Change-Id: Ia55f938fdc51e2813c205d7d13d5f1bf852c9bb2
+
+commit 8ccd877f424070dbf5bec170722d46cea40bf827
+Merge: 7f28b8814 17d0080cc
+Author: Andy Wickham <awickham@google.com>
+Date:   Thu Aug 6 19:37:35 2020 +0000
+
+    Merge "Adjusts Clear all to be vertically centered with the tasks." into ub-launcher3-master
+
+commit 17d0080cc32ed36df154f52f6cf2b5082e7e3c31
+Author: Andy Wickham <awickham@google.com>
+Date:   Tue Aug 4 19:51:26 2020 -0700
+
+    Adjusts Clear all to be vertically centered with the tasks.
+    
+    I made a sample task where the content of the app was
+    centered, and I added lines to demonstrate the center
+    while in Overview. As you can see, the center of the
+    app content is slightly different from the TaskView
+    in Recents - it seems part of the bottom of the app
+    gets removed when transitioning to Recents (for the
+    rounded corner radius or nav bar?). On Pixel 4, I
+    had to add 46dp of padding to the bottom line for it
+    to appear at the bottom of the screenshot in Recents.
+    
+    Screenshot: https://drive.google.com/file/d/1xzQNXWb0T0UGDhDS9Ov-AduM3nd-pfg8/view?usp=sharing
+    Before: https://drive.google.com/file/d/1ghN9VWP44XjcZkdmI106dy4_jB4Vs4J3/view?usp=sharing
+    
+    Rotating between landscape and portrait:
+    https://drive.google.com/file/d/1OD5aKT9LCE5w950-6AaHfWXU4sLyW3Qe/view?usp=sharing
+    
+    Fixes: 154964045
+    Change-Id: I594057e3b5df58c5a907b6ca14daa700d5011b7b
+
+commit b8b3e957a6049ba0cd3ed48623a1666bae80b25e
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Aug 5 18:43:53 2020 -0700
+
+    Fix TaskViewTouchController success progress to match haptic
+    
+    We use the interpolated progress of the animation contoller target
+    to determine success, but only the child animation had the
+    interpolator set. Updating the parent to use the same interpolator
+    ensures getInterpolatedProgress() returns the same one used to
+    play the haptic.
+    
+    Fixes: 161536946
+    Change-Id: Ibc2aef67f53efa01f2b185cf03140bad4bb5c421
+
+commit 3af714f052d183aa31f22eee3afeecb94ec552db
+Author: Tony Wickham <twickham@google.com>
+Date:   Wed Aug 5 13:32:37 2020 -0700
+
+    Remove overscroll on running task when it's not attached to RecentsView
+    
+    This allows the running task to follow the finger freely until motion
+    pause is detected (or when trying to quick switch in a direciton that
+    has no tasks, as RecentsView is still attached until you swipe up).
+    
+    Bug: 149934536
+    Change-Id: If68166e962af9f28c56017838f720e15ddb96560
+
+commit 7f28b8814bbd8c5b09068eeba44026ff3da10551
+Merge: e7c1769e3 77ca1e4c4
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Wed Aug 5 19:44:57 2020 +0000
+
+    Merge "Moving data sanitization to the end, as it need not block the loading" into ub-launcher3-master
+
+commit e7c1769e30bfed7caa33816a5cd9d61447d75745
+Merge: c226adb38 f8e9b467a
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Wed Aug 5 17:42:43 2020 +0000
+
+    Merge "Revert "Finish recents animation when launching another task in Overview"" into ub-launcher3-master
+
+commit c226adb384d11bf88cf60efdd54d324bd4d1f762
+Merge: b3d7ecc15 3f8d86811
+Author: Winson Chung <winsonc@google.com>
+Date:   Wed Aug 5 06:02:28 2020 +0000
+
+    Defer recreation until resumed am: 3f8d868110
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12309024
+    
+    Change-Id: I814a6cab9046b82d66426fbe19636087cfd3e2b6
+
+commit b3d7ecc15b3be086b67d2e0b1a8360ab2d2ab74b
+Merge: 8aaafc918 dd15acea8
+Author: Winson Chung <winsonc@google.com>
+Date:   Wed Aug 5 05:49:31 2020 +0000
+
+    Merge "Close system dialogs when opening all apps from system action" into ub-launcher3-master
+
+commit dd15acea87875d6d7a0d388e7ddfb283c8fd2a71
+Author: Winson Chung <winsonc@google.com>
+Date:   Tue Aug 4 15:52:01 2020 -0700
+
+    Close system dialogs when opening all apps from system action
+    
+    Bug: 161685099
+    Change-Id: I67313340102816828a95e8f9e7d8fa19b4ca3c55
+
+commit 8aaafc9186039181ad753020e8c668e7457ce453
+Merge: 60096e990 f66f2f66c
+Author: Jason Chang <jasonsfchang@google.com>
+Date:   Wed Aug 5 04:28:29 2020 +0000
+
+    Merge "Refactoring One-Handed feature flag and others" into ub-launcher3-master
+
+commit 77ca1e4c40a98b048905e021d94eab154a637455
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Tue Aug 4 17:28:46 2020 -0700
+
+    Moving data sanitization to the end, as it need not block
+    the loading
+    
+    Change-Id: If1a966e546127efafd0afd7e3ca771f63a1fa544
+
+commit f8e9b467ae11de1d307f5d77c36ff8002e66255d
+Author: Tracy Zhou <tracyzhou@google.com>
+Date:   Tue Aug 4 21:57:14 2020 +0000
+
+    Revert "Finish recents animation when launching another task in Overview"
+    
+    This reverts commit e62eaa16b360433e35b4e4655e16c312a7bfd110.
+    
+    Reason for revert: No longer necessary
+    
+    Change-Id: I9ed533147ac5546b7da6c9e3a51f5a7e6c8ef8e6
+
+commit 3f8d868110b426e40e09ece8b305fd84c1dde60c
+Author: Winson Chung <winsonc@google.com>
+Date:   Tue Aug 4 14:01:27 2020 -0700
+
+    Defer recreation until resumed
+    
+    - Temporarily work around issue with activity recreation while started
+      but not resumed by deferring recreating the activity on theme
+      change until after launcher has resumed.
+    
+    Bug: 162812884
+    Test: Switch dark mode via QuickSettings, Settings
+    Test: Change system theme
+    Change-Id: Ifbc0d538907a30d6b23176cd67353a81b6f8c617
+
+commit 60096e990aba5dd2daf88a31a78c185df19fe111
+Author: Samuel Fufa <sfufa@google.com>
+Date:   Tue Aug 4 11:19:21 2020 -0700
+
+    Remove mFilteredApps
+    
+    Currently, we are maintaining a list of appInfos to report the number of Accessibility recycler-view items. This could be done by maintaining an int.
+    
+    Bug: 162480567
+    Test: Manual
+    Change-Id: I9de8e1d4ac6e1a674d1e19b591dedad0dd4cc536
+
+commit e8bea3ea7a7a2370f1effc75a674e7510264b999
+Author: Samuel Fufa <sfufa@google.com>
+Date:   Thu Jul 30 02:12:10 2020 -0700
+
+    Allow search results decoration [part 2/3]
+    
+    [Video attached to bug report]
+    
+    Bug: 162480567
+    Test: Manual
+    Change-Id: Iff285abde5b2a3f3f3a63e7318020cfe7572af49
+
+commit f66f2f66cf130d48a0c8897628655fd2310a1358
+Author: Jason Chang <jasonsfchang@google.com>
+Date:   Tue Aug 4 19:56:39 2020 +0800
+
+    Refactoring One-Handed feature flag and others
+    
+    Purify some conditions for reducing redundancy codes.
+    
+    Test: manual
+    Change-Id: I2f39207424f9db3fb6b12bc08bee525f3dfab0aa
+
+commit ab98166c36f2955359ccdf31defe0678f66bdd99
+Author: Raman Tenneti <rtenneti@google.com>
+Date:   Mon Aug 3 12:54:21 2020 -0700
+
+    AOSP/Launcher3 - Update language to comply with Android's inclusive language guidance.
+    
+    See https://source.android.com/setup/contribute/respectful-code for reference
+    
+    BUG=161896447
+    
+    Test: make and Presubmit verify.
+    
+    Change-Id: I44e903046dd4cd9c7c07872fc56a8d552eb09522
+
+commit 12e59e9a66882d67687739cfd5be81e9beae790e
+Merge: cb89edcbc ffc06198f
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 3 23:04:08 2020 +0000
+
+    [automerger skipped] Merge "Rewrite long swipe resistance ("pullback") logic" into ub-launcher3-rvc-qpr-dev am: ffc06198ff -s ours
+    
+    am skip reason: Change-Id Ib0f9da18e10cc9ddf1a2f82ed767f237c89d3a41 with SHA-1 03c38c5c66 is in history
+    
+    Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/12174362
+    
+    Change-Id: Ie0fc8684a14ce7ea9730e7160551adbc2bc4b97c
+
+commit cb89edcbcc8fbbee1ddd074500fe26db01b06789
+Merge: 03c38c5c6 eaf7a9554
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 3 22:24:14 2020 +0000
+
+    Merge "Changing minimum supported Launcher version to 26" into ub-launcher3-master
+
+commit ffc06198ff041bd1496ba59b1a5c12922d630fc1
+Merge: bf8472585 354a436f4
+Author: TreeHugger Robot <treehugger-gerrit@google.com>
+Date:   Mon Aug 3 22:11:30 2020 +0000
+
+    Merge "Rewrite long swipe resistance ("pullback") logic" into ub-launcher3-rvc-qpr-dev
+
+commit 354a436f4e96d2ae12740cb1af16b97c37166321
+Author: Tony Wickham <twickham@google.com>
+Date:   Thu Jun 25 15:51:33 2020 -0700
+
+    Rewrite long swipe resistance ("pullback") logic
+    
+    - Rename "pullback" to "resistance" to reduce confusion.
+    - Remove mDragLengthFactorStartPullback & mDragLengthFactorMaxPullback
+    - Add AnimatorControllerWithResistance, which has 2 controllers, one
+      for the normal shift to overview, then one to apply the resistance
+      when swiping beyond that.
+    - Don't hack animator interpolators/progress; insteaad, allow progress
+      to go > 1 (which will run the separate resistance animator).
+    - Don't start launcher controller separately from window controller;
+      instead, both are controlled by mCurrentShift in updateFinalShift().
+    - The resistance animation logic is shared by both the active window
+      and launcher (RecentsView).
+    
+    Bug: 149934536
+    Change-Id: Ib0f9da18e10cc9ddf1a2f82ed767f237c89d3a41
+    Merged-In: Ib0f9da18e10cc9ddf1a2f82ed767f237c89d3a41
+
+commit 03c38c5c665b08acb8d817bedc3ff78120f879da
+Author: Tony Wickham <twickham@google.com>
+Date:   Thu Jun 25 15:51:33 2020 -0700
+
+    Rewrite long swipe resistance ("pullback") logic
+    
+    - Rename "pullback" to "resistance" to reduce confusion.
+    - Remove mDragLengthFactorStartPullback & mDragLengthFactorMaxPullback
+    - Add AnimatorControllerWithResistance, which has 2 controllers, one
+      for the normal shift to overview, then one to apply the resistance
+      when swiping beyond that.
+    - Don't hack animator interpolators/progress; insteaad, allow progress
+      to go > 1 (which will run the separate resistance animator).
+    - Don't start launcher controller separately from window controller;
+      instead, both are controlled by mCurrentShift in updateFinalShift().
+    - The resistance animation logic is shared by both the active window
+      and launcher (RecentsView).
+    
+    Bug: 149934536
+    Change-Id: Ib0f9da18e10cc9ddf1a2f82ed767f237c89d3a41
+
+commit eaf7a955467a5d189b982ee436a8eefaa30e3006
+Author: Sunny Goyal <sunnygoyal@google.com>
+Date:   Wed Jul 29 16:54:20 2020 -0700
+
+    Changing minimum supported Launcher version to 26
+    
+    Change-Id: I49fcf874430ac53c3246371e179fbd828e14e4da
diff --git a/go/res/values-v26/bools.xml b/go/res/values-v26/bools.xml
new file mode 100644
index 0000000..1584734
--- /dev/null
+++ b/go/res/values-v26/bools.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/* Copyright 2017, The Android Open Source Project
+**
+** Licensed under the Apache License, Version 2.0 (the "License");
+** you may not use this file except in compliance with the License.
+** You may obtain a copy of the License at
+**
+**     http://www.apache.org/licenses/LICENSE-2.0
+**
+** Unless required by applicable law or agreed to in writing, software
+** distributed under the License is distributed on an "AS IS" BASIS,
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+** See the License for the specific language governing permissions and
+** limitations under the License.
+*/
+-->
+
+<resources>
+    <bool name="notification_dots_enabled">false</bool>
+</resources>
+
diff --git a/quickstep/res/values/strings.xml b/quickstep/res/values/strings.xml
index b913ba4..4b45b10 100644
--- a/quickstep/res/values/strings.xml
+++ b/quickstep/res/values/strings.xml
@@ -178,4 +178,4 @@
     <string name="action_screenshot">Screenshot</string>
     <!-- Message shown when an action is blocked by a policy enforced by the app or the organization managing the device. [CHAR_LIMIT=NONE] -->
     <string name="blocked_by_policy">This action isn\'t allowed by the app or your organization</string>
-</resources>
\ No newline at end of file
+</resources>
diff --git a/quickstep/src/com/android/launcher3/LauncherAnimationRunner.java b/quickstep/src/com/android/launcher3/LauncherAnimationRunner.java
index 75355c9..5c8463c 100644
--- a/quickstep/src/com/android/launcher3/LauncherAnimationRunner.java
+++ b/quickstep/src/com/android/launcher3/LauncherAnimationRunner.java
@@ -157,4 +157,4 @@
             }
         }
     }
-}
\ No newline at end of file
+}
diff --git a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
index d453bc3..057c0f4 100644
--- a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
+++ b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
@@ -609,8 +609,10 @@
                         }
 
                         matrix.setTranslate(tmpPos.x, tmpPos.y);
+                        final Rect crop = new Rect(target.screenSpaceBounds);
+                        crop.offsetTo(0, 0);
                         builder.withMatrix(matrix)
-                                .withWindowCrop(target.screenSpaceBounds)
+                                .withWindowCrop(crop)
                                 .withAlpha(1f);
                     }
                     params[i] = builder.build();
@@ -777,8 +779,10 @@
                         builder.withMatrix(matrix)
                                 .withAlpha(1f);
                     }
+                    final Rect crop = new Rect(target.screenSpaceBounds);
+                    crop.offsetTo(0, 0);
                     params[i] = builder
-                            .withWindowCrop(target.screenSpaceBounds)
+                            .withWindowCrop(crop)
                             .build();
                 }
                 surfaceApplier.scheduleApply(params);
diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java
index 39bf008..c3677ea 100644
--- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java
+++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java
@@ -53,7 +53,6 @@
     private static final int DEFAULT_CLOSE_DURATION = 200;
     protected static final int FINAL_SCRIM_BG_COLOR = 0x88000000;
 
-
     // we use this value to keep track of migration logs as we experiment with different migrations
     private static final int MIGRATION_EXPERIMENT_IDENTIFIER = 1;
 
diff --git a/quickstep/src/com/android/launcher3/uioverrides/DejankBinderTracker.java b/quickstep/src/com/android/launcher3/uioverrides/DejankBinderTracker.java
new file mode 100644
index 0000000..d8aa235
--- /dev/null
+++ b/quickstep/src/com/android/launcher3/uioverrides/DejankBinderTracker.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (C) 2019 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.launcher3.uioverrides;
+
+import static android.os.IBinder.FLAG_ONEWAY;
+
+import android.os.Binder;
+import android.os.Build;
+import android.os.IBinder;
+import android.os.Looper;
+import android.os.RemoteException;
+import android.util.Log;
+
+import androidx.annotation.MainThread;
+
+import java.util.HashSet;
+import java.util.Locale;
+import java.util.function.BiConsumer;
+import java.util.function.Supplier;
+
+/**
+ * A binder proxy transaction listener for tracking non-whitelisted binder calls.
+ */
+public class DejankBinderTracker implements Binder.ProxyTransactListener {
+    private static final String TAG = "DejankBinderTracker";
+
+    private static final Object sLock = new Object();
+    private static final HashSet<String> sWhitelistedFrameworkClasses = new HashSet<>();
+    static {
+        // Common IPCs that are ok to block the main thread.
+        sWhitelistedFrameworkClasses.add("android.view.IWindowSession");
+        sWhitelistedFrameworkClasses.add("android.os.IPowerManager");
+    }
+    private static boolean sTemporarilyIgnoreTracking = false;
+
+    // Used by the client to limit binder tracking to specific regions
+    private static boolean sTrackingAllowed = false;
+
+    private BiConsumer<String, Integer> mUnexpectedTransactionCallback;
+    private boolean mIsTracking = false;
+
+    /**
+     * Temporarily ignore blocking binder calls for the duration of this {@link Runnable}.
+     */
+    @MainThread
+    public static void whitelistIpcs(Runnable runnable) {
+        sTemporarilyIgnoreTracking = true;
+        runnable.run();
+        sTemporarilyIgnoreTracking = false;
+    }
+
+    /**
+     * Temporarily ignore blocking binder calls for the duration of this {@link Supplier}.
+     */
+    @MainThread
+    public static <T> T whitelistIpcs(Supplier<T> supplier) {
+        sTemporarilyIgnoreTracking = true;
+        T value = supplier.get();
+        sTemporarilyIgnoreTracking = false;
+        return value;
+    }
+
+    /**
+     * Enables binder tracking during a test.
+     */
+    @MainThread
+    public static void allowBinderTrackingInTests() {
+        sTrackingAllowed = true;
+    }
+
+    /**
+     * Disables binder tracking during a test.
+     */
+    @MainThread
+    public static void disallowBinderTrackingInTests() {
+        sTrackingAllowed = false;
+    }
+
+    public DejankBinderTracker(BiConsumer<String, Integer> unexpectedTransactionCallback) {
+        mUnexpectedTransactionCallback = unexpectedTransactionCallback;
+    }
+
+    @MainThread
+    public void startTracking() {
+        if (!Build.TYPE.toLowerCase(Locale.ROOT).contains("debug")
+                && !Build.TYPE.toLowerCase(Locale.ROOT).equals("eng")) {
+            Log.wtf(TAG, "Unexpected use of binder tracker in non-debug build", new Exception());
+            return;
+        }
+        if (mIsTracking) {
+            return;
+        }
+        mIsTracking = true;
+        Binder.setProxyTransactListener(this);
+    }
+
+    @MainThread
+    public void stopTracking() {
+        if (!mIsTracking) {
+            return;
+        }
+        mIsTracking = false;
+        Binder.setProxyTransactListener(null);
+    }
+
+    // Override the hidden Binder#onTransactStarted method
+    public synchronized Object onTransactStarted(IBinder binder, int transactionCode, int flags) {
+        if (!mIsTracking
+                || !sTrackingAllowed
+                || sTemporarilyIgnoreTracking
+                || (flags & FLAG_ONEWAY) == FLAG_ONEWAY
+                || !isMainThread()) {
+            return null;
+        }
+
+        String descriptor;
+        try {
+            descriptor = binder.getInterfaceDescriptor();
+            if (sWhitelistedFrameworkClasses.contains(descriptor)) {
+                return null;
+            }
+        } catch (RemoteException e) {
+            e.printStackTrace();
+            descriptor = binder.getClass().getSimpleName();
+        }
+
+        mUnexpectedTransactionCallback.accept(descriptor, transactionCode);
+        return null;
+    }
+
+    @Override
+    public Object onTransactStarted(IBinder binder, int transactionCode) {
+        // Do nothing
+        return null;
+    }
+
+    @Override
+    public void onTransactEnded(Object session) {
+        // Do nothing
+    }
+
+    public static boolean isMainThread() {
+        return Thread.currentThread() == Looper.getMainLooper().getThread();
+    }
+}
diff --git a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
index e808f8c..a284f5d 100644
--- a/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
+++ b/quickstep/src/com/android/launcher3/uioverrides/QuickstepLauncher.java
@@ -199,7 +199,8 @@
         boolean willUserBeActive = (getActivityFlags() & ACTIVITY_STATE_USER_WILL_BE_ACTIVE) != 0;
         boolean visible = (state == NORMAL || state == OVERVIEW)
                 && (willUserBeActive || isUserActive())
-                && !profile.isVerticalBarLayout();
+                && !profile.isVerticalBarLayout()
+                && profile.isPhone && !profile.isLandscape;
         UiThreadHelper.runAsyncCommand(this, SET_SHELF_HEIGHT, visible ? 1 : 0,
                 profile.hotseatBarSizePx);
         if (state == NORMAL && !inTransition) {
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 7bf8fba..3e05b07 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -473,6 +473,11 @@
                 } else {
                     mUncheckedConsumer = InputConsumer.NO_OP;
                 }
+            } else if (mDeviceState.canTriggerOneHandedAction(event)
+                    && !mDeviceState.isOneHandedModeActive()) {
+                // Consume gesture event for triggering one handed feature.
+                mUncheckedConsumer = new OneHandedModeInputConsumer(this, mDeviceState,
+                        InputConsumer.NO_OP, mInputMonitorCompat);
             } else {
                 mUncheckedConsumer = InputConsumer.NO_OP;
             }
diff --git a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
index 32b1c58..9bfe84f 100644
--- a/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
+++ b/quickstep/src/com/android/quickstep/inputconsumers/OverviewInputConsumer.java
@@ -108,4 +108,5 @@
             mActivity.dispatchKeyEvent(ev);
         }
     }
-}
\ No newline at end of file
+}
+
diff --git a/quickstep/src/com/android/quickstep/util/SurfaceTransactionApplier.java b/quickstep/src/com/android/quickstep/util/SurfaceTransactionApplier.java
index 0a3e3ec..0436a1c 100644
--- a/quickstep/src/com/android/quickstep/util/SurfaceTransactionApplier.java
+++ b/quickstep/src/com/android/quickstep/util/SurfaceTransactionApplier.java
@@ -16,7 +16,6 @@
 package com.android.quickstep.util;
 
 import static com.android.systemui.shared.system.TransactionCompat.deferTransactionUntil;
-import static com.android.systemui.shared.system.TransactionCompat.setEarlyWakeup;
 
 import android.annotation.TargetApi;
 import android.os.Build;
@@ -95,7 +94,6 @@
                     surfaceParams.applyTo(t);
                 }
             }
-            setEarlyWakeup(t);
             t.apply();
             Message.obtain(mApplyHandler, MSG_UPDATE_SEQUENCE_NUMBER, toApplySeqNo, 0)
                     .sendToTarget();
diff --git a/quickstep/src/com/android/quickstep/util/TransformParams.java b/quickstep/src/com/android/quickstep/util/TransformParams.java
index 45f49bb..756331d 100644
--- a/quickstep/src/com/android/quickstep/util/TransformParams.java
+++ b/quickstep/src/com/android/quickstep/util/TransformParams.java
@@ -213,7 +213,6 @@
             for (SurfaceParams param : params) {
                 SyncRtSurfaceTransactionApplierCompat.applyParams(t, param);
             }
-            t.setEarlyWakeup();
             t.apply();
         }
     }
diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java
index 686f878..3d6d423 100644
--- a/quickstep/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskView.java
@@ -313,9 +313,6 @@
      * @param modalness [0, 1] 0 being in context with other tasks, 1 being shown on its own.
      */
     public void setModalness(float modalness) {
-        if (mModalness == modalness) {
-            return;
-        }
         mModalness = modalness;
         mIconView.setAlpha(comp(modalness));
         if (mContextualChip != null) {
@@ -325,6 +322,7 @@
         if (mContextualChipWrapper != null) {
             mContextualChipWrapper.setAlpha(comp(modalness));
         }
+
         updateFooterVerticalOffset(mFooterVerticalOffset);
     }
 
@@ -544,11 +542,7 @@
                 .getInterpolation(progress);
         mIconView.setScaleX(scale);
         mIconView.setScaleY(scale);
-        if (mContextualChip != null && mContextualChipWrapper != null) {
-            mContextualChipWrapper.setAlpha(scale);
-            mContextualChip.setScaleX(scale);
-            mContextualChip.setScaleY(scale);
-        }
+
         updateFooterVerticalOffset(1.0f - scale);
     }
 
diff --git a/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java b/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
index 0c5b9ad..9732cdc 100644
--- a/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
+++ b/quickstep/tests/src/com/android/quickstep/StartLauncherViaGestureTests.java
@@ -102,4 +102,4 @@
         }
         mLauncher.pressHome();
     }
-}
\ No newline at end of file
+}
diff --git a/res/values-rm/strings.xml b/res/values-rm/strings.xml
deleted file mode 100644
index 0758148..0000000
--- a/res/values-rm/strings.xml
+++ /dev/null
@@ -1,203 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!-- 
-/*
-* Copyright (C) 2008 The Android Open Source Project
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-*      http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*/
- -->
-
-<resources xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <!-- no translation found for application_name (5181331383435256801) -->
-    <skip />
-    <!-- no translation found for home (7658288663002113681) -->
-    <skip />
-    <!-- no translation found for uid_name (7820867637514617527) -->
-    <skip />
-    <string name="folder_name" msgid="7371454440695724752"></string>
-    <!-- no translation found for activity_not_found (8071924732094499514) -->
-    <skip />
-    <!-- no translation found for widgets_tab_label (2921133187116603919) -->
-    <skip />
-    <!-- no translation found for widget_adder (3201040140710381657) -->
-    <skip />
-    <!-- no translation found for toggle_weight_watcher (5645299835184636119) -->
-    <skip />
-    <!-- no translation found for long_press_widget_to_add (7699152356777458215) -->
-    <skip />
-    <!-- no translation found for market (2619650989819296998) -->
-    <skip />
-    <!-- no translation found for widget_dims_format (2370757736025621599) -->
-    <skip />
-    <!-- no translation found for external_drop_widget_error (3165821058322217155) -->
-    <skip />
-    <!-- no translation found for external_drop_widget_pick_title (3486317258037690630) -->
-    <skip />
-    <!-- no translation found for rename_folder_label (3727762225964550653) -->
-    <skip />
-    <!-- no translation found for rename_folder_title (3771389277707820891) -->
-    <skip />
-    <!-- no translation found for rename_action (5559600076028658757) -->
-    <skip />
-    <!-- no translation found for cancel_action (7009134900002915310) -->
-    <skip />
-    <!-- no translation found for menu_item_add_item (1264911265836810421) -->
-    <skip />
-    <!-- no translation found for group_applications (3797214114206693605) -->
-    <skip />
-    <!-- no translation found for group_shortcuts (6012256992764410535) -->
-    <skip />
-    <!-- no translation found for group_widgets (1569030723286851002) -->
-    <skip />
-    <!-- no translation found for completely_out_of_space (6106288382070760318) -->
-    <skip />
-    <!-- no translation found for out_of_space (4691004494942118364) -->
-    <skip />
-    <!-- no translation found for hotseat_out_of_space (7448809638125333693) -->
-    <skip />
-    <!-- no translation found for invalid_hotseat_item (5779907847267573691) -->
-    <skip />
-    <!-- no translation found for shortcut_installed (1701742129426969556) -->
-    <skip />
-    <!-- no translation found for shortcut_uninstalled (8176767991305701821) -->
-    <skip />
-    <!-- no translation found for shortcut_duplicate (9167217446062498127) -->
-    <skip />
-    <!-- no translation found for title_select_shortcut (6680642571148153868) -->
-    <skip />
-    <!-- no translation found for title_select_application (3280812711670683644) -->
-    <skip />
-    <!-- no translation found for all_apps_button_label (9110807029020582876) -->
-    <skip />
-    <!-- no translation found for all_apps_home_button_label (252062713717058851) -->
-    <skip />
-    <!-- no translation found for delete_zone_label_workspace (4009607676751398685) -->
-    <skip />
-    <!-- no translation found for delete_zone_label_all_apps (8083826390278958980) -->
-    <skip />
-    <!-- no translation found for delete_target_label (1822697352535677073) -->
-    <skip />
-    <!-- no translation found for delete_target_uninstall_label (5100785476250872595) -->
-    <skip />
-    <!-- no translation found for info_target_label (8053346143994679532) -->
-    <skip />
-    <!-- no translation found for accessibility_search_button (1628520399424565142) -->
-    <skip />
-    <!-- no translation found for accessibility_voice_search_button (4637324840434406584) -->
-    <skip />
-    <!-- no translation found for accessibility_all_apps_button (2603132375383800483) -->
-    <skip />
-    <!-- no translation found for accessibility_delete_button (6466114477993744621) -->
-    <skip />
-    <!-- no translation found for delete_zone_label_all_apps_system_app (449755632749610895) -->
-    <skip />
-    <!-- no translation found for cab_menu_delete_app (7435191475867183689) -->
-    <skip />
-    <!-- no translation found for cab_menu_app_info (8593722221450362342) -->
-    <skip />
-    <!-- no translation found for cab_app_selection_text (374688303047985416) -->
-    <skip />
-    <!-- no translation found for cab_widget_selection_text (1833458597831541241) -->
-    <skip />
-    <!-- no translation found for cab_folder_selection_text (7999992513806132118) -->
-    <skip />
-    <!-- no translation found for cab_shortcut_selection_text (2103811025667946450) -->
-    <skip />
-    <!-- no translation found for permlab_install_shortcut (5632423390354674437) -->
-    <skip />
-    <!-- no translation found for permdesc_install_shortcut (923466509822011139) -->
-    <skip />
-    <!-- no translation found for permlab_uninstall_shortcut (864595034498083837) -->
-    <skip />
-    <!-- no translation found for permdesc_uninstall_shortcut (5134129545001836849) -->
-    <skip />
-    <!-- no translation found for permlab_read_settings (1941457408239617576) -->
-    <skip />
-    <!-- no translation found for permdesc_read_settings (5833423719057558387) -->
-    <skip />
-    <!-- no translation found for permlab_write_settings (3574213698004620587) -->
-    <skip />
-    <!-- no translation found for permdesc_write_settings (5440712911516509985) -->
-    <skip />
-    <!-- no translation found for gadget_error_text (6081085226050792095) -->
-    <skip />
-    <!-- no translation found for uninstall_system_app_text (4172046090762920660) -->
-    <skip />
-    <!-- no translation found for dream_name (1530253749244328964) -->
-    <skip />
-    <!-- no translation found for folder_hint_text (6617836969016293992) -->
-    <skip />
-    <!-- no translation found for workspace_description_format (2950174241104043327) -->
-    <skip />
-    <!-- no translation found for default_scroll_format (7475544710230993317) -->
-    <skip />
-    <!-- no translation found for workspace_scroll_format (8458889198184077399) -->
-    <skip />
-    <!-- no translation found for apps_customize_apps_scroll_format (370005296147130238) -->
-    <skip />
-    <!-- no translation found for apps_customize_widgets_scroll_format (3106209519974971521) -->
-    <skip />
-    <!-- no translation found for first_run_cling_title (2459738000155917941) -->
-    <skip />
-    <!-- no translation found for first_run_cling_description (6447072552696253358) -->
-    <skip />
-    <!-- no translation found for first_run_cling_create_screens_hint (6950729526680114157) -->
-    <skip />
-    <!-- no translation found for migration_cling_title (9181776667882933767) -->
-    <skip />
-    <!-- no translation found for migration_cling_description (2752413805582227644) -->
-    <skip />
-    <!-- no translation found for migration_cling_copy_apps (946331230090919440) -->
-    <skip />
-    <!-- no translation found for migration_cling_use_default (2626475813981258626) -->
-    <skip />
-    <!-- no translation found for workspace_cling_title (5626202359865825661) -->
-    <skip />
-    <!-- no translation found for workspace_cling_move_item (528201129978005352) -->
-    <skip />
-    <!-- no translation found for folder_cling_title (3894908818693254164) -->
-    <skip />
-    <!-- no translation found for folder_cling_create_folder (6158215559475836131) -->
-    <skip />
-    <!-- no translation found for cling_dismiss (8962359497601507581) -->
-    <skip />
-    <!-- no translation found for folder_opened (94695026776264709) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_close (1884479294466410023) -->
-    <skip />
-    <!-- no translation found for folder_tap_to_rename (9191075570492871147) -->
-    <skip />
-    <!-- no translation found for folder_closed (4100806530910930934) -->
-    <skip />
-    <!-- no translation found for folder_renamed (1794088362165669656) -->
-    <skip />
-    <!-- no translation found for folder_name_format (6629239338071103179) -->
-    <skip />
-    <!-- no translation found for widget_button_text (2880537293434387943) -->
-    <skip />
-    <!-- no translation found for wallpaper_button_text (8404103075899945851) -->
-    <skip />
-    <!-- no translation found for settings_button_text (8119458837558863227) -->
-    <skip />
-    <!-- no translation found for package_state_enqueued (6227252464303085641) -->
-    <skip />
-    <!-- no translation found for package_state_downloading (4088770468458724721) -->
-    <skip />
-    <!-- no translation found for package_state_installing (7588193972189849870) -->
-    <skip />
-    <!-- no translation found for package_state_unknown (7592128424511031410) -->
-    <skip />
-    <!-- no translation found for package_state_error (7672093962724223588) -->
-    <skip />
-</resources>
diff --git a/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithm.java b/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithm.java
index 5ed7de5..a83755e 100644
--- a/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithm.java
+++ b/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithm.java
@@ -60,6 +60,10 @@
             return false;
         }
 
+        if (requestSimpleFuzzySearch(query)) {
+            return title.toLowerCase().contains(query);
+        }
+
         int lastType;
         int thisType = Character.UNASSIGNED;
         int nextType = Character.getType(title.codePointAt(0));
@@ -160,4 +164,17 @@
             return new StringMatcher();
         }
     }
+
+    private static boolean requestSimpleFuzzySearch(String s) {
+        for (int i = 0; i < s.length(); ) {
+            int codepoint = s.codePointAt(i);
+            i += Character.charCount(codepoint);
+            switch (Character.UnicodeScript.of(codepoint)) {
+                case HAN:
+                    //Character.UnicodeScript.HAN: use String.contains to match
+                    return true;
+            }
+        }
+        return false;
+    }
 }
diff --git a/tests/Android.mk b/tests/Android.mk
index 4d1bfa6..3d9077d 100644
--- a/tests/Android.mk
+++ b/tests/Android.mk
@@ -23,6 +23,7 @@
 	androidx.annotation_annotation \
 	androidx.test.runner \
 	androidx.test.rules \
+	androidx.preference_preference \
 	androidx.test.uiautomator_uiautomator
 
 ifneq (,$(wildcard frameworks/base))
diff --git a/tests/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithmTest.java b/tests/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithmTest.java
index bdf01f3..39709a9 100644
--- a/tests/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithmTest.java
+++ b/tests/src/com/android/launcher3/allapps/search/DefaultAppSearchAlgorithmTest.java
@@ -68,8 +68,8 @@
 
         assertTrue(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "电", MATCHER));
         assertTrue(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "电子", MATCHER));
-        assertFalse(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "子", MATCHER));
-        assertFalse(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "邮件", MATCHER));
+        assertTrue(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "子", MATCHER));
+        assertTrue(DefaultAppSearchAlgorithm.matches(getInfo("电子邮件"), "邮件", MATCHER));
 
         assertFalse(DefaultAppSearchAlgorithm.matches(getInfo("Bot"), "ba", MATCHER));
         assertFalse(DefaultAppSearchAlgorithm.matches(getInfo("bot"), "ba", MATCHER));
diff --git a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
index 34e425d..a39f215 100644
--- a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
+++ b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
@@ -41,6 +41,7 @@
 import com.android.launcher3.widget.WidgetsRecyclerView;
 
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
@@ -101,7 +102,7 @@
         mLauncher.pressHome();
     }
 
-    @Test
+    @Ignore
     public void testOpenHomeSettingsFromWorkspace() {
         mDevice.pressMenu();
         mDevice.waitForIdle();