lawnchair
lawnchair copied to clipboard
[BUG] Unable to add any widget
Describe the bug
Any attemp to add any widget results in a LawnChair crash, and no widget added.
Steps to reproduce
Steps to reproduce the behavior:
- Open "widgets" tab
- Select any widget
- Drag and drop it to the home screen
- Try to add it
Expected behavior
No crash, obviously, and a working widget.
Screenshots
https://github.com/LawnchairLauncher/lawnchair/assets/28765699/c3f92576-6319-4b52-8a35-6d0a3efa5c74
Device information
- Device: Samsung Galaxy A54
- OS: Android 14 (One UI 6)
- App version: 14.0 Dev
#774
Additional context
The main culprit seems to be com.android.launcher3.CellLayout.getUnusedHorizontalSpace()
Here is the log:
FATAL EXCEPTION: main
Process: app.lawnchair.debug, PID: 14419
java.lang.NullPointerException: Attempt to invoke virtual method 'int com.android.launcher3.CellLayout.getUnusedHorizontalSpace()' on a null object reference
at com.android.launcher3.Workspace.getFinalPositionForDropAnimation(Workspace.java:3137)
at com.android.launcher3.Workspace.animateWidgetDrop(Workspace.java:3164)
at com.android.launcher3.Launcher.completeTwoStageWidgetDrop(Launcher.java:1086)
at com.android.launcher3.Launcher$3.run(Launcher.java:999)
at com.android.launcher3.Workspace.removeExtraEmptyScreenDelayed(Workspace.java:952)
at com.android.launcher3.Workspace.lambda$removeExtraEmptyScreenDelayed$3(Workspace.java:922)
at com.android.launcher3.Workspace.$r8$lambda$qJmEWteEMIDxIhPN0xohUE9-Gbo(Unknown Source:0)
at com.android.launcher3.Workspace$$ExternalSyntheticLambda13.run(D8$$SyntheticClass:0)
at android.os.Handler.handleCallback(Handler.java:958)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:230)
at android.os.Looper.loop(Looper.java:319)
at android.app.ActivityThread.main(ActivityThread.java:8893)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:608)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
Same issue.
I am unable to add many widgets but not getting a crash with all of them.
Working
- Contacts > Direct dial
- Contact > Direct message
- WhatsApp > Contact
- Google Maps > Friend location
- Google Photos > Your memories
No crash, No Widget
Adding these brings up the preview then settings but no widget is added
- BBC Weather > Nearby
- Clock (Samsung?)
- Home Assistant > All widgets
The home assistant widgets are the ones that are most disappointing to not be able to add. I use these to turn lights on and off and other things. Show stopper for me.
Samsung Galaxy A53 5G Android 14/One UI 6.0 Lawnchair 14 beta 2
After trying several widgets, I can narrow the issue to be custom widgets, as in custom theme and/or custom size.
Widgets that have a fixed size (that do not open a customization menu) will work 99% of the time.
Widgets that can be resized, but do not offer styling (e.g. light/dark mode, transparency, etc.) will work as well, most of the time.
Widgets that can be styled and resized, will never work, at least for me.
I had 6 Home Assistant widgets installed with Lawnchair 2, but adding any more was crashing Lawnchair.
I switched to Lawnchair 14 hoping things were better, but much worse.
Example 1: fixed size, non-styleable widget
Added without any issue, works properly:
Example 2: styleable widget
Customisation menu. Pressing the "Save" button causes a Lawnchair crash.
Another example: non-styleable widget, that can be resized:
Workaround is to set a different launcher as your default. After doing this, open Lawnchair and you can add the widget succesfully. Then set Lawnchair back as the default Launcher.