Commit Graph

18886 Commits

Author SHA1 Message Date
John Andrew Camu 4530fc8c8e Fixed grid migration to keep item positions (#5114)
- Revised migrate method to process each screen independently, preventing
  merging of items from different screens
- Implemented dynamic item placement logic to maintain relative positions
  when changing grid sizes

These changes address issues with item positioning, screen merging, and
maintain a more intuitive layout when changing grid sizes. The migration
now respects the original screen structure and preserves relative item
positions as much as possible

- closes : #5016
- closes : #5003
- closes : #4809
2024-12-23 21:39:36 +08:00
MrSluffy 91971a7a0b fixed crashes in motorola a12
- closes : #5110
2024-12-22 12:04:22 +08:00
MrSluffy 29d3ad8891 feat : allow placing widget in hotseat 2024-12-21 13:42:03 +08:00
MrSluffy 491429c70e fixes in at glance
- closes : #5103
- closes : #5057
- closes : #5066
2024-12-21 12:12:04 +08:00
MrSluffy 2ca9e36c65 properly toggle dynamic hide statbar clock 2024-12-20 14:38:11 +08:00
MrSluffy 335b684bd0 add check and request storage permission 2024-12-20 09:48:49 +08:00
MrSluffy 4a5f397cb0 enhancement blur wallpaper and fixes
- closes : #4999
- closes : #4885
- closes : #4827
- closes : #4187
- closes : #4614
- closes : #4308
- closes : #4757
2024-12-20 08:37:46 +08:00
MrSluffy b2de03076a re-implement widget overlap option 2024-12-19 16:03:10 +08:00
MrSluffy f1a292495c clean-up migrated back to collect to list for lower v 2024-12-18 11:47:38 +08:00
MrSluffy 9d387bb310 fixed NPE's below R when close folder 2024-12-17 10:22:06 +08:00
MrSluffy 5dc8be9206 fixed custom pop up not closing
- closes : #5092
2024-12-17 07:30:35 +08:00
MrSluffy 91ed72f801 fix const value in bitwise shift for TYPE_COMPOSE_VIEW 2024-12-16 13:54:43 +08:00
MrSluffy c61dadd732 fixed disappearing folder app in folder to home 2024-12-16 13:49:39 +08:00
Pun Butrach a35070d8ad Use provided text and colour for widget add button (#5089)
* Use provided colour for widget add button

LC: Allow customisability to the Add Button
LC-Test: Press on any Widget on the Widget sheet

Tested: https://drive.google.com/drive/folders/19UkQPAbeLtg4sYUGXolCb8I7eYQfpU_Z?usp=sharing
Signed-off-by: validcube <pun.butrach@gmail.com>

* Remove slotPlateColor from ColorTokens.kt

---------

Signed-off-by: validcube <pun.butrach@gmail.com>
2024-12-15 19:49:27 +08:00
MrSluffy 6b5e912e10 enhancement folder related issues
- Closing from app to home where weird artifacts shown
- Duplicated icon after adding new icon in the folder
- Stuck icon when moving from app to home

closes the following
- #5084
- #5081
- #5074
2024-12-15 17:20:02 +08:00
MrSluffy 2c5cc568be Update IconShape usage to use INSTANCE for context-aware method call 2024-12-14 16:19:03 +08:00
MrSluffy 1db4bb0ee2 fixed masking when closing apps
1. Set icon pack
2. apps to home

closes : #5080
2024-12-14 16:03:05 +08:00
MrSluffy e0f63aa696 only listen on stat clock when it's default recent 2024-12-14 08:00:47 +08:00
MrSluffy 34db5dd801 Feat: Initial Impl to Hide Clock on Home Screen First Page
- TODO : only hide if there's a widget clock
2024-12-12 17:01:00 +08:00
MrSluffy 4feac9547f fixed crashes NPE's below 12 2024-12-12 08:41:23 +08:00
Rafael de Moura Dev 980fdda002 fix crash attempting to install/update apps (#5073) 2024-12-11 12:36:28 +08:00
MrSluffy 1a9982ad65 fixed issue applying lawnchair as recents provider in A15
- fixed animation app to home
- action buttons in recents
2024-12-11 12:27:09 +08:00
Rafael de Moura Dev 5e20759cc8 fixed NPEs below q(#5048)
* fixed java.lang.NoSuchMethodError: No interface method toList()

´´´
Ljava/util/List; in class Ljava/util/stream/Stream; or its super classes (declaration of 'java.util.stream.Stream' appears in /system/framework/core-oj.jar)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getFilteredWidgetsListForPicker(WidgetsModel.java:99)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getWidgetsListForPicker(WidgetsModel.java:122)
                                                                                                                            	at com.android.launcher3.model.BaseLauncherBinder.bindWidgets(BaseLauncherBinder.java:204)
                                                                                                                            	at com.android.launcher3.model.LoaderTask.run(LoaderTask.java:338)
                                                                                                                            	at android.os.Handler.handleCallback(Handler.java:873)
                                                                                                                            	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                                            	at android.os.Looper.loop(Looper.java:193)
                                                                                                                            	at android.os.HandlerThread.run(HandlerThread.java:65)

                                                                                                                            	´´´

* fix crashes when trying to customize from folders

* fix NoClassDefFound attempting to create new folder in lower apis

* fix java.lang.NoSuchMethodError: No static method beginAsyncSection(Ljava/lang/String;I)V in class Landroid/os/Trace; or its super classes (declaration of 'android.os.Trace' appears in /system/framework/framework.jar!classes2.dex) when adding widgets below Q

                                                                                                        	at com.android.launcher3.widget.LauncherAppWidgetHostView.setAppWidget(LauncherAppWidgetHostView.java:126)
                                                                                                        	at android.appwidget.AppWidgetHost.createView(AppWidgetHost.java:382)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createViewInternal(LauncherWidgetHolder.java:447)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createView(LauncherWi

* fix java.lang.NoSuchMethodError: No static method beginAsyncSection(Ljava/lang/String;I)V in class Landroid/os/Trace; or its super classes (declaration of 'android.os.Trace' appears in /system/framework/framework.jar!classes2.dex) when adding widgets below Q

                                                                                                        	at com.android.launcher3.widget.LauncherAppWidgetHostView.setAppWidget(LauncherAppWidgetHostView.java:126)
                                                                                                        	at android.appwidget.AppWidgetHost.createView(AppWidgetHost.java:382)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createViewInternal(LauncherWidgetHolder.java:447)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createView(LauncherWi

* fix                                                                                                     java.lang.NoSuchMethodError: No virtual method setSystemGestureExclusionRects(Ljava/util/List;)V in class Lcom/android/launcher3/AppWidgetResizeFrame; or its super classes (declaration of 'com.android.launcher3.AppWidgetResizeFrame' appears in /data/app/app.lawnchair.play.debug-ewPju7gaDxUbh-ipLPLIoA==/base.apk!classes6.dex)

* fix more NoSuchMethodError

* fix NPE´s

* fix: disable showing addButton widget as it not make sense i think

* fix  java.lang.NoSuchMethodError: No virtual method getInstallerUid()I in class Landroid/content/pm/PackageInstaller$SessionInfo; or its super classes (declaration of 'android.content.pm.PackageInstaller$SessionInfo' appears in /system/framework/framework.jar)
                                                                                                        	at com.android.launcher3.pm.InstallSessionHelper.getUserHandle(InstallSessionHelper.java:265)
                                                                                                        	at com.android.launcher3.pm.InstallSessionHelper.verify(InstallSessionHelper.java:164)

* fix  java.lang.NoSuchMethodError: No virtual method getInstallerUid()I in class Landroid/content/pm/PackageInstaller$SessionInfo; or its super classes (declaration of 'android.content.pm.PackageInstaller$SessionInfo' appears in /system/framework/framework.jar)
                                                                                                        	at com.android.launcher3.pm.InstallSessionHelper.getUserHandle(InstallSessionHelper.java:265)
                                                                                                        	at com.android.launcher3.pm.InstallSessionHelper.verify(InstallSessionHelper.java:164)

* Update InstallSessionHelper

* revert changes in BaseWidgetSheet

* apply changes from code review
2024-12-11 05:47:26 +08:00
MrSluffy f96609c40b Revert "fixed third party themed source"
This reverts commit ced2f5accb.
2024-12-09 08:59:48 +08:00
MrSluffy ced2f5accb fixed third party themed source
- revert 8f89197b61
2024-12-08 14:35:00 +08:00
MrSluffy 1b59c20031 use old collector to list to support later version 2024-12-06 09:37:45 +08:00
MrSluffy 798082d64c rectify settings config 2024-12-06 09:37:06 +08:00
Rafael de Moura Dev a35d1f2a68 some fixes for lower Android versions (#5046)
* fixed java.lang.NoSuchMethodError: No interface method toList()

´´´
Ljava/util/List; in class Ljava/util/stream/Stream; or its super classes (declaration of 'java.util.stream.Stream' appears in /system/framework/core-oj.jar)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getFilteredWidgetsListForPicker(WidgetsModel.java:99)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getWidgetsListForPicker(WidgetsModel.java:122)
                                                                                                                            	at com.android.launcher3.model.BaseLauncherBinder.bindWidgets(BaseLauncherBinder.java:204)
                                                                                                                            	at com.android.launcher3.model.LoaderTask.run(LoaderTask.java:338)
                                                                                                                            	at android.os.Handler.handleCallback(Handler.java:873)
                                                                                                                            	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                                            	at android.os.Looper.loop(Looper.java:193)
                                                                                                                            	at android.os.HandlerThread.run(HandlerThread.java:65)

                                                                                                                            	´´´

* fix crashes when trying to customize from folders

* fix NoClassDefFound attempting to create new folder in lower apis

* fix java.lang.NoSuchMethodError: No static method beginAsyncSection(Ljava/lang/String;I)V in class Landroid/os/Trace; or its super classes (declaration of 'android.os.Trace' appears in /system/framework/framework.jar!classes2.dex) when adding widgets below Q

                                                                                                        	at com.android.launcher3.widget.LauncherAppWidgetHostView.setAppWidget(LauncherAppWidgetHostView.java:126)
                                                                                                        	at android.appwidget.AppWidgetHost.createView(AppWidgetHost.java:382)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createViewInternal(LauncherWidgetHolder.java:447)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createView(LauncherWi

* fix java.lang.NoSuchMethodError: No static method beginAsyncSection(Ljava/lang/String;I)V in class Landroid/os/Trace; or its super classes (declaration of 'android.os.Trace' appears in /system/framework/framework.jar!classes2.dex) when adding widgets below Q

                                                                                                        	at com.android.launcher3.widget.LauncherAppWidgetHostView.setAppWidget(LauncherAppWidgetHostView.java:126)
                                                                                                        	at android.appwidget.AppWidgetHost.createView(AppWidgetHost.java:382)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createViewInternal(LauncherWidgetHolder.java:447)
                                                                                                        	at com.android.launcher3.widget.LauncherWidgetHolder.createView(LauncherWi

* fix                                                                                                     java.lang.NoSuchMethodError: No virtual method setSystemGestureExclusionRects(Ljava/util/List;)V in class Lcom/android/launcher3/AppWidgetResizeFrame; or its super classes (declaration of 'com.android.launcher3.AppWidgetResizeFrame' appears in /data/app/app.lawnchair.play.debug-ewPju7gaDxUbh-ipLPLIoA==/base.apk!classes6.dex)
2024-12-05 14:40:30 +08:00
MrSluffy 70fcc22f20 rectify crash on crdroid : https://paste.crdroid.net/7fKtss 2024-12-05 14:37:31 +08:00
MrSluffy 68a866d1d2 fixed crash when themed icons applied 2024-12-05 12:34:51 +08:00
MrSluffy 4b94189ee9 rectify themed icon not changing color 2024-12-05 11:07:23 +08:00
MrSluffy 8079af097b fixed java.lang.NoSuchFieldError: No instance field isArchived of type 2024-12-05 07:59:04 +08:00
MrSluffy 35a837067d re-impl themes in folder and widget head 2024-12-04 15:36:08 +08:00
Rafael de Moura Dev df1c9c6525 fix crashes when trying to customize from folders (#5040)
* fixed java.lang.NoSuchMethodError: No interface method toList()

´´´
Ljava/util/List; in class Ljava/util/stream/Stream; or its super classes (declaration of 'java.util.stream.Stream' appears in /system/framework/core-oj.jar)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getFilteredWidgetsListForPicker(WidgetsModel.java:99)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getWidgetsListForPicker(WidgetsModel.java:122)
                                                                                                                            	at com.android.launcher3.model.BaseLauncherBinder.bindWidgets(BaseLauncherBinder.java:204)
                                                                                                                            	at com.android.launcher3.model.LoaderTask.run(LoaderTask.java:338)
                                                                                                                            	at android.os.Handler.handleCallback(Handler.java:873)
                                                                                                                            	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                                            	at android.os.Looper.loop(Looper.java:193)
                                                                                                                            	at android.os.HandlerThread.run(HandlerThread.java:65)

                                                                                                                            	´´´

* fix crashes when trying to customize from folders
2024-12-04 15:00:44 +08:00
Rafael de Moura Dev c82e5d5de1 fix NoSuchFieldError (#5041) 2024-12-04 14:59:03 +08:00
MrSluffy 7e1b246e19 don't wrap adaptive for shortcut icon 2024-12-04 14:55:39 +08:00
Rafael de Moura Dev 0905d905c3 fix attempting to add new widget (#5038) 2024-12-04 12:52:03 +08:00
Rafael de Moura Dev 373b23b6ce fixed java.lang.NoSuchMethodError: No interface method toList() (#5037)
´´´
Ljava/util/List; in class Ljava/util/stream/Stream; or its super classes (declaration of 'java.util.stream.Stream' appears in /system/framework/core-oj.jar)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getFilteredWidgetsListForPicker(WidgetsModel.java:99)
                                                                                                                            	at com.android.launcher3.model.WidgetsModel.getWidgetsListForPicker(WidgetsModel.java:122)
                                                                                                                            	at com.android.launcher3.model.BaseLauncherBinder.bindWidgets(BaseLauncherBinder.java:204)
                                                                                                                            	at com.android.launcher3.model.LoaderTask.run(LoaderTask.java:338)
                                                                                                                            	at android.os.Handler.handleCallback(Handler.java:873)
                                                                                                                            	at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                                            	at android.os.Looper.loop(Looper.java:193)
                                                                                                                            	at android.os.HandlerThread.run(HandlerThread.java:65)

                                                                                                                            	´´´
2024-12-04 12:50:47 +08:00
MrSluffy b4bc798b50 fixed google feed
- closes : #4698 #4239 #4201
2024-12-04 12:47:47 +08:00
MrSluffy d1d2b9042e fixed widget don't load 2024-12-04 12:41:53 +08:00
Rafael de Moura Dev 6c02371cbf fixed crash api 28 (#5035) 2024-12-04 09:51:40 +08:00
MrSluffy 7fe40dca91 fixed app drawer header 2024-12-03 15:02:38 +08:00
MrSluffy 2edf315ec2 fixed auto-adaptive option 2024-12-03 10:00:21 +08:00
MrSluffy 61c3db874e fixed not applying icon pack 2024-12-02 11:04:37 +08:00
Pun Butrach 0b22694aa9 Allow Launcher3 to use grid/hotseat/icon size value (#5029)
* Allow Launcher3 to use grid/hotseat/icon size value

* Load grid overrides from DeviceProfileOverrides
2024-12-02 07:48:17 +08:00
MrSluffy 2b6e0defc0 fixed conflict com.android.window.flags 2024-11-23 19:25:44 +08:00
Rafael de Moura Dev 795fdb2948 Patch fix for Android 13 and below (#4978)
* Patch fix for Android 13 and below
tested in Android 9, 10 and 13 and works fine.

* fix crash dragging the icons from drawer to home screen

* use LawnchairWindowManagerProxy

---------

Co-authored-by: MrSluffy <werdna.jac@gmail.com>
2024-11-17 09:05:31 +08:00
Pun Butrach b86b188307 Make early stage of Lawnchair 15 launchable in A14 (#4975)
* Make Lawnchair 15 launchable in current state

* Allow LC to change DP without crash
2024-11-07 07:59:35 +08:00
MrSluffy f1d5d58e64 fixed more crashes 2024-11-05 23:13:57 +08:00
MrSluffy 95bf5aef9f fixes crashes 2024-11-05 22:11:23 +08:00