Launcher2 on sw720dp devices had 8 hotseat slots; Launcher3
has only 6 on those same devices. When importing the old
hotseat, the empty slot (so technically there were 9)
occupied by the all apps button didn't line up with the new
all apps button, causing a hole on the hotseat. Furthermore,
the icon in old position 3 was clobbered by the new all apps
icon:
0 1 2 3 (#) 4 5 6 7 ==> 0 1 2 (:) _ 4 5
In this CL we introduce a separate sort-and-place step for
hotseat icons so that any icon colliding with the new
all-apps slot can be moved to the right to find the next
nearest open slot. This works well for the 8->6 case; it
will probably do something reasonable, if not ideal, for
other grid migration scenarios.
But those are not covered by this bug.
Bug: 13015468
Change-Id: I7edb3f27addc78ad02bbfcd1c39175ca56220007
When opening the picker, the currently chosen wallpaper is
shown in the background.
In this change also the nullpointer was fixed when deleting
the currently selected wallpaper and setting it, because we
revert to the old wallpaper in that case.
When going into the same live wallpaper than the currently
selected we are going back to home if the user sets it or
goes back now, in order for the user not to loose state.
The real fix for this will be done later when the following
bug will be fixed: b/13241760
Bug: 12063773
Bug: 13219612
Change-Id: I7c6abb25755eca99c3255278e0884d1ff4749b55
-> This appears to be what may be causing data loss in some users during update.
A certain (seemingly) rare combination of life-cycle events and package events
seems to be the culprit (potentially why it's seen at update time).
Change-Id: Iea4f8aef012ba80b7ba568e0df264edb9284efbe
-> Also removed the db-created as a criteria for showing the clings
(this was a bit problematic in some cases and going forward)
-> Instead, we use database upgrade as a signal to not show the clings.
This is used instead of the above criteria (to prevent old users from
seeing the migration cling and losing their data.)
-> Stripped some old code related to custom clings that's no longer used.
Change-Id: Ib5e5285e5ddbc60e69eb998ee9fd092ae879150d
The workspacescreens table is updated in LauncherModel.updateWorkspaceScreenOrder
and that the operation to remove all screens, then reinsert the new list of
screens in not inside a single transaction, so if the app is updating or
crashes between ContentResolver.delete and ContentResolver.bulkInsert then
the data will be lost. This CL makes it all happen inside 1 transaction.
Bug: 12523285
Change-Id: I409dbc9f48fa9c8bd4bf3b1453204a4daac1689a
When dropping from all apps, accept drop was returning true if the item
was above a folder, however, when it came time to complete the drop,
the folder wouldn't accept the item. This can be prevented by increasing
the criteria in acceptDrop.
Change-Id: Ib644ec45984e8366c33bb674f3d3a76e22ed5160