In addition, remove the overlay layout and include it in the dialog
layout as the background of the top-level layout (renamed as dimmer).
Test: N/A
Bug: 207010227
Change-Id: I658e85378ec266c4260b520b5fcdddbfb66b35c6
The toast is no longer needed since we decided to only show the
letterbox education once as a dialog.
Test: N/A
Bug: 207010227
Change-Id: I1dccf10d0effad111d8ee8e62a068e4dee571c20
Revert submission 16468379
Reason for revert: Feature development is moving to T.
Reverted Changes:
Id9b9a8930:[3/n] Camera Compat UI: Add a camera compat contro...
Id6be4a954:Enable a camera app compat control on Large screen...
I083aa6718:[2/n] Camera Compat UI: Add interfaces for client-...
Bug: 206602997
Change-Id: I318b89b87cd3b05a3f3dcd428e3d80fe81465011
Before this change, margin between a hint and a camera compat control was smaller than required 8 dp while for a size compat control it was bigger than 8dp (since ag/16420818). This change makes them consistent and also simplifies layout definition for the size compat button by declaring margings explicitly rather than including them in width and height implicitly.
Test: manual
Bug: 206602997
Change-Id: I09839e764d2c8904954a594433888bfdc21d56ba
First CL in the chain that will add a camera compat UI control which will be used to correct stretched issues in TextureView and SurfaceView cause by apps not handling mismatch between camera buffers and view size correctly.
This change is necessary because right now there are 2 instances of WindowlessWindowManager (SizeCompatUIWindowManager) in SizeCompatUILayout: for a hint and for a restart button. They are also positioned relatively by computing offsets in java code rather than by specifying layout with XML. This code structure will cause issues since with upcoming camera changes there will be a need to coordinate relative position of 4 UI elements (2 buttons and 2 hints).
What is changing in this CL:
- Majority of changes are simple renaming from "size compat UI" to "compat UI" since, starting from the next change, two different compat controls will be supported.
- Merging 2 instances of SizeCompatUIWindowManager into one (CompatUIWindowManager) and for that create a joint layout in compat_ui_layout.xml
- Merge SizeCompatLayout logic into CompatUIWindowManager since in absence of 2 instances of WindowlessWindowManager there is no good reason to keep them separate.
- Merging and renaming tests to follow refactoring of the implementation.
Test: atest WMShellUnitTests (the same set of tests should be sufficient since this refactoring just reorganized the structure of the implementation)
Bug: 206602997
Change-Id: I7141c69b7ba4742c5b7b2018329b91a1b37b45bc
PiP window stays where it is instead of moving to the center and
the menu buttons are shown on centered on the pip instead of below
the window.
Additionally disabled menu items are removed to avoid cluttering.
Bug: 201270615
Test: manual
Change-Id: I9af5dc04dd0999d61add88a3475c697b376034d0
- Certain system ui implementations which use the shell don't depend on
SystemUI-core, which means that the dagger modules for providing the
core Shell components need to be copied (which makes it more cumbersome
to make changes). Instead, move these modules back into the shell lib
for any SysUI app to reference.
Bug: 205019015
Test: make SystemUIGoogle
Test: make CarSystemUI
Test: make ArcSystemUI
Change-Id: I8dc938a7695972f9d7b3d7ea8e3ce65a7b454b13
Add a new "enter split" button that allows user to go directly into
split screen on large screen devices from PiP.
- Add button
- Calculate split-screen location based on current PiP bounds
- Merge all WCT into one after animating
Video: http://recall/-/gu5DjQFZPMFpwgaXdl4cV3/gnNkSpC72tlTGP2mrKR07R
Bug: 202740657
Test: Enter PIP, open another app, tap "enter split"
Change-Id: I0829c910b2873ed4c4b0ea4fe0ca28b7f87736d8
The width of the hint is constant but the height changes with respect to the number of lines the text requires (see screenshots below). The X position of the hint is set programmatically so that the point's center will be aligned with the button's center.
Still need to add UI for different states of the button (pressed, focused, etc.) and maybe also the hint (since it's clickable). Mocks for this are still TBD.
Mocks: https://www.figma.com/file/fLAVOdDkg0lnFWiltSYbGA/Multitasking?node-id=2719%3A54196
Screenshots:
[default - 2 lines] http://screen/4EtytFiKsY3Q5NE
[LTR language] http://screen/9BSPipZYUd7UGPV
[short text - 1 line] http://screen/AN5bds6rh5V55Bw
[large font - 3 lines] http://screen/6utG596y52LBDjX
[long text - 4 lines] http://screen/7mBL2fXWy43UsTq
Bug: 198347324
Test: atest WMShellUnitTests:SizeCompatRestartButtonTest
Test: atest WMShellUnitTests:SizeCompatHintPopupTest
Test: atest atest WMShellUnitTests:SizeCompatUILayoutTest
Change-Id: Ida4c4171be94b60499cfe8acb6a2278f7e10a1f3
On large rounded corner devices, Rounded corners around divider
cannot display right corner path because it need more space to
draw corners and divider bounds is fixed.
Fix this by enlarging the divider window bounds. However, if we only
enlarge it, it will cause divider touch region too big to make app
hard to interactive. Therefore, migrate touch region setting logic
in legacy split to here, only set divider handle view size as touch
region.
Fix: 202808282
Test: flash on barbet and active split screen to check
Test: pass existing tests
Change-Id: If292c0d4c598d75672ec821d1fee45a8892b236f
Use the same way to draw rounded corners beside divider bar with
display and task bar to make sure all rounded corners share the same
style.
Bug: 196272915
Test: atest WMShellUnitTests
Test: manul check the rounded corners rendered in proper position.
Change-Id: I566ef5233dc345e0229fd9637c3b05705ba35864
Draw rounded corners beside divider bar which inset with task bar if
the task bar is expanded.
Bug: 196272915
Bug: 182511830
Test: atest WMShellUnitTests
Test: manul check the rounded corners rendered in proper position.
Change-Id: I14c5a9416d52bf06b3e4c8ac843c5a65c0b940b8
And remove something unused.
Test: manual - expand bubble on large screen, note that
size of expanded view is ~72% of screen
- check that it's the full width on phone
Bug: 193910391
Change-Id: I4c2060d84db10b5b0d8f30e2530c743d6045486e
- Restrict the width of the education views when
on a large screen device
- Rather than hardcode the position / padding for
the education views, figure it out based on where
the view is on the screen so that it's a little
less brittle.
- Recreate the views for theme or display size change
Test: visual - verify the user education screens
look correct in phone and on large screen
in both portrait & landscape
- change display size & verify education
is still visible & sized appropriately
Bug: 186776550
Change-Id: I1c77a810339448d61b570eb158848c15b2df96c8
On phone we use 60% of the screen which is huge on
tablet. This change uses 30% of the screen for the
flyout on large screens & enforces a minimum for
that value.
Test: manual - get a long message in a bubble on a
tablet, it should have similar width
as it does on phone.
Bug: 186776550
Change-Id: I500c566edd9941dc2bd149692eaf95c6e6f4aa61
- manage button should be inset from the expanded view edge
but the menu should be flush with expanded view edge.
- button size is smaller (36dp instead of 40dp)
- more padding (16dp above / below on both tablet & phone)
- diff colour N1-800 instead of N1-900
Test: visual 1 - expand a bubble and look at 'manage' button
2 - tap on the button and look at the menu
3 - do 1 & 2 on tablet & in RTL & on phone
landscape
Bug: 183658858
Change-Id: I4b5ffc26602b72ee28d26476fc222df3e2e1e80b
- padding & size updates
- scrim between bubble expanded view and the manage menu
Test: manual - expand a bubble, tap on the manage menu, it
should animate in with a scrim behind it.
Bug: 183658858
Change-Id: I3053cdb61497434a0aeb49eb33f87a3dafb364d7
1) Add OneHandedEventCallback for WMShell to register
callback, and if one handed mode settings set show
notifications, when user tap one handed mode shortcut
notify WMShell send KEYCODE_SYSTEM_NAVIGATION_DOWN
through OneHandedEventCallback with SysUIMainExecutor.
2) Add isReady() flag in OneHandedDisplayAreaOrganizer
and Simplify the flow of onActivatedActionChanged()
to prevent potential race problem while auto-enable
One-handed and immeditately startOneHanded(), however,
DisplayAreaOrganizer#onDisplayAreaAppeared() may not
ready for transtion yet, and result mState keep in
unfinsihed STATE_ENTERING.
3) Adjust the transiton duration from 800ms to 600ms
800ms is a little bit long to affect timing of
apply runtime overlay package.
4) DelayExecute setEnabledGesturalOverlay() until
transition finised and at most delay once.
- onSwipeToNotificationEnabledChanged() : DelayExecute
- onEnabledSettingChanged() : DelayExecute
- Ctor setupGesturalOverlay() : No DelayExecute
- mState.isTransitioning() : DelayExecute
Test: WMShellUnitTests
Bug: 182425480
Change-Id: I2615c3b30ad95a858510b4bcc73d8f343843fc96
Included in this CL
- Increase the corner radius from 8dp to 16dp
- Scale the round corner radius in transition
Tested with the following scenarios
- Enter PiP in button navigation mode
- Double-tap to resize PiP
- Pinch to resize PiP
TODO
- Round corner when enter PiP with auto-enter being enabled
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/gA2dQNBNTA8xFExWqmOkRY
Bug: 187441996
Test: manual, see video
Change-Id: I43db31f966007795351a8e2ca7dd08417f6f0df7
- large colored circle, uses same accent color that launcher
has for remove / uninstall
- added a shrink animation for the target when the bubble is
stuck via the magnet
- no longer desaturate the bubble being dismissed but rather add
a bit of an alpha
Bug: 183657564
Test: manual - get a bubble, drag it around & dismiss it, notice
the animation
Change-Id: If0d0d86b7389f0fa3314598266cd83ecabdc6a9b
* adjust the default spacing so that its small enough that 5 bubbles
can show on crosshatch (5 is the default)
* Add max bubbles to BubblePositioner, replace the other usages
Test: atest BubbleDataTest
Test: manual - have 5 bubbles
- adjust screen size to largest
- open the stack
=> notice that the number of bubbles have changed and
they all fit on the screen without overlap
- repeat & check the different densities
Bug: 187715444
Change-Id: I4794ed89541eeb573c367748f980cf7ffe45d3f3
* Update sizes of badge & bubble; also simplify some of the sizing
code, we can do it with just the overall size
* Simplified things, instead of the inner / outer sizes just use
the overall size
Test: visual - create a bubble and look at the size of the bubble and
badge
visual - have some bubbles, change display size, create a new
bubble & verify that all of the sizes are the same
Bug: 183657577
Change-Id: Ibd8609a8737bb0a57519fa70fba17138bb69b379
* 16dp on either side / from edge of screen for the bubble view
* 16dp between bubble row & expanded bubble rect (works out to 5dp
in code: 16dp - 2dp (badge overhang) - 9dp (pointer height)
* max 8dp between the bubbles in the top row
* manage button has some adjustments - 8dp above & below and is total
32dp from edge of screen; ensure manage button is centered between
bottom inset & bottom of expanded view
* fixes a bug where there was extra padding being at top of expanded
view in landscape mode
* removed an unused layout file & unused dimens
Test: visual - expand a bubble, look at spacing of everything on
screen; do the same in landscape from left and right
edges of the screen.
Bug: 187715439
Bug: 183658029
Change-Id: I29e699aaf9b6e7bf75447dac6aa6b00a7b272b8b
Let the icon size can be read accorss Launcher and WMShell.
Devices can overlay these values if needed.
Bug: 177264697
Test: Manual verify icon size on splash screen.
Change-Id: Ia9f76cd3f4a9869ae2966d59d9204e4df94119e5