feature(ComposeActivity): add shortcut for send new toot (CTRL + ENTER) [#505]

This commit is contained in:
Gyuhwan Park 2019-05-30 21:22:28 +09:00
parent 8cbf8b59bd
commit d31aa7fc43

View file

@ -47,6 +47,7 @@ import android.text.TextWatcher;
import android.text.style.URLSpan;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.KeyEvent;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
@ -539,6 +540,8 @@ public final class ComposeActivity
}
});
textEditor.setOnKeyListener((view, keyCode, event) -> this.onKeyShortcut(keyCode, event));
textEditor.setAdapter(
new ComposeAutoCompleteAdapter(this));
textEditor.setTokenizer(new ComposeTokenizer());
@ -1624,6 +1627,7 @@ public final class ComposeActivity
return super.onOptionsItemSelected(item);
}
@Override
public void onBackPressed() {
// Acting like a teen: deliberately ignoring parent.
@ -1639,6 +1643,21 @@ public final class ComposeActivity
handleCloseButton();
}
@Override
public boolean onKeyShortcut(int keyCode, KeyEvent event) {
Log.d(TAG, event.toString());
if (event.isCtrlPressed()) {
if (keyCode == KeyEvent.KEYCODE_ENTER) {
// send toot by pressing CTRL + ENTER
this.onSendClicked();
return true;
}
}
return super.onKeyDown(keyCode, event);
}
private void handleCloseButton() {
CharSequence contentText = textEditor.getText();