diff --git a/android-tv/app/src/main/AndroidManifest.xml b/android-tv/app/src/main/AndroidManifest.xml index 1cd30f1..c9bd84a 100644 --- a/android-tv/app/src/main/AndroidManifest.xml +++ b/android-tv/app/src/main/AndroidManifest.xml @@ -6,7 +6,7 @@ + android:required="false" /> + android:screenOrientation="landscape" + android:windowSoftInputMode="adjustResize"> diff --git a/android-tv/app/src/main/java/com/kvideo/tv/MainActivity.kt b/android-tv/app/src/main/java/com/kvideo/tv/MainActivity.kt index 57c11d6..a2c8658 100644 --- a/android-tv/app/src/main/java/com/kvideo/tv/MainActivity.kt +++ b/android-tv/app/src/main/java/com/kvideo/tv/MainActivity.kt @@ -7,6 +7,7 @@ import android.os.Bundle import android.view.KeyEvent import android.view.View import android.view.WindowManager +import android.view.inputmethod.EditorInfo import android.webkit.WebChromeClient import android.webkit.WebSettings import android.webkit.WebView @@ -59,6 +60,24 @@ class MainActivity : ComponentActivity() { saveButton.setOnClickListener { openConfiguredUrl() } + urlInput.setOnEditorActionListener { _, actionId, event -> + val isKeyboardConfirmAction = actionId == EditorInfo.IME_NULL || + actionId == EditorInfo.IME_ACTION_DONE || + actionId == EditorInfo.IME_ACTION_GO || + actionId == EditorInfo.IME_ACTION_SEND || + actionId == EditorInfo.IME_ACTION_NEXT + val isEnterKey = event?.action == KeyEvent.ACTION_DOWN && ( + event.keyCode == KeyEvent.KEYCODE_ENTER || + event.keyCode == KeyEvent.KEYCODE_NUMPAD_ENTER + ) + + if (isKeyboardConfirmAction || isEnterKey) { + openConfiguredUrl() + true + } else { + false + } + } webView.apply { setLayerType(View.LAYER_TYPE_HARDWARE, null) diff --git a/android-tv/app/src/main/res/layout/activity_main.xml b/android-tv/app/src/main/res/layout/activity_main.xml index 3fc11bc..ffbc956 100644 --- a/android-tv/app/src/main/res/layout/activity_main.xml +++ b/android-tv/app/src/main/res/layout/activity_main.xml @@ -9,101 +9,107 @@ android:layout_width="match_parent" android:layout_height="match_parent" /> - + android:fillViewport="true"> - - - - - - - - + android:background="#F31A1C22" + android:elevation="12dp" + android:maxWidth="680dp" + android:orientation="vertical" + android:padding="32dp"> -