Fixed padding issue (tightness) between Personal/WorkTabs/EduDialog
Aligned Work Toggle button to be the same with the workTabs/eduCard
raised button up 20dp to align with specs
Fixed issue where allApps apps invade the tabs. Fixed RTL issues where it wasn't going RTL.
Fixed RTL issue for the workfab button where there was no margin on the left side of the button
Added DeviceProfile to constructor
Bug: 200810328
Bug: 224731300
Test:
Before: https://screenshot.googleplex.com/6sRgNZQz4wKYn5n
After: https://screenshot.googleplex.com/8hBLyDiMbMH9tn2
After(showingLayoutBounds): https://screenshot.googleplex.com/MuVUXCegukAMzSr
Change-Id: Ibac3f5b8fe7d877c2f54a2c87f4393c1a91dc806
- Log Home -> Overview gesture
- Log Home -> quickswitch as LAUNCHER_QUICKSWITCH_RIGHT
Bug: 219686410
Test: Local log in StatsLogCompatManager
Change-Id: Ic88fefd5af58dc03779f77b12611843c40706b1c
The recents animation can sometimes start before launcher has started when started with 3-button mode. This causes the animation to start before the recents UI has been initialized by Launcher. Added a callback to properly synchronize launcher start and the recents animation.
Fixes: 229360539
Test: started the recents animation and checked logs (order of operations), when the recents animation or launcher started first
Change-Id: I5938bbba778a2886b4a1e4ee4844eaf28c6fac0e
Switching to overview shortly after switching to 3-button mode caused a janky animation if the PagedView wasn't properly initialized yet. Moved the animation to a callback.
Fixes: 203632659
Fixes: 223719200
Test: manual
Change-Id: I8a345036c6b7322ae3fa50a23bcb7522f57c8a90
This removed unnecessary componentName lookups when it
is not required. Many checks just rely on IDs and
userHandle
Bug: 231153610
Test: Presubmit
Change-Id: Ief93954abc5861062a9f55dc2ef181d3de106c62
Launcher was estimating the landscape insets incorrectly
causing the UI to get reloaded if device is rotated. This also
caused widgets to be refetched as a result of grid size change
Bug: 218067434
Test: Verified locally that the window bounds do not change
Change-Id: Ia7228296c78ea3056f4859e43696d4bfd9522d3c
Bug: 221455508
Test: opened all apps, widgets, -1 screen, notifications shade and keyboard in various combinations and orders; locked screen, launched app, returned home with the back/home buttons, opened overview
Change-Id: Ia0b406aacf72b34bd6b7ff1c01278ab6895a7da4
Merged-In: Ia0b406aacf72b34bd6b7ff1c01278ab6895a7da4
(cherry picked from commit 9c1a452a1d)
ALL_APPS State
HOTSEAT_ICONS got added to visible elements for ALL_APPS State in ag/16992837.
============================================================
Phone
Before:
HotSeat present in view hierarchy - https://hsv.googleplex.com/4906040983289856?node=41
Video: https://b.corp.google.com/issues/228803923#comment9
After:
HotSeat not present in view hierarchy - https://hsv.googleplex.com/5379653922455552?node=42
Video: https://b.corp.google.com/issues/228803923#comment11
============================================================
Tablets
I couldn't test this implementation on tablet. But I have verified on a phone
locally by adding HOTSEAT_ICONS to visible elements and then verifying
"IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS" get set and hotseat icons are not focusable in all apps.
Video : https://b.corp.google.com/issues/228803923#comment14
============================================================
Bug: 228803923
Bug: 227565451
Test: Manual. See the video attached in bug.
Change-Id: I055e3bb61c8cfd240e0fe1000fe3a391a150f6d1
- Avoid overriding interpolator in AllAppsTransitionController.setStateWithAnimation as it's no longer needed and it'll wrongly override interpolator for ANIM_ALL_APPS_FADE
- Override ANIM_ALL_APPS_FADE to FINAL_FRAME in QuickstepAtomicAnimationFactory for tap deadzone to dismiss animation, also added EMPHASIZED_ACCELERATE for the dismiss animation
- Tuned dismiss animation across form factors to 300ms
Fix: 220336617
Test: manual
Change-Id: I4b3e827b503dcb1dd39f0bd99d4c1dd5ffdba0f3
This reverts commit 6729f0b950.
Reason for revert: This change caused b/230648542.
Please see https://b.corp.google.com/issues/230648542#comment5 for the video after reverting this change.
Bug: 206905515
Bug: 230648542
Change-Id: I85f063c56cad137c05b810204244bba7e8f94ee7
Actual problem space is to prebundle YouTube Shorts shortcut to the
JioPhone Next device. The parsers don't support parsing the deep shortcut. In this CL we have added support for parsing deep-shortcuts.
Test: Tested manually on device.
Bug: 227290255
Change-Id: I7ea240a29639b88254fa679733541ff98ddfaa48
- If a dragged item is not over a valid drop target
then we don't highlight anything and on drop we move
it back to its original position.
- Instead of checking if the dragged item is over the
hotseat view, now we check if the item is over the hotseat
shortcuts.
- Smartspace is a dead zone
Test: drag items from different workspaces, allapps, widget
picker etc. to all parts of the screen and verify which
view is targeted and where the item gets dropped.
Check on phone/foldable/tablet.
Bug: 228201267
Change-Id: I18de576ea300d58ae645e511b238e0b946b5595a
- Align overview actions to the top with a defined margin below task thumbnail, except for vertical bar layout
- In modal state, use task view's bottom as pivot, and expand using all the space about pivot
- Simplified overview actions margin calculation and moved some logic to DeviceProfile
Bug: 209981696
Test: manual on various devices
Change-Id: I4c96cb02c6f3d6adf30633ddeb883bc4eec16f36
This code contains utility clases that can change the display
of a device and make it look like another device.
The function DisplayEmulator#emulate receives a DeviceEmulationData
a certain grid to emulate and a callback, everyting that happens
inside of the callback will happen when the device is being emulated
and can be used by other tests.
Example test:
package com.android.launcher3.deviceemulator;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.MediumTest;
import com.android.launcher3.deviceemulator.models.DeviceEmulationData;
import com.android.launcher3.ui.AbstractLauncherUiTest;
import org.junit.Test;
import org.junit.runner.RunWith;
import java.util.concurrent.TimeUnit;
@MediumTest
@RunWith(AndroidJUnit4.class)
public class TestTest extends AbstractLauncherUiTest {
@Test
public void testEmulation() throws Exception {
String deviceCode = "pixel6pro";
DeviceEmulationData deviceData = DeviceEmulationData.getDevice(deviceCode);
String grid = "normal";
DisplayEmulator displayEmulator = new DisplayEmulator(mTargetContext);
displayEmulator.emulate(deviceData, grid, () ->{
TimeUnit.SECONDS.sleep(10);
return true;
});
}
}
Test: You could use the test above to make your device look like a
Pixel6 pro for 10 secons.
Fix: 229028257
Change-Id: Icd79be405a2e14dda0bc5f555b0e46149e16f912