termux-x11/app/src/main/java/com/termux/wtermux/MainActivity.java

66 lines
2.1 KiB
Java

package com.termux.wtermux;
import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.SurfaceView;
import android.view.WindowManager;
import android.view.inputmethod.InputMethodManager;
public class MainActivity extends AppCompatActivity implements KeyboardUtils.SoftKeyboardToggleListener {
LorieService weston;
boolean kbdVisible = false;
InputMethodManager imm;
SurfaceView root;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//jniLoader.loadLibrary("wayland-server");
setContentView(R.layout.activity_main);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
root = findViewById(R.id.WestonView);
weston = new LorieService(this);
weston.connectSurfaceView(root);
KeyboardUtils.addKeyboardToggleListener(this, this);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.d("LorieActivity", "keydown: " + keyCode + "(keycode_back = " + KeyEvent.KEYCODE_BACK + " )");
if (keyCode == KeyEvent.KEYCODE_BACK) {
onBackPressed();
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onBackPressed() {
//KeyboardUtils.toggleKeyboardVisibility(this);
Log.d("Asdasd", "asdasdasd");
if (root == null) return;
if (kbdVisible) {
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(root.getWindowToken(), 0);
} else
{
((InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))
.showSoftInput(root, InputMethodManager.SHOW_FORCED);
}
}
@Override
public void onToggleSoftKeyboard(boolean isVisible) {
kbdVisible = isVisible;
Log.d("LorieActivity", "keyboard is " + (isVisible?"visible":"not visible"));
}
}