am 56e1b7e4: Fix emoji view insets calculation
* commit '56e1b7e4f112a268371c84606e6f4239aef91333': Fix emoji view insets calculationmain
commit
eb06bf7622
|
@ -308,6 +308,20 @@ public final class KeyboardSwitcher implements KeyboardState.SwitchActions {
|
||||||
mState.onCodeInput(code, mLatinIME.getCurrentAutoCapsState());
|
mState.onCodeInput(code, mLatinIME.getCurrentAutoCapsState());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isShowingMoreKeysPanel() {
|
||||||
|
if (mEmojiKeyboardView.getVisibility() == View.VISIBLE) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return mKeyboardView.isShowingMoreKeysPanel();
|
||||||
|
}
|
||||||
|
|
||||||
|
public View getVisibleKeyboardView() {
|
||||||
|
if (mEmojiKeyboardView.getVisibility() == View.VISIBLE) {
|
||||||
|
return mEmojiKeyboardView;
|
||||||
|
}
|
||||||
|
return mKeyboardView;
|
||||||
|
}
|
||||||
|
|
||||||
public MainKeyboardView getMainKeyboardView() {
|
public MainKeyboardView getMainKeyboardView() {
|
||||||
return mKeyboardView;
|
return mKeyboardView;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1177,11 +1177,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
return currentHeight;
|
return currentHeight;
|
||||||
}
|
}
|
||||||
|
|
||||||
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
|
final View visibleKeyboardView = mKeyboardSwitcher.getVisibleKeyboardView();
|
||||||
if (mainKeyboardView == null) {
|
if (visibleKeyboardView == null) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
final int keyboardHeight = mainKeyboardView.getHeight();
|
// TODO: !!!!!!!!!!!!!!!!!!!! Handle different backing view heights between the main !!!
|
||||||
|
// keyboard and the emoji keyboard. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||||
|
final int keyboardHeight = visibleKeyboardView.getHeight();
|
||||||
final int suggestionsHeight = mSuggestionStripView.getHeight();
|
final int suggestionsHeight = mSuggestionStripView.getHeight();
|
||||||
final int displayHeight = getResources().getDisplayMetrics().heightPixels;
|
final int displayHeight = getResources().getDisplayMetrics().heightPixels;
|
||||||
final Rect rect = new Rect();
|
final Rect rect = new Rect();
|
||||||
|
@ -1199,8 +1201,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
@Override
|
@Override
|
||||||
public void onComputeInsets(final InputMethodService.Insets outInsets) {
|
public void onComputeInsets(final InputMethodService.Insets outInsets) {
|
||||||
super.onComputeInsets(outInsets);
|
super.onComputeInsets(outInsets);
|
||||||
final MainKeyboardView mainKeyboardView = mKeyboardSwitcher.getMainKeyboardView();
|
final View visibleKeyboardView = mKeyboardSwitcher.getVisibleKeyboardView();
|
||||||
if (mainKeyboardView == null || mSuggestionStripView == null) {
|
if (visibleKeyboardView == null || mSuggestionStripView == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final int adjustedBackingHeight = getAdjustedBackingViewHeight();
|
final int adjustedBackingHeight = getAdjustedBackingViewHeight();
|
||||||
|
@ -1215,13 +1217,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
final int extraHeight = extractHeight + backingHeight + suggestionsHeight;
|
final int extraHeight = extractHeight + backingHeight + suggestionsHeight;
|
||||||
int visibleTopY = extraHeight;
|
int visibleTopY = extraHeight;
|
||||||
// Need to set touchable region only if input view is being shown
|
// Need to set touchable region only if input view is being shown
|
||||||
if (mainKeyboardView.isShown()) {
|
if (visibleKeyboardView.isShown()) {
|
||||||
if (mSuggestionStripView.getVisibility() == View.VISIBLE) {
|
if (mSuggestionStripView.getVisibility() == View.VISIBLE) {
|
||||||
visibleTopY -= suggestionsHeight;
|
visibleTopY -= suggestionsHeight;
|
||||||
}
|
}
|
||||||
final int touchY = mainKeyboardView.isShowingMoreKeysPanel() ? 0 : visibleTopY;
|
final int touchY = mKeyboardSwitcher.isShowingMoreKeysPanel() ? 0 : visibleTopY;
|
||||||
final int touchWidth = mainKeyboardView.getWidth();
|
final int touchWidth = visibleKeyboardView.getWidth();
|
||||||
final int touchHeight = mainKeyboardView.getHeight() + extraHeight
|
final int touchHeight = visibleKeyboardView.getHeight() + extraHeight
|
||||||
// Extend touchable region below the keyboard.
|
// Extend touchable region below the keyboard.
|
||||||
+ EXTENDED_TOUCHABLE_REGION_HEIGHT;
|
+ EXTENDED_TOUCHABLE_REGION_HEIGHT;
|
||||||
outInsets.touchableInsets = InputMethodService.Insets.TOUCHABLE_INSETS_REGION;
|
outInsets.touchableInsets = InputMethodService.Insets.TOUCHABLE_INSETS_REGION;
|
||||||
|
|
Loading…
Reference in New Issue