Merge "Fix talkback focus issue in share sheet" into rvc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
b7f81189bd
@@ -101,6 +101,7 @@ import android.view.View.MeasureSpec;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.ViewGroup.LayoutParams;
|
||||
import android.view.ViewTreeObserver;
|
||||
import android.view.animation.AccelerateInterpolator;
|
||||
import android.view.animation.DecelerateInterpolator;
|
||||
import android.widget.Button;
|
||||
@@ -2777,6 +2778,7 @@ public class ChooserActivity extends ResolverActivity implements
|
||||
@Override
|
||||
public void onListRebuilt(ResolverListAdapter listAdapter) {
|
||||
setupScrollListener();
|
||||
maybeSetupGlobalLayoutListener();
|
||||
|
||||
ChooserListAdapter chooserListAdapter = (ChooserListAdapter) listAdapter;
|
||||
if (chooserListAdapter.getUserHandle()
|
||||
@@ -2858,6 +2860,28 @@ public class ChooserActivity extends ResolverActivity implements
|
||||
});
|
||||
}
|
||||
|
||||
private void maybeSetupGlobalLayoutListener() {
|
||||
if (shouldShowTabs()) {
|
||||
return;
|
||||
}
|
||||
final View recyclerView = mChooserMultiProfilePagerAdapter.getActiveAdapterView();
|
||||
recyclerView.getViewTreeObserver()
|
||||
.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
|
||||
@Override
|
||||
public void onGlobalLayout() {
|
||||
// Fixes an issue were the accessibility border disappears on list creation.
|
||||
recyclerView.getViewTreeObserver().removeOnGlobalLayoutListener(this);
|
||||
final TextView titleView = findViewById(R.id.title);
|
||||
if (titleView != null) {
|
||||
titleView.setFocusable(true);
|
||||
titleView.setFocusableInTouchMode(true);
|
||||
titleView.requestFocus();
|
||||
titleView.requestAccessibilityFocus();
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override // ChooserListCommunicator
|
||||
public boolean isSendAction(Intent targetIntent) {
|
||||
if (targetIntent == null) {
|
||||
|
||||
Reference in New Issue
Block a user