mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-19 18:58:19 +00:00
Announcing the final action when the drag-drop completes
Bug:31926812 Change-Id: Id0566cc7dc15732981320807a02fb9cae8a885e6
This commit is contained in:
@@ -2760,6 +2760,9 @@ public class Workspace extends PagedView
|
||||
}
|
||||
parent.onDropChild(cell);
|
||||
}
|
||||
if (d.stateAnnouncer != null) {
|
||||
d.stateAnnouncer.completeAction(R.string.item_moved);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -21,6 +21,8 @@ import android.view.View;
|
||||
import android.view.accessibility.AccessibilityEvent;
|
||||
import android.view.accessibility.AccessibilityManager;
|
||||
|
||||
import com.android.launcher3.Launcher;
|
||||
|
||||
/**
|
||||
* Periodically sends accessibility events to announce ongoing state changed. Based on the
|
||||
* implementation in ProgressBar.
|
||||
@@ -50,6 +52,12 @@ public class DragViewStateAnnouncer implements Runnable {
|
||||
mTargetView.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_SELECTED);
|
||||
}
|
||||
|
||||
public void completeAction(int announceResId) {
|
||||
cancel();
|
||||
Launcher launcher = Launcher.getLauncher(mTargetView.getContext());
|
||||
launcher.getDragLayer().announceForAccessibility(launcher.getText(announceResId));
|
||||
}
|
||||
|
||||
public static DragViewStateAnnouncer createFor(View v) {
|
||||
if (((AccessibilityManager) v.getContext().getSystemService(Context.ACCESSIBILITY_SERVICE))
|
||||
.isEnabled()) {
|
||||
|
||||
@@ -1346,6 +1346,10 @@ public class Folder extends LinearLayout implements DragSource, View.OnClickList
|
||||
// The animation has already been shown while opening the folder.
|
||||
mInfo.setOption(FolderInfo.FLAG_MULTI_PAGE_ANIMATION, true, mLauncher);
|
||||
}
|
||||
|
||||
if (d.stateAnnouncer != null) {
|
||||
d.stateAnnouncer.completeAction(R.string.item_moved);
|
||||
}
|
||||
}
|
||||
|
||||
// This is used so the item doesn't immediately appear in the folder when added. In one case
|
||||
|
||||
Reference in New Issue
Block a user