This commit re-organizes `lawn/`'s `strings.xml` code files for clarity and also adds a simple naming scheme. The strings will probably be renamed soon, since I don't have the time to do all of that
* Add option to make all widgets resizable.
* Split setting for unlimited size and forcing.
* Update labels and add description to settings.
* Fix build error.
---------
Co-authored-by: SuperDragonXD <70206496+SuperDragonXD@users.noreply.github.com>
There were some themes that were remove during the 14 and 13 merge. This commit attempt to fix it.
---------
Co-authored-by: John Andrew Camu <werdna.jac@gmail.com>
* Toggleable new bouncy consolidated popup (MATERIAL_U_POPUP)
* Fix typo in calling PreferenceManager2
* Import FeatureFlags
* Get ctx in SDL
* Get ctx instead of this
* Correct type for context
* Import Context
* insert commit message here!
* I forgot I can just apply this neatly trick after looking at the code for 5 secounds
* Move to appropriate category
Co-authored-by: MrSluffy <werdna.jac@gmail.com>
Lawnchair (Debug) bug report Jan 26, 2024 08:39:37
version: 14 Dev (#397) (14)
commit: 0312589
build.brand: samsung
build.device: a13
build.display: TP1A.220624.014.A135FXXS5CWJ1
build.fingerprint: samsung/a13nnxx/a13:13/TP1A.220624.014/A135FXXS5CWJ1:user/release-keys
build.hardware: exynos850
build.id: TP1A.220624.014
build.manufacturer: samsung
build.model: SM-A135F
build.security.level: 2023-10-01
build.product: a13nnxx
build.type: user
version.codename: REL
version.incremental: A135FXXS5CWJ1
version.release: 13
version.sdk_int: 33
display.density_dpi: 420
isRecentsEnabled: true
error: Uncaught exception
java.lang.NullPointerException: Attempt to read from field 'android.content.ComponentName android.appwidget.AppWidgetProviderInfo.provider' on a null object reference in method 'void com.android.launcher3.Launcher.completeAddAppWidget(int, com.android.launcher3.model.data.ItemInfo, android.appwidget.AppWidgetHostView, com.android.launcher3.widget.LauncherAppWidgetProviderInfo)'
at com.android.launcher3.Launcher.completeAddAppWidget(Launcher.java:1540)
at com.android.launcher3.Launcher.lambda$completeTwoStageWidgetDrop$4(Launcher.java:1076)
at com.android.launcher3.Launcher.$r8$lambda$HrxqTqYL9MXyAX5QkHjDnruo6Sc(Unknown Source:0)
at com.android.launcher3.Launcher$$ExternalSyntheticLambda9.run(Unknown Source:8)
at com.android.launcher3.Workspace$5.run(Workspace.java:3199)
at com.android.launcher3.anim.AnimatorListeners$1.onAnimationEnd(AnimatorListeners.java:54)
at android.animation.Animator$AnimatorListener.onAnimationEnd(Animator.java:600)
at android.animation.AnimatorSet.endAnimation(AnimatorSet.java:1301)
at android.animation.AnimatorSet.doAnimationFrame(AnimatorSet.java:1086)
at android.animation.AnimationHandler.doAnimationFrame(AnimationHandler.java:307)
at android.animation.AnimationHandler.-$$Nest$mdoAnimationFrame(Unknown Source:0)
at android.animation.AnimationHandler$1.doFrame(AnimationHandler.java:86)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1299)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1309)
at android.view.Choreographer.doCallbacks(Choreographer.java:923)
at android.view.Choreographer.doFrame(Choreographer.java:847)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1283)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8757)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
Lawnchair (Debug) bug report Jan 28, 2024 4:43:00 PM
version: 14 Dev (b585d3f) (14)
commit: b585d3f
build.brand: Xiaomi
build.device: vince
build.display: QQ3A.200805.001
build.fingerprint: google/angler/angler:7.1.2/N2G47H/3783593:user/release-keys
build.hardware: qcom
build.id: QQ3A.200805.001
build.manufacturer: Xiaomi
build.model: Redmi 5 Plus
build.security.level: 2023-04-05
build.product: qassa_vince
build.type: user
version.codename: REL
version.incremental: 92d526381b
version.release: 10
version.sdk_int: 29
display.density_dpi: 440
isRecentsEnabled: true
error: Uncaught exception
java.lang.NoSuchMethodError: No virtual method setPendingIntentBackgroundActivityStartMode(I)Landroid/app/ActivityOptions; in class Landroid/app/ActivityOptions; or its super classes (declaration of 'android.app.ActivityOptions' appears in /system/framework/framework.jar)
at com.android.launcher3.widget.LauncherWidgetHolder.getConfigurationActivityOptions(LauncherWidgetHolder.java:299)
at com.android.launcher3.widget.LauncherWidgetHolder.startConfigActivity(LauncherWidgetHolder.java:261)
at com.android.launcher3.AppWidgetResizeFrame.lambda$setupForWidget$1(AppWidgetResizeFrame.java:255)
at com.android.launcher3.AppWidgetResizeFrame.$r8$lambda$Qz8LgkHxjFnttBxFiB7ge472N5c(Unknown Source:0)
at com.android.launcher3.AppWidgetResizeFrame$$ExternalSyntheticLambda3.onClick(Unknown Source:2)
at android.view.View.performClick(View.java:7266)
at android.view.View.performClickInternal(View.java:7243)
at android.view.View.access$3600(View.java:801)
at android.view.View$PerformClick.run(View.java:27904)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7396)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Fix crashing:
```
Process: ch.deletescape.lawnchair.plah, PID: 26755
java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.launcher3.dragndrop.DragView.animateShift(int, int)' on a null object reference
at com.android.launcher3.popup.PopupContainerWithArrow$LauncherPopupItemDragHandler.onLongClick(PopupContainerWithArrow.java:827)
at android.view.View.performLongClickInternal(View.java:7586)
at android.view.View.performLongClick(View.java:7544)
at android.widget.TextView.performLongClick(TextView.java:12974)
at android.view.View.performLongClick(View.java:7562)
at android.view.View$CheckForLongPress.run(View.java:29292)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7872)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
```
* Entering and leaving search now takes effect right away.
* Should fix race in which tapping an app while search results are
loading causes a tap on the previous app in the position, rather
than on the search result.
* Helps prevent the scrollbar from appearing to be scrolled down
somewhat when leaving search with floating header rows present;
still happens sometimes, though (on stock OS launcher, too).
Change-Id: I67bc59456eb2e57e13b1b99509d3313ff0243b88
Description:
Compute a child location by recursion, it
may not have parent view.
When the child doesn't have parent, should
break the recursive.
Change-Id: I8707712b85c10bf1c1d3860c5b8323aefd455cf2
CRs-Fixed: 1104931
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: Mohammad Hasan Keramat J <ikeramat@protonmail.com>
Background activity launch (BAL) hardening in Android 14 prevents the
creation of widgets if background launching isn't explicitly allowed
for the widget configuration activity.
Issue: calyxos#1917
Change-Id: Ic8696154bab49de78d1554d61a64b634766ae469
For notification background. Telegram does it for example.
Just assume contrast is fine in this case.
Log:
E AndroidRuntime: FATAL EXCEPTION: main
E AndroidRuntime: Process: com.android.launcher3, PID: 2885
E AndroidRuntime: java.lang.IllegalArgumentException: background can not be translucent: #0
E AndroidRuntime: at androidx.core.graphics.ColorUtils.calculateContrast(ColorUtils.java:161)
E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.findContrastColor(IconPalette.java:126)
E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.ensureTextContrast(IconPalette.java:112)
E AndroidRuntime: at com.android.launcher3.graphics.IconPalette.resolveContrastColor(IconPalette.java:71)
E AndroidRuntime: at com.android.launcher3.notification.NotificationInfo.getIconForBackground(NotificationInfo.java:124)
E AndroidRuntime: at com.android.launcher3.notification.NotificationMainView.applyNotificationInfo(NotificationMainView.java:207)
E AndroidRuntime: at com.android.launcher3.notification.NotificationContainer.applyNotificationInfos(NotificationContainer.java:156)
E AndroidRuntime: at com.android.launcher3.popup.PopupContainerWithArrow.applyNotificationInfos(PopupContainerWithArrow.java:353)
E AndroidRuntime: at com.android.launcher3.popup.PopupPopulator.lambda$createUpdateRunnable$1(PopupPopulator.java:150)
E AndroidRuntime: at com.android.launcher3.popup.PopupPopulator$$ExternalSyntheticLambda0.run(Unknown Source:4)
...
Signed-off-by: Omkar Chandorkar <gotenksIN@aosip.dev>
Change-Id: I15e61c0610d2676467b57e636454b36aa628007e
Initial support quickstep, Android versions from Q to U, ensuring a smooth and efficient user experience. Enjoy effortless navigation and swift app switching on your Android device with QuickSwitch's compatibility across the Q, R, S, T, and U.
Co-authored-by: Goooler <wangzongler@gmail.com>
Co-authored-by: 无言 <57122860+liu-wanshun@users.noreply.github.com>