| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* a77601a96c9dc0f7489e87a6ab0bb2499b8a9461 made
it load predictive apps through the SearchLauncherCallback
instead of our implementation
Change-Id: I939adb6e0c4009cd22df4f81eb0ce5ecb30134ad
|
|
|
|
|
|
|
|
| |
If Google Search is installed, the Google Feed can be found at
the -1 screen (which is the very left).
This feature is enabled by default.
Change-Id: I495196818699fd378cd60e6dd61b07a0ab951762
|
|
|
|
|
|
| |
This reverts commit 8dee56deeed7b09a9e5e9f4d21f27aa9d495930c.
Change-Id: I911aff9099b69c07f784b89689dfeae0ec0e223c
|
|
|
|
|
|
|
|
|
|
|
| |
If there are no icon packs installed, we can not edit the icon, though
it always applied a foreground and click listener.
Only apply foreground and set click listener, if there are icon packs
installed and clicking on it actually does something.
Change-Id: I09ac1473c75d5edcf5e940a0e5bb2ec7f2296e8f
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
| |
In order to get the wallpaper, the app needs to be able to read
external storage.
Check if READ_EXTERNAL_STORAGE is granted before using it.
Change-Id: I1559a3b9fa3dc3e20180bc380ddd4fa70eda1be3
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
| |
*) Use a ViewHolder pattern for the list
*) Make the AsyncTask static to prevent leaks
*) Remove unnecessary null checks when using instanceOf
Change-Id: I333758874c98341552a1cce626e208cc6096ecb1
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
| |
getLaunchProviderRecursive(View) can return null.
Check if provider is null before using it.
Change-Id: I8cd157ba315e1dcc1fed428e0474b55b774bbd2f
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
| |
JavaDoc of Resources#getIdentifier(...):
Returns - The associated resource identifier. Returns 0 if no such
resource was found. (0 is not a valid resource ID.)
Change-Id: Ia9f4ea9efb56bb54d94729f70a3afcec5bce7999
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When binding the view holder, we are making use of lists, which can change.
In case the lists are changing after binding, we can get an IOOBE when the
click listener gets called.
To work around this create a shallow copy of the lists and use it.
-----
Stack Trace:
java.lang.IndexOutOfBoundsException: Index: 44, Size: 44
at java.util.ArrayList.get(ArrayList.java:437)
at com.android.launcher3.icons.IconPickerActivity$GridAdapter.lambda$-com_android_launcher3_icons_IconPickerActivity$GridAdapter_9734(IconPickerActivity.java:248)
at com.android.launcher3.icons.-$Lambda$aHbfyH3p1fvGkmuJq2f35Z_cj_A$2.$m$0
at com.android.launcher3.icons.-$Lambda$aHbfyH3p1fvGkmuJq2f35Z_cj_A$2.onClick
at android.view.View.performClick(View.java:6320)
at android.view.View$PerformClick.run(View.java:25087)
at android.os.Handler.handleCallback(Handler.java:869)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
-----
Change-Id: Id3bc8a01c29517230765a032f220bccccda2b386
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LauncherActivityInfo's or resolved activities can be null.
Example crash:
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.ComponentName android.content.pm.LauncherActivityInfo.getComponentName()' on a null object reference
at com.android.launcher3.IconCache.getCacheEntry(IconCache.java:392)
at com.android.launcher3.Launcher.startEdit(Launcher.java:3988)
at com.android.launcher3.popup.SystemShortcut$AppEdit.lambda$-com_android_launcher3_popup_SystemShortcut$AppEdit_4399(SystemShortcut.java:115)
at com.android.launcher3.popup.-$Lambda$_SMHeS1Apq5nUPo60kvmkZszeNE.$m$0
at com.android.launcher3.popup.-$Lambda$_SMHeS1Apq5nUPo60kvmkZszeNE.onClick
at android.view.View.performClick(View.java:6320)
at android.view.View$PerformClick.run(View.java:25087)
at android.os.Handler.handleCallback(Handler.java:869)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
Issue: SHIFTOS-SW-31
Change-Id: If5f027e3146b358036b1ac1a1e973467d4fca2c4
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
| |
Change-Id: I5d9b8174431cfbfa8c0227c31a9ec288433d6d4c
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
| |
Change-Id: Ie84af7114118f54b2d267a35ce24dd5e58c0be22
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
| |
Change-Id: I724990a78d96b55724ee6387eb243cfb95871360
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
| |
Previously only apps targetting API 26 (O) would get wrapped as
adaptive icon, resulting in legacy icons still looking out of place.
Wrap all icons, independent of target API.
Change-Id: I3647d95c7f4f5c0515a14cbf4eebd5afcdfb38ae
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
| |
The icon pack support broke this feature, fix it up to make it work again.
Change-Id: I22e1ba953fc8cabb0e7633a3c5cf3ce5c07cf762
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Store data in a sql db
- Categorize app launch between
- Day
- Night
- Headphones
The suggestions will change on the go basing on
whether an headset is plugged in or it's day or night
Change-Id: Ic9d8dd4dafbb1a56157140119df71efd6fb4349a
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stacktrace:
android.database.sqlite.SQLiteFullException: database or disk is full (code 13)
at android.database.sqlite.SQLiteConnection.nativeExecuteForChangedRowCount(SQLiteConnection.java)
at android.database.sqlite.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:750)
at android.database.sqlite.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:754)
at android.database.sqlite.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:64)
at android.database.sqlite.SQLiteDatabase.updateWithOnConflict(SQLiteDatabase.java:1604)
at android.database.sqlite.SQLiteDatabase.update(SQLiteDatabase.java:1550)
at com.android.launcher3.LauncherProvider.update(LauncherProvider.java:360)
at android.content.ContentProvider$Transport.update(ContentProvider.java:359)
at android.content.ContentResolver.update(ContentResolver.java:1672)
at com.android.launcher3.model.ModelWriter$UpdateItemRunnable.run(ModelWriter.java:290)
at com.android.launcher3.util.LooperExecutor.execute(LooperExecutor.java:39)
at com.android.launcher3.model.ModelWriter.updateItemInDatabase(ModelWriter.java:197)
at com.android.launcher3.model.PackageUpdatedTask.execute(PackageUpdatedTask.java:258)
at com.android.launcher3.model.BaseModelUpdateTask.run(BaseModelUpdateTask.java:67)
at android.os.Handler.handleCallback(Handler.java:869)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:206)
at android.os.HandlerThread.run(HandlerThread.java:65)
Issue: SHIFTOS-SW-18
Change-Id: I4c4fa9239b9ff14a6614187c450d12b6006fde82
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Stacktrace:
java.lang.IllegalArgumentException: pointerIndex out of range
at android.view.MotionEvent.nativeGetAxisValue(MotionEvent.java)
at android.view.MotionEvent.getX(MotionEvent.java:2201)
at com.android.launcher3.PagedView.onTouchEvent(PagedView.java:1557)
at android.view.View.dispatchTouchEvent(View.java:11842)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3068)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2700)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2714)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2714)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:464)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1854)
at android.app.Activity.dispatchTouchEvent(Activity.java:3292)
at com.android.launcher3.Launcher.dispatchTouchEvent(Launcher.java:2781)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:426)
at android.view.View.dispatchPointerEvent(View.java:12092)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5279)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5084)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4634)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4600)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4747)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4608)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4804)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4634)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4600)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4608)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4581)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7259)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7233)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7176)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7431)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.os.MessageQueue.nativePollOnce(MessageQueue.java)
at android.os.MessageQueue.next(MessageQueue.java:325)
at android.os.Looper.loop(Looper.java:147)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
Issue: SHIFTOS-SW-19
Change-Id: Idcab340d65ee2a4782052b4d1a9de73a886afef7
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If component is null, we call ComponentName#getPackageName() on a null
object reference.
Happened when opening an app while it was upgraded.
----------
Stacktrace:
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.content.ComponentName.getPackageName()' on a null object reference
at com.android.launcher3.allapps.PredictiveAppsProvider.buildComponentString(PredictiveAppsProvider.java:99)
at com.android.launcher3.allapps.PredictiveAppsProvider.updateComponentCount(PredictiveAppsProvider.java:32)
at com.android.launcher3.Launcher.startActivitySafely(Launcher.java:2764)
at com.android.launcher3.Launcher.startAppShortcutOrInfoActivity(Launcher.java:2520)
at com.android.launcher3.Launcher.onClick(Launcher.java:2352)
at android.view.View.performClick(View.java:6320)
at android.view.View$PerformClick.run(View.java:25087)
at android.os.Handler.handleCallback(Handler.java:869)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:206)
at android.app.ActivityThread.main(ActivityThread.java:6733)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:845)
----------
Issue: BUGBASH-1524
Change-Id: I970453f5da87c36e9915b8c0bbe9f1cd2302ec93
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
| |
Intrinsic size for widget preview drawable checked.
Needed since some drawables, like color drawables,
do not have any intrinsic size.
Bug: 78452220
Test: manual, see Bug info.
Change-Id: I815353773e38b1fce2fe19962f07c1727e1b0768
|
|
|
|
|
| |
Change-Id: If8a0e5595734eacb038f31c38bf7b4f151fd4825
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
| |
WallpaperManagerCompatVOMR1 is targeting API 27 (O MR1), but the
api guard is checking, if we are running API 26 (O) or above.
Correct the check to prevent using unavailable Wallpaper APIs.
Change-Id: Iaf510bb79010e640db04adbbc2ee44de9abd6913
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current check returns the opposite of what the method is called.
Printing the following values:
- defaultPack, defaultLocalizedPack, currentPack, isNotUsingIconPack
without icon pack applied:
- Default | System (Standard) | System (Standard) | false
with "Frost" (com.dkanada.icecons) icon pack applied:
- Default | System (Standard) | com.dkanada.icecons | true
with "Pixel Icon Pack" (com.themezilla.pixelui) icon pack applied:
- Default | System (Standard) | com.themezilla.pixelui | true
To correct this behavior:
*) rename "isNotUsingIconPack" to "isUsingIconPack"
*) fix all the users of the method
*) add comments to document the thoughts behind the logic
Change-Id: I8a5339fae536a3f3803637353737994670d8ee92
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
|
|
|
|
|
| |
Change-Id: I503e19cbc512eac0e4a8c8bccc16a6ccc0e805da
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
|
|
| |
E AndroidRuntime: java.lang.RuntimeException: Unable to start activity
ComponentInfo{org.lineageos.trebuchet/com.android.launcher3.SettingsActivity}:
java.lang.NullPointerException: Attempt to invoke virtual method
'void com.google.android.libraries.launcherclient.LauncherClient.onDestroy()'
on a null object reference
Change-Id: I161c7888932d32cdc6d9f11d4f140ca635dab72d
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
jrizzoli: adapted for trebuchet
Includes the following commits:
* Launcher3: support google now tab
* LauncherClient: make sure service is connected before trying to unbind
* Launcher3: animate workspace when animating the Google now page
* Launcher3: make Google now left page optional
* Launcher3: cleanup launcher tab preference
Change-Id: I84582ae812b8ecb0d694ae2396843effdcf1219c
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
|
| |
Change-Id: I76a571ce2b53214ef197a5164f584cb4dc2d3ecf
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
| |
It was partially disabled with https://github.com/jrizzoli/bug-free-bassoon/commit/ef63be31dac06e783546fbe6b5dad9c40a36223b
but it was still applied with icon packs on apps targeting oreo
Edited the proguard config to avoid classNotFound exceptions
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
| |
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
| |
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Based on the following commits:
* https://github.com/AOSPA/android_packages_apps_Launcher3/commit/cf4bde2098de8beec24a0c88bf2e51e19a9c22b6
* https://github.com/AOSPA/android_packages_apps_Launcher3/commit/8ddafe17ad6adc268ad1a93b7724d8b22028a71b
* https://github.com/AOSPA/android_packages_apps_Launcher3/commit/0940176c3c01a1f87237811f42d05a592b0968b3
With the following additions:
* Support for adaptive icons
* UI changes
* Cleanup and improvements
Change-Id: I877a8b2dd204753179736fa7c1c34444e9b2c849
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
| |
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
| |
Signed-off-by: Arne Coucheron <arco68@gmail.com>
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
|
| |
jrizzoli: expose for runtime toggle
Signed-off-by: Joey <joey@lineageos.org>
|
|
|
|
| |
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
| |
Change-Id: I5e75b7e1c6806dae9ac2a000e377873319a5f787
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
| |
Signed-off-by: Joey Rizzoli <joey@lineageos.org>
|
|
|
|
|
|
|
|
|
|
| |
* As the feature is not available for low RAM devices,
hide it from the Settings to avoid confusion
* Acquire ActivityManager service to read isLowRamDevice
Change-Id: I34a6ee1b4838f31194c89327e301d4fd39670c02
Signed-off-by: Adrian DC <radian.dc@gmail.com>
|
|
|
|
| |
Change-Id: Ib29b20b051b8fe976f20e92b141c373c8f0cfae3
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
App seach interface overlap with the desktop icon.
Change-Id: Ifc20d8386fe267ecfdc7152b75894b1666facc45
CRs-Fixed: 1002855
|
|
|
|
| |
Change-Id: I24f1682cbad10610f04f7b8ada238b43addd23da
|
|
|
|
|
|
|
|
|
|
| |
1. Press hardware menu key
2. Press hardware back key or home key
3. Observe transparent block
I consider this an annoying glitch, and this patch fixes it.
Change-Id: I2b0be3999cfbe6f35c485984efff564b1478cdbc
|
|
|
|
| |
Change-Id: I8cc6068b534324c6750b3d4768c907fcf0f4cfbd
|
|\
| |
| |
| | |
workspace." into ub-launcher3-dorval-polish2
|
| |
| |
| |
| |
| | |
Bug: 67364623
Change-Id: Ib66a5cdaca767fd8546f4ffd02d590981bb8135a
|
|/
|
|
|
|
|
|
|
|
|
| |
There are cases (ie. smaller devices) where the icon label is closer
to the icon below it (rather than its corresponding icon).
To fix this, we ensure that the drawable padding (space between the
icon and its label) is no larger than the vertical padding of the cell.
Bug: 67317867
Change-Id: Ic3729726eebb60b67d658361c4335e724b7d68d7
|
|
|
|
|
|
| |
Bug 67116550
Change-Id: I8a27685f91e201072c0669c102077affe550fab6
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Bug: 67010327
Change-Id: Iab6ea790e99bb66bd0d7d4f07a8ad9fa05387d13
|