Dismiss emoji variation popup when keyboard is dismissed.

Fixes #8372
fork-5.53.8
Greyson Parrelli 2018-11-15 10:17:07 -08:00
rodzic d5be43cc85
commit 3716d69b0b
1 zmienionych plików z 10 dodań i 1 usunięć

Wyświetl plik

@ -21,6 +21,7 @@ public class EmojiPageView extends FrameLayout implements VariationSelectorListe
private GridLayoutManager layoutManager;
private RecyclerView.OnItemTouchListener scrollDisabler;
private VariationSelectorListener variationSelectorListener;
private EmojiVariationSelectorPopup popup;
public EmojiPageView(@NonNull Context context,
@NonNull EmojiSelectionListener emojiSelectionListener,
@ -34,8 +35,9 @@ public class EmojiPageView extends FrameLayout implements VariationSelectorListe
recyclerView = view.findViewById(R.id.emoji);
layoutManager = new GridLayoutManager(context, 8);
scrollDisabler = new ScrollDisabler();
popup = new EmojiVariationSelectorPopup(context, emojiSelectionListener);
adapter = new EmojiPageViewGridAdapter(EmojiProvider.getInstance(context),
new EmojiVariationSelectorPopup(context, emojiSelectionListener),
popup,
emojiSelectionListener,
this);
@ -54,6 +56,13 @@ public class EmojiPageView extends FrameLayout implements VariationSelectorListe
adapter.setEmoji(model.getDisplayEmoji());
}
@Override
protected void onVisibilityChanged(@NonNull View changedView, int visibility) {
if (visibility != VISIBLE) {
popup.dismiss();
}
}
@Override
protected void onSizeChanged(int w, int h, int oldw, int oldh) {
int idealWidth = getContext().getResources().getDimensionPixelOffset(R.dimen.emoji_drawer_item_width);