Commit Graph

82 Commits

Author SHA1 Message Date
Sunny Goyal 878aa33567 Using squared hypot to optimize some comparisions
Change-Id: Ia5b99c2e60eedf02dea26857819f0e13127db4e2
2019-05-20 15:20:47 -07:00
vadimt 8649cf29e4 Remove tracing for fixed bugs
Bug: 129434166
Bug: 131170582
Change-Id: Ia9b356594001d96c69ffbb7f8b767b2f54ed5feb
2019-05-01 16:10:56 -07:00
Sunny Goyal bfaa9760dd Updating the touch proxy logic:
In draglayer, we always dispatch touch events to child views. If the
touch originated from gesture area, when we dont route it through touch
controllers.
The proxy events are only send to touch controller. If any controller consumes
the event, then we cancel the view touch (pilferPointers)

This allows the controllers to work outside the dragView area, and prevents normal
view interaction when there is a window on top (like keyboard) while keeping our
activity focused

Bug: 131088901
Bug: 130618737
Change-Id: If033dde3a0f9cb6a6e449c9586c1fa050af5bdcb
2019-04-26 11:08:42 -07:00
Tony Wickham 9791bd1555 Swipe up on nav bar to go home from -1 and widgets
More specifically, any window (e.g. qsb search) or AbstractFloatingView.

NavBarToHomeTouchController now implements TouchController directly instead
of AbstractStateChangeTouchController, as it not only dealing with
launcher states. This makes it easier to override intercept logic to
handle cases like not having window focus, for example.

AbstractFloatingViews can createHintCloseAnim() to play an animation
hinting that it is about to be closed by swiping up. Widgets sheets use
this to pull back similar to the all apps transition to home.

Bug: 129976669
Change-Id: Ie157b978d9f1ee36d5fd32cea72ec02ce40878c0
2019-04-09 10:53:24 -07:00
vadimt 0b339b5273 Adding tracing for Lab-only flake: drag to workspace doesn't happen
Bug: 129434166
Change-Id: I4433a4848b57da42412a9108a0965ff13c708c39
2019-03-27 17:42:25 -07:00
Tony d5a3df7b83 Don't close popup container if touch came from nav bar
Moved EDGE_NAV_BAR from quickstep package to launcher3

Bug: 127917144
Change-Id: Ic619ea49896ca8e49a9a539b7dc7d682291241b7
2019-03-15 17:08:51 -05:00
Sunny Goyal 202ae0b0f5 Sending notification and widget changes to a listner so that
popups outside Launcher can also listen for changes

Change-Id: I2eb2d8374a6806381e1c682eaef3cc35f30693df
2019-02-11 16:23:11 -08:00
Sunny Goyal aae6fbb903 Moving some utility methods around
Change-Id: I8abca49a0dbf656212b21e0552502036a1619164
2019-01-31 16:07:40 -08:00
Sunny Goyal 8c48d8bea6 Changing min sdk to 25
Change-Id: I0d28069967854357ca755bf25dec19d4979bdecf
2019-01-29 11:29:52 -08:00
Tony Wickham f34bee819c Rename "badges" to "dots" where appropriate
This will reduce confusion with the other "badging" concept we use for,
e.g. work profiles. It is also consistent with the external name
"notification dots".

Change-Id: I2a2c9d96dc0d6284eb0c48adc78a856271caad4d
2018-12-04 10:46:40 -08:00
Vadim Tryshev fdfeb6dd3b Moving Pause button to the left of the context menu header
See this mock:
https://www.google.com/url?q=https://docs.google.com/presentation/d/1AepsnLeKcRhjMW35SkB5yMKO3u6waigug8Tyfe0LO5o/edit%23slide%3Did.g455d187f2a_0_45&sa=D&ust=1542320415002000&usg=AFQjCNH-jsy5THG1WqxjeYbj628QFMJKvQ

Bug: 117888000
Test: Manual
Change-Id: I1edbc569347f09f0806ad6749735c3dec198277a
2018-11-26 14:30:52 -08:00
Vadim Tryshev f908a2e50e Adding test methods
Bug: 117888000
Test: Running new Nexus tests
Change-Id: I52a1f89add36dd38bbae8db262dd2e82280db130
2018-10-25 11:43:59 -07:00
Zak Cohen 658c67a609 Deepshortcuts - only keep the per package shortcut count in memory.
Change to only keep the per Activity shortcut count in memory, not
the list of ids.
The full shortcuts are loaded at long press time so saves memory.

Bug:117239104
Test:Manual and ran instrumentation tests
Change-Id: Iee974ecba2c977216be4f078396ceed22b931f5d
2018-10-22 11:38:09 -07:00
Vadim Tryshev 9acafc228b Modifying SystemShortcut to enable support for RemoteAction
See the bug, comment #1 for details

Bug: 117888000
Test: manual test with a prototype
Change-Id: I0422df6006e2cfc7344fc3bee531341b11b1050e
2018-10-17 13:45:25 -07:00
Sunny Goyal 194f58525a Adding a provider class for various popup actions
so that it can be customized easily.

Change-Id: I633846631ac3d4c70ebb3ea35a3edc2feee8339e
2018-09-17 17:05:32 -07:00
Sunny Goyal db6cdb07e8 Exposing some private methods to easily customize widgets popup
Change-Id: Ie7bd879200b1f14d472ff03fd64429930651a39f
2018-08-02 14:41:08 -07:00
Sunny Goyal 87b5eb689b Exposing some private methods to easily customize arrow popup
Change-Id: I6f6dc0604a616f26c0879732a0237767ddbfdccc
2018-07-11 14:35:51 -07:00
Tony bb9378aead Unhide badge when popup closes without animation
Bug: 80379412
Change-Id: I7d6c1b67a07747078b43b17612d8c67a46c8cc0e
2018-05-29 14:44:41 -07:00
Sunny Goyal de75321542 Fixing wrong accessibility focus when opening a floating view
> Using common logic for announcing a floating view for widgets and folders

Bug: 79091095
Bug: 79748886
Change-Id: Ibb3fe48e68e724f50d69f51a03d3b35ad0baf625
2018-05-16 13:11:00 -07:00
Vadim Tryshev a50d99f1c1 Improving "shortcuts" window for TalkBack users
Using pane title, updating the description

Bug: 77633140
Test: Manual
Change-Id: Ia3a9ad75995a4cd3ada9b750e760161da70b9a7c
2018-05-07 13:25:39 -07:00
Jonathan Miranda 80be805996 Merge "Fix bug where BTV text alpha stays 0 when PopupContainer closed w/o animation." into ub-launcher3-master 2018-04-06 16:30:43 +00:00
Jon Miranda 0fd7c6c9da Fix bug where BTV text alpha stays 0 when PopupContainer closed w/o animation.
Bug: 77565147
Change-Id: I71501c7a65369386efcb7b1a36f19b117e119ed9
2018-04-05 15:23:41 -07:00
Tony Wickham c51493d281 Don't let touches go through popup when notification is present
Bug: 76139059
Change-Id: I7d39fbeb60e871eeadedb8a3ee1ef81dc4e2f47e
2018-04-05 12:07:08 -07:00
Sunny Goyal 2fd7a8bc59 Updating the UI of the options popup to make it look similar to icon popup
Bug: 77327164
Change-Id: I3580df8bf8a43cb44123f203ffed9a85fa33aea7
2018-04-02 12:28:47 -07:00
Sunny Goyal 0b0847b272 Fixing taskMenu and taskView clicks in fallback activity
> Extracting common methods from Launcher & DragLauncher to base classes
> Remoting some dependencies on Launcher and using the base class instead

Change-Id: I121cacf8a14190b4703cda60bdeb4f79eee69ded
2018-03-15 17:29:43 -07:00
Sunny Goyal 8a2a63b3f0 Moving click and long click handling for items from launcher to separate class
Change-Id: I1d12862205f7fa7f3671ff351e66dba58bb430e2
2018-03-08 15:21:42 -08:00
Sunny Goyal 02424b20f3 Adding a horizontal popup when when workspace is longPressed
Change-Id: I5b3c48262c246bfe53e0010ca89c820f42503eef
2018-01-19 15:11:10 -08:00
Tony Wickham 49556b1f11 Fix regression with popup refactor
System shortcuts used to be a child of the popup, so we were
telling the parent to close; now the popup should just close
itself.

Bug: 71517074
Change-Id: I5c359f1169fee155790a30b6ed4a0464ef8fc043
2018-01-16 15:17:28 -08:00
Sunny Goyal 179249d804 Dominant color is part of icon cache
> Calculating extracted color during icon generation and storing it in model and DB
> Removing unused logic avoid various types of badge rendering
> Icons are badged with extracted colors, while folder is badged with theme color

Bug: 35428783
Change-Id: I93e30c52fbded7515c3ae1778422e84672eafb56
2018-01-03 16:55:58 -08:00
Tony efacffa08a Fix popup container alignment issues
- Arrow did not line up with the icon when right aligned
- Popup was always centered horizontally in RTL instead
  of aligning with the icon

Change-Id: I90e065d0b0c1c59166e5c2e5de5e6cff9126ee6f
2017-12-22 13:54:08 -08:00
Sunny Goyal d0030b05f5 Adding placeholder method for compat implementations for Accessibility manager
> Moving some utility methods to the compat class

Bug: 69611105
Change-Id: Ide0cab0b926d7bc03617fc568d2a2b429ee00cd9
2017-12-08 16:09:45 -08:00
Sunny Goyal 00ac920241 Simplifying app icon popup
> Using a single linearLayout instead of multiple nested views
> Using clipToOutline for rounded corners instead of using canvas.saveLayer
> Removing nested view elevations and overdraw
> Using LayoutTransition for animating layout changes, instead of manually creating animators

Change-Id: I8e57092f52ca5a032a2756594fdd39788acc5a0d
2017-11-15 16:43:20 -08:00
Sunny Goyal 1797af41d1 Cleaning up drag state management.
When the drag is started, the UI automatically goes into spring loaded mode. On a successful
drop, it is the responsibility of the {@link DropTarget} to exit out of the spring loaded
mode. If the drop was cancelled for some reason, the UI will automatically exit out of this mode.

Bug: 34692289
Change-Id: Ic611739a43bb8d9279b587aaee3039326c143e8b
2017-10-16 13:06:52 -07:00
Sunny Goyal 10a1bd0e65 Converting PopupContainerWithArrow into a base class so that it is easier
to create other types of popup

Bug: 67585158
Change-Id: I966ae7bb90f941951b26feaf71b3ea30c3f3c0cc
2017-10-10 10:28:05 -07:00
Sunny Goyal 1ce9c476f7 Removing some methods from the DragSource
This makes is easier to create new DragSource and sets up
proper default values in DragOptions

Change-Id: I6cb0b1df41b9730cf29f785fe85fe7f0b573ee3a
2017-10-03 16:18:46 -07:00
Sunny Goyal 3792096688 Allowing the widgetBottomSheet to be dragged
even when the touch is started from outside the panel

Removing various instanceOf checks in onNewIntent and onBackPress
and moving all the corresponding logging in the FloatingView
This simplifies handling of panel specific log and avoids
missing a particular panel type in the if-else statement.

Bug: 64751884
Bug: 64751923
Change-Id: I98f5aae18560a64be73c9efcf495479740d49a00
2017-10-02 16:18:52 -07:00
Tony Wickham 2063ebd990 Adjust notification paddings
- Reduce main notification height
- Increase header height and center "Notifications"
- Footer has short height when empty to serve as padding

Bug: 65215656
Change-Id: I691d176628b0b51e8d9af030084b8c29837778dc
2017-09-06 13:37:00 -07:00
Hyunyoung Song 27790352a3 separate enforceContainerWithinScreen logic to a private method
Change-Id: Ifcf8c6a79286269646a845b5be6cfa92b64fcbcc
2017-07-20 13:57:23 -07:00
Hyunyoung Song 435a35dec3 PopupContainerWithArrow should align correctly in RTL mode
Test: see attached screenshot in the bug

Bug: 63721807

the horizontal gravity enforcement has to be done on (left+translateX) value
and not just translateX. Hence that enforcement has been moved to onLayout.

Change-Id: I9b6502dc55d59e04a406ebe71ac3b649b31d6088
2017-07-19 12:35:11 -07:00
Tony 45cdfa78d4 Polish popup
- Remove divider between system shortcut header and shortcuts
- Slightly reduce padding between popup and icon
- Fix gravity to center in drag layer using x and y calculations since
  we use the y value to position the popup when removing notifications

Change-Id: I1cb10ed953d11cc0924d8ee70881a434cb748317
2017-07-05 12:32:16 -07:00
Tony d6573ed128 Tweak popup animation
- Decrease duration
- Add alpha fade in and out
- Remove arrow scale when closing, so that
  the reversal happens immediately

These changes help the popup feel snappier while also reducing
visual jank when moving icons (as the animation accelerates in
later and the alpha stays close to 0).

Bug: 62738635
Change-Id: Ic8af4e0e5bc00913ea713853997069e8b9c8f953
2017-06-29 13:43:35 -07:00
Tony 7308cde2ca Don't fade in text if icon is in hotseat
Bug: 63011217
Change-Id: Ie914fcdfd0bf36b0cf12cc54f4e93206aa1074bd
2017-06-28 13:47:18 -07:00
Tony Wickham aa2272f81c Popup visual changes
- Don't remove elevation during animation (b/62905720)
- Other adjustments (b/35766387)
  - Add "gutter" between notification and shortcuts
  - Change shortcuts to always be primary color (e.g. white)
  - Scale down shortcut icons when notifications present
  - Apply icon extracted color to "Notifications" header

Change-Id: Idf791dc76d15d05d246000ad73810916d7cd1750
2017-06-27 19:43:18 -07:00
Mario Bertschler a3f91c9752 PopupContainerWithArrow accepting bubbletextview without icon being set.
Change-Id: I5f58c339c094b4a88adf27c2ecaa01ba052b2285
2017-06-22 12:00:07 -07:00
Tony Wickham 5a1ca5756e Adjust some sizes in popup
- Increase main notification height and pad text/icon bottom
- Reduce shortcuts height when there are notifications to 48dp
  - When the last notification is dismissed, animate back to 56dp

Bug: 35766387
Change-Id: I84f843c042137fdf93fa720802eb2f19337197b4
2017-06-19 18:42:46 -07:00
Tony Wickham 034d74da19 Merge "Show more shortcuts when last notification is dimissed" into ub-launcher3-dorval-polish 2017-06-20 01:36:55 +00:00
Tony 8f402808e4 Fade original icon's text in as popup closes
Bug: 62444131
Change-Id: If8f91d8455a5952d252f9cdd1b211afb5ee035c7
2017-06-16 17:24:54 -07:00
Tony 887bd1fe1a Show more shortcuts when last notification is dimissed
We currently only show 2 shortcuts when notifications are
present, but support up to 4 otherwise. With this change,
the hidden shortcuts are added back after dismissing the
notifications, instead of only after closing and reopening
the container.

To ensure the transition is as elegant as possible, we also
separated the shortcuts header from the rest of the shortcuts.
That way we can reveal the new shortcuts without removing the
header (the shortcuts come out from behind the header).

Bug: 38036250
Change-Id: Ie9ab35f9be57cec1d5345e9e70e84e09ea52c9fc
2017-06-15 16:21:34 -07:00
Tony Wickham 0ecf5bcfcb resolve merge conflicts of 7092db024 to ub-launcher3-dorval-polish
Test: I solemnly swear I tested this conflict resolution.x
Change-Id: I0f9ed3d42fcb04299c3c23d06629f855614c0538
2017-06-08 15:49:07 -07:00
Tony Wickham 7092db0241 Add support for color extracted notification dots
Changing the badge_color in colors.xml to transparent
will cause them to be color extracted.

When an extracted color is used in the IconPalette, we
desaturate the background. Otherwise we respect the
exact color specified in colors.xml.

Change-Id: Ie82d0c5335fa5f24d4cc47766e4c1719c4916f8b
2017-06-08 21:08:47 +00:00