This fixes perhaps an old bug.
If we started an accessible drag for an only item on a page,
then uninstalled the app while dragging, the page was removed
without unsetting its accessibility delegate. Later, the system asks
the delegate to do something, but the drag is over, and some pointers
are null, so everything crashes.
Fixing this.
Bug: 22028725
Change-Id: I85adcd42ae896603634994e20a7790792f7e84b1
(cherry picked from commit de1e67c388)
We don't want to start a framework DND (with drop shadow etc.) in the accessibility mode.
Besides, framework DND fails to start and immediately cancels the DND operation
if it's started in the accessibility mode. Presumably, this happens because
the finger doesn't press the screen when this happens.
The right solution is not to instantiate a drag driver at all when an accessible
DND starts, which is what this CL does.
Bug: 22028725
Change-Id: Ic743ba3f8de037c15d4e70e3b7687cdd3518b2a3
This fixes perhaps an old bug.
If we started an accessible drag for an only item on a page,
then uninstalled the app while dragging, the page was removed
without unsetting its accessibility delegate. Later, the system asks
the delegate to do something, but the drag is over, and some pointers
are null, so everything crashes.
Fixing this.
Bug: 22028725
Change-Id: I85adcd42ae896603634994e20a7790792f7e84b1
When drag exits Launcher window (for example, goes to Shelf) launcher doesn't get notified
and thinks the drag is still over it. For example if there is a moved shaking icon in Hotseat,
it will keep shaking.
Fixing this.
Bug: 22028725
Change-Id: Ie57572a57a324d426c9f6e57dc0bba56630e92df
There was a jump upon a transition from DragView to the framework shadow
for hotseat icons (which are scaled down).
Bug: 22028725
Change-Id: If4f5ed4501836667ff3a8eaa9da4577bdf98e880
Upon the end if the growth animation for DragView, we hide DragView and
show the framework DND drag shadow. Rounding problems caused shifting of the
drag image by 1 pixel when the transition happened.
Bug: 22028725
Change-Id: I2a2275a6d18c1a10ceecaecf8a279c6d11d8c7d8
- There was an issue with the previous logic where the test of whether
the search bounds changed would always be false if valid search bounds
were given. This in conjunction with the fact that the padding was
changed to only take the bounds left/right into account, meant that
the container bounds would not be updated if the search bar bounds
shifted via the insets.
Bug: 22918919
Change-Id: Ia810ddc7a56eae4afc0c7cd558fa6dc9e8e7a95b
When the longpress clings such like welcome message appears,
the key events should be limited as follows:
- normal keys (generates printable glyphs) should be prevented,
otherwise they come to the underlying searchbox.
- it should be dismissed on Menu keys, which goes to the overview
mode.
Bug: 22982955
Change-Id: I7272b0809bfaa3c08ba77b01383cf54f19390d95
- We used to rely on the state transition to inflate the search
widget after the permission to bind widgets was granted, which
is fragile. Now we try and inflate the search widget after
user grants the permission if necessary.
Bug: 22515084
Bug: 22980143
Change-Id: Id111d263bc8a864e0fa652cfd0e07e66ec690fe7
- This refactoring ensures that LauncherStateTransition does not
do its own animation on the QSB, and that all animations to the
SearchDropTargetBar go through its own animators.
Bug: 22515084
Change-Id: Ia7d13c44d861eac7517076b52a9651a90911ed0a
Now DragDriver uses DragController through DragDriver.EventListener
interface. I hope that this will make relations between 2 classes clearer,
and will help avoiding mess during future development.
Also, some small cleanups.
Bug: 22609426
Change-Id: Ibaf61804ab931743f2f913fac11bf24ebf9a36c8