Skip to content

Commit 3e88c49

Browse files
committed
FEAT : Added an utility method to close and open the keyboard
1 parent 3958bbf commit 3e88c49

5 files changed

Lines changed: 49 additions & 0 deletions

File tree

library/src/main/java/com/matpag/clickdrawabletextview/ClickDrawableAutoCompleteTextView.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,4 +103,14 @@ public void enableFocusOnText(boolean openKeyboard) {
103103
public void setEnabled(boolean enabled) {
104104
super.setEnabled(enabled);
105105
}
106+
107+
@Override
108+
public void openKeyboard() {
109+
mCsDrawableViewManager.openKeyboard();
110+
}
111+
112+
@Override
113+
public void closeKeyboard() {
114+
mCsDrawableViewManager.closeKeyboard();
115+
}
106116
}

library/src/main/java/com/matpag/clickdrawabletextview/ClickDrawableEditText.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,4 +97,13 @@ public void enableFocusOnText(boolean openKeyboard) {
9797
mCsDrawableViewManager.enableFocusOnText(openKeyboard);
9898
}
9999

100+
@Override
101+
public void openKeyboard() {
102+
mCsDrawableViewManager.openKeyboard();
103+
}
104+
105+
@Override
106+
public void closeKeyboard() {
107+
mCsDrawableViewManager.closeKeyboard();
108+
}
100109
}

library/src/main/java/com/matpag/clickdrawabletextview/ClickDrawableTextView.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,16 @@ public void enableFocusOnText(boolean openKeyboard) {
9292
throw new IllegalArgumentException("TextView can't be focused for editing");
9393
}
9494

95+
@Override
96+
public void openKeyboard() {
97+
throw new IllegalArgumentException("TextView can't be edited with keyboard");
98+
}
99+
100+
@Override
101+
public void closeKeyboard() {
102+
throw new IllegalArgumentException("TextView can't be edited with keyboard");
103+
}
104+
95105
@Override
96106
public void removeAllCsDrawables() {
97107
mCsDrawableViewManager.removeAllCsDrawables();

library/src/main/java/com/matpag/clickdrawabletextview/CsDrawableViewManager.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -395,6 +395,16 @@ public void enableFocusOnText(boolean openKeyboard) {
395395
}
396396
}
397397

398+
@Override
399+
public void openKeyboard() {
400+
setImeVisibility(true);
401+
}
402+
403+
@Override
404+
public void closeKeyboard() {
405+
setImeVisibility(false);
406+
}
407+
398408
/**
399409
* Open the keyboard with some Google trick
400410
* <a href="http://stackoverflow.com/a/13306632/2910520">Link here</a>

library/src/main/java/com/matpag/clickdrawabletextview/interfaces/ClickableDrawable.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,4 +104,14 @@ public interface ClickableDrawable {
104104
*/
105105
void enableFocusOnText(boolean openKeyboard);
106106

107+
/**
108+
* Helper method to close the keyboard if the IME is currently opened
109+
*/
110+
void closeKeyboard();
111+
112+
/**
113+
* Helper method to open the keyboard on the current view if the IME is currently closed
114+
*/
115+
void openKeyboard();
116+
107117
}

0 commit comments

Comments
 (0)