Commit Graph

26 Commits

Author SHA1 Message Date
Tony Wickham 3cfada0a00 Simplify/correct Taskbar insetsRoundedCornerFrame calculation
Now we base it on the current tappableElement insets, which will only be
> 0 for the unstashed, persistent taskbar which draws rounded corners.
This inset also stays stable during temporary stash transitions such as
when the IME is showing.

Flag: ENABLE_TRANSIENT_TASKBAR=true, ENABLE_TASKBAR_PINNING=true
Test: in split screen for both transient and pinned (persistent)
taskbar, ensure split screen divider bottom is drawn appropriately
Fixes: 278028503

Change-Id: Iab56c5dc8f9fc81c34aa01f41b5212dd5c6fd7f0
2023-04-28 23:51:41 +00:00
Tiger 5624523835 Always suppress scrim for taskbar
Taskbar never needs a semi-transparent scrim drawn by the decor view at
the insets area, because taskbar has the background color on its own if
needed.

Bug: 197615177
Test: SystemUIGoogleBiometricsScreenshotTests
Change-Id: Ic49c8af3ecbefcc83d1bd987812625c7e2f37157
2023-04-13 12:32:02 +00:00
Winson Chung 3d03a208ac Always provide mandatory bottom gesture insets
Bug: 265614886
Bug: 277185135
Test: atest WindowInsetsPolicyTest
Change-Id: I964e0b759170c127cb05615ce5bf6fa827621187
2023-04-06 16:43:16 +00:00
Winson Chung 711189df8c Fix gesture insets issue for IMEs
- Setting the override frame for the gesture insets sources prevents
  the insets from being calculated correctly for the IME window
- Update the set of provided insets based on the current nav mode
  so that we don't report gesture insets in button nav

Bug: 265614886
Test: Dump IME window insets for button/gesture nav
Change-Id: I22f9d09a66b50d6e2fb5002af19058657a06404d
2023-03-31 19:41:51 +00:00
Tiger 1529a53d46 Use public types to setup InsetsFrameProviders of taskbar
This is a step to remove ITYPEs.

Bug: 234093736
Test: atest DisplayPolicyLayoutTests InsetsPolicyTest SizeCompatTests
      DisplayContentTests DisplayPolicyTests WindowStateTests
      LetterboxUiControllerTest TaskLaunchParamsModifierTests
      WindowContainerInsetsSourceProviderTest
Change-Id: I6520540e4d8799e3306a65fcbfb1627a19f4028b
2023-03-02 13:06:01 +08:00
Jordan Demeulenaere be82bc661c Format files with the upcoming version of ktfmt
This CL was generated automatically from the following command:

$ external/ktfmt/prepare_upgrade.py --repo=packages/apps/Launcher3/ --build_id=9645412 --bug_id=266197805

This CL formats all files already correctly formatted with the upcoming
version of ktfmt.

Bug: 266197805
Test: Presubmits
Change-Id: Ide7d63a75fed98aabe348821355356c77f00a9ec
Merged-In: Ide7d63a75fed98aabe348821355356c77f00a9ec
2023-03-01 09:11:48 +00:00
Winson Chung 0371d0f699 Only call per-user calls for gesture settings observer
Bug: 231648761
Fixes: 269392826
Test: Unable to reproduce 269392826, but verified this doesn't
      break existing paths to adjust the insets
Change-Id: I8aa82f3fb77e627ac02352ef31b788b81c2ca901
2023-02-17 19:44:29 +00:00
Tony Wickham fc97f74e82 Have Taskbar report left/right gesture insets
Fixes: 231648761
Test: output from adb shell dumpsys activity service
TouchInteractionService, specifically TaskbarInsetsController

Change-Id: I8ed7fefb482bd4f73d2b2026ccb4ac369b6321ab
2023-02-14 04:43:01 +00:00
Thales Lima 03ac377a34 Check kotlin format before uploading
This uses ktfmt on the PREUPLOAD hook to check file formatting.

Bug: 264851618
Test: manual
Change-Id: I8bdeabd9c1ed571a464707e6912419ad3190a169
Merged-In: I8bdeabd9c1ed571a464707e6912419ad3190a169
2023-01-10 13:24:43 +00:00
Tony Wickham c6a7ba8163 Adjust taskbar VIS and bottom mandatory gesture insets
- ITYPE_BOTTOM_MANDATORY_GESTURES should always be > 0  in gesture
  navigation mode, but before we were setting it equal to tappableHeight
  which is 0 if the taskbar is stashed. Fixed it to be contentHeight
  instead.
- Updated VIS insets to only override them to be 0 for tappableElement,
  not for others like navigationBars. We still only override this for
  gesture navigation; 3 button mode will continue reporting the same as
  we report to the underlying apps.

Test: manually with 3 button mode, gesture nav mode with taskbar
stashed/unstashed; checked that TaskbarInsetsController dump looks as
expected, and that behaviors like Assistant and IME look correct
Flag: none
Fixes: 262516176

Change-Id: I5a1cdf5a9956777d3189ef6042493e2f5aa9b162
2022-12-15 22:28:40 +00:00
Jon Miranda 106cc895e9 Allow touches on transient taskbar if ime is present.
Bug: 260101467
Test: open chrome, enter url to pull up ime, swipe up to show taskbar,
      tap on taskbar icon

Change-Id: Ic8be6c2bb82fc9b8ab83572cb8622ac157078ea9
2022-11-29 11:30:39 -08:00
Thales Lima 994b181676 Merge "Remove KtR workaround" into tm-qpr-dev 2022-10-19 14:04:48 +00:00
TreeHugger Robot c9928a1ddf Merge "Implement overlay window for Taskbar EDU and All Apps." into tm-qpr-dev 2022-10-19 14:01:56 +00:00
Thales Lima e9d4044483 Remove KtR workaround
Bug: 229947409
Test: m -j128 Launcher3QuickStep Launcher3QuickStepGo Launcher3 Launcher3Go NexusLauncherRelease NexusLauncherDebug SearchLauncherQuickStep SearchLauncher LauncherGoGoogle
Change-Id: I5792cc6b30dfa856747a1576ef3cb195952c25c7
(cherry picked from commit 51e164688e)
Merged-In: I5792cc6b30dfa856747a1576ef3cb195952c25c7
2022-10-18 13:06:23 +00:00
Vinit Nayak d6c5147524 Landscape 3 button nav on taskbar phone supported
* TODO: Seascape bar positioning, add tests

Change-Id: I542be2f2f682d8c8a9cdd9bb6c667c44ca167f3e
Merged-In: I542be2f2f682d8c8a9cdd9bb6c667c44ca167f3e
2022-10-17 13:59:18 -07:00
Brian Isganitis 2d6371aa34 Implement overlay window for Taskbar EDU and All Apps.
Having EDU in the same window as Taskbar causes it to be above All Apps
and other system views such as the notification tray. This change
refactors the existing All Apps window to accomodate more AFVs so that
EDU can also exist in it.

Demo: http://shortn/_Qcki3gwvf7

Test: Manual
Fix: 232177330
Change-Id: I1bef31d798041a90a0c3e033e71be63898fa5fbc
2022-10-14 22:36:14 +00:00
Alex Chau 2e72e4cda6 Fix taskbar in overview touch and stash behavior
- When taskbar is unstashed in Launcher (e.g. overview), make the unstashed height touchable
- When AllApps button is pressed in taskbar overview, also stash taskbar

Bug: 245320601
Test: manual
Change-Id: Iadd0bea13cf9a779c68e953d25f21f663c15865a
2022-10-06 21:37:56 +01:00
Winson Chung 3f649ef892 Update Launcher for removed shared wrappers
- Launcher can reference system code directly now

Bug: 219861883
Test: Builds/Presubmit
Change-Id: I3f656b6c7fce93243ccb7591e52441e99137dec6
Merged-In: I3f656b6c7fce93243ccb7591e52441e99137dec6
2022-09-14 17:14:32 +00:00
Tony Wickham fd170e25cb Provide 0 insets to VoiceInteractionWindow in gesture nav
Test: Invoke assistant on tablet on both geture nav and 3 button mode;
In gesture nav mode: assistant shows at the very bottom of the screen,
layered on top of the taskbar background (in z order)
In 3 button mode: assistant shows right above the taskbar, which only
shows the 3 buttons (no taskbar icons) while assistant is showing
Fixes: 225200928

Change-Id: I2fbc05e696b58e8801e704092aa2741cb57c05c4
2022-07-13 10:33:12 -07:00
Yunfan Chen 7f6eb29b9a Provide IME insets with insetsSizeOverrides
The frameworks extended the API to let window provide insets to given
typed window with insetsSizeOverrides. Migrate to the method to
provide insets for IME.

Test: build
Test: the IME can receive correct insets
Bug: 225200928
Change-Id: Ic8eab5198221bc8de6eca432e8b3e11067c83d57
2022-07-01 13:03:09 +09:00
Yunfan Chen a34340ef3a Modify the way of providing insets per WM change
The WM provides a new way to provide insets, modified the code to
reflect that change.

Bug: 161689946
Test: m
Merged-In: I31bd26a5ce4c3e47f8961d4fe528f3a97ec063f8
Change-Id: I31bd26a5ce4c3e47f8961d4fe528f3a97ec063f8
2022-06-07 17:13:47 +09:00
Alex Chau 4eebbac3b7 Use DeviceProfile.widthPx to initialize Taskbar touchableRegion
- TaskbarDraglayer.width isn't initialize when Taskbar is recreated before layout, so use DeviceProfile.widthPx instead
- Also listen for DeviceProfile change in TaskbarInsetsController to update Taskbar touchableRegion

Fix: 233316713
Test: Switch to 3 button, nav button works. Swtich to gesture nav, taskbar icon can be tapped
Test: Rotate deice, whole Taskbar should still be touchable
Change-Id: I29ff86fd8616a620f98d9b5438cc586bd69fac33
2022-05-27 18:35:26 +01:00
Vinit Nayak 2cb5cb5d00 Report ITYPE_BOTTOM_MANDATORY_GESTURES insets for Taskbar
Bug: 205493938
Change-Id: I196bc52c1bec75b5442f3546f466799ba9c3831b
2022-05-16 21:38:28 -07:00
Tony Wickham f286f9cb98 Address a couple small followups for TaskbarInsetsController
- Added no-op onDestroy()
- Reformated some if conditions, also adding
  AbstractFloatingView.hasOpenView()

Test: TaplTestsTaskbar
Bug: 215411414
Change-Id: I89b39ca5fabd03f5ac0f25d6ef69170683cf060d
2022-04-21 16:16:02 +00:00
Tony Wickham a681cf6abe Migrate from InsetsInfo.contentInsets to WindowManager.LayoutParams#providedInternalInsets
- This allows us to distinguish taskbar's ITYPE_EXTRA_NAVIGATION_BAR insets from its ITYPE_BOTTOM_TAPPABLE_ELEMENT insets
- Set nav bar insets as before (contentInsets)
- Set tappable elements insets the same, except when taskbar is stashed, in which case set to 0

Test: TaplTestsTaskbar; manually stash/unstash taskbar, open IME, open Calculator (which uses tappableElement() insets) and Contacts (which uses systemBars())
Fixes: 215411414
Change-Id: If00f7a590b0780715d5b8159f5135054364ce84e
2022-04-21 16:15:41 +00:00
Tony Wickham 36c9d888d8 Move taskbar insets logic to TaskbarInsetsController
Test: TaplTestsTaskbar; manually stash/unstash taskbar, open IME
Bug: 215411414
Change-Id: I73622dc020c4f8c8b3d317fcb1dd072bcfc3d274
Merged-In: I73622dc020c4f8c8b3d317fcb1dd072bcfc3d274
2022-04-20 19:27:48 +00:00