* 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
* 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)
* 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
´´´
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)
´´´
* 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>
- Also updated AnimatedFloat to accept a Consumer<Float>, so a lambda can be used as updateCallback with refernce to udpated value
- Also updated PendingAnimation to accept Animator with TimedInterpolator without specifying SpringProperty
Fix: 352195519
Test: manual
Flag: EXEMPT bugfix
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c378e64b757dbb83b6024be462a6752bc6a2c5f2)
Merged-In: Ifb78c1bcd3ca215a5d214f986a107d0988bff13b
Change-Id: Ifb78c1bcd3ca215a5d214f986a107d0988bff13b