android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java | 11 ++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
New commits: commit fbda3f9a8d2d3f2ccd7999a3f110c56bce38c1d8 Author: Mert Tumer <merttu...@outlook.com> Date: Tue Aug 9 17:16:11 2016 +0300 tdf#96810 - Fix Android Viewer: Keyboard can not hide with keyboard button. Change-Id: I87d83953094d31ed4e1bcf60c55dd19056a7994e Reviewed-on: https://gerrit.libreoffice.org/28005 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: jan iversen <j...@documentfoundation.org> diff --git a/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java b/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java index 1cbdabb..bd21fe2 100755 --- a/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java +++ b/android/source/src/java/org/libreoffice/LibreOfficeMainActivity.java @@ -96,6 +96,7 @@ public class LibreOfficeMainActivity extends AppCompatActivity { return mTempFile != null; } + private boolean isKeyboardOpen = false; @Override public void onCreate(Bundle savedInstanceState) { Log.w(LOGTAG, "onCreate.."); @@ -368,13 +369,18 @@ public class LibreOfficeMainActivity extends AppCompatActivity { * Show software keyboard. * Force the request on main thread. */ + + public void showSoftKeyboard() { + LOKitShell.getMainHandler().post(new Runnable() { @Override public void run() { - showSoftKeyboardDirect(); + if(!isKeyboardOpen) showSoftKeyboardDirect(); + else hideSoftKeyboardDirect(); } }); + } private void showSoftKeyboardDirect() { @@ -384,7 +390,7 @@ public class LibreOfficeMainActivity extends AppCompatActivity { InputMethodManager inputMethodManager = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.showSoftInput(layerView, InputMethodManager.SHOW_FORCED); } - + isKeyboardOpen=true; hideBottomToolbar(); } @@ -419,6 +425,7 @@ public class LibreOfficeMainActivity extends AppCompatActivity { if (getCurrentFocus() != null) { InputMethodManager inputMethodManager = (InputMethodManager) getApplicationContext().getSystemService(Context.INPUT_METHOD_SERVICE); inputMethodManager.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0); + isKeyboardOpen=false; } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits