Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1206)

Unified Diff: remoting/android/java/src/org/chromium/chromoting/Desktop.java

Issue 1537183002: Refactor Chromoting JNI code to use jni/Client (Java changes only). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Suppress FindBugs warning Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: remoting/android/java/src/org/chromium/chromoting/Desktop.java
diff --git a/remoting/android/java/src/org/chromium/chromoting/Desktop.java b/remoting/android/java/src/org/chromium/chromoting/Desktop.java
index 93e54b184db3e9adeedeb54683acf37288a5896a..f9f3c73ad06f0d98672d803ce6fa741ffdf4b419 100644
--- a/remoting/android/java/src/org/chromium/chromoting/Desktop.java
+++ b/remoting/android/java/src/org/chromium/chromoting/Desktop.java
@@ -31,7 +31,7 @@ import android.view.inputmethod.InputMethodManager;
import org.chromium.chromoting.cardboard.DesktopActivity;
import org.chromium.chromoting.help.HelpContext;
import org.chromium.chromoting.help.HelpSingleton;
-import org.chromium.chromoting.jni.JniInterface;
+import org.chromium.chromoting.jni.Client;
import java.util.List;
import java.util.Set;
@@ -69,6 +69,8 @@ public class Desktop
/** The surface that displays the remote host's desktop feed. */
private DesktopView mRemoteHostDesktop;
+ private Client mClient;
+
/** Set of pressed keys for which we've sent TextEvent. */
private Set<Integer> mPressedTextKeys = new TreeSet<Integer>();
@@ -102,11 +104,14 @@ public class Desktop
super.onCreate(savedInstanceState);
setContentView(R.layout.desktop);
+ mClient = Client.getInstance();
+
mToolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(mToolbar);
mRemoteHostDesktop = (DesktopView) findViewById(R.id.desktop_view);
mRemoteHostDesktop.setDesktop(this);
+ mRemoteHostDesktop.setClient(mClient);
mSwitchToCardboardDesktopActivity = false;
getSupportActionBar().setDisplayShowTitleEnabled(false);
@@ -124,7 +129,7 @@ public class Desktop
View decorView = getWindow().getDecorView();
decorView.setOnSystemUiVisibilityChangeListener(this);
- mActivityLifecycleListener = CapabilityManager.getInstance().onActivityAcceptingListener(
+ mActivityLifecycleListener = mClient.getCapabilityManager().onActivityAcceptingListener(
this, Capabilities.CAST_CAPABILITY);
mActivityLifecycleListener.onActivityCreated(this, savedInstanceState);
@@ -163,9 +168,9 @@ public class Desktop
protected void onStart() {
super.onStart();
mActivityLifecycleListener.onActivityStarted(this);
- JniInterface.enableVideoChannel(true);
+ mClient.enableVideoChannel(true);
mRemoteHostDesktop.attachRedrawCallback();
- CapabilityManager.getInstance().addListener(this);
+ mClient.getCapabilityManager().addListener(this);
}
@Override
@@ -173,7 +178,7 @@ public class Desktop
if (isFinishing()) mActivityLifecycleListener.onActivityPaused(this);
super.onPause();
if (!mSwitchToCardboardDesktopActivity) {
- JniInterface.enableVideoChannel(false);
+ mClient.enableVideoChannel(false);
}
stopActionBarAutoHideTimer();
}
@@ -182,19 +187,19 @@ public class Desktop
public void onResume() {
super.onResume();
mActivityLifecycleListener.onActivityResumed(this);
- JniInterface.enableVideoChannel(true);
+ mClient.enableVideoChannel(true);
startActionBarAutoHideTimer();
}
@Override
protected void onStop() {
- CapabilityManager.getInstance().removeListener(this);
+ mClient.getCapabilityManager().removeListener(this);
mActivityLifecycleListener.onActivityStopped(this);
super.onStop();
if (mSwitchToCardboardDesktopActivity) {
mSwitchToCardboardDesktopActivity = false;
} else {
- JniInterface.enableVideoChannel(false);
+ mClient.enableVideoChannel(false);
}
}
@@ -489,7 +494,7 @@ public class Desktop
return true;
}
if (id == R.id.actionbar_disconnect || id == android.R.id.home) {
- JniInterface.disconnectFromHost();
+ mClient.destroy();
return true;
}
if (id == R.id.actionbar_send_ctrl_alt_del) {
@@ -499,10 +504,10 @@ public class Desktop
KeyEvent.KEYCODE_FORWARD_DEL,
};
for (int key : keys) {
- JniInterface.sendKeyEvent(0, key, true);
+ mClient.sendKeyEvent(0, key, true);
}
for (int key : keys) {
- JniInterface.sendKeyEvent(0, key, false);
+ mClient.sendKeyEvent(0, key, false);
}
return true;
}
@@ -609,7 +614,7 @@ public class Desktop
// Dispatch the back button to the system to handle navigation
if (keyCode == KeyEvent.KEYCODE_BACK) {
- JniInterface.disconnectFromHost();
+ mClient.destroy();
return super.dispatchKeyEvent(event);
}
@@ -621,7 +626,7 @@ public class Desktop
// the keyboard layout selected on the client doesn't affect the key
// codes sent to the host.
if (event.getDeviceId() != KeyCharacterMap.VIRTUAL_KEYBOARD) {
- return JniInterface.sendKeyEvent(event.getScanCode(), 0, pressed);
+ return mClient.sendKeyEvent(event.getScanCode(), 0, pressed);
}
// Events received from software keyboards generate TextEvent in two
@@ -632,7 +637,7 @@ public class Desktop
// correspond to what user sees on the screen, while physical keyboard
// acts as if it is connected to the remote host.
if (event.getAction() == KeyEvent.ACTION_MULTIPLE) {
- JniInterface.sendTextEvent(event.getCharacters());
+ mClient.sendTextEvent(event.getCharacters());
return true;
}
@@ -646,7 +651,7 @@ public class Desktop
if (pressed && unicode != 0 && no_modifiers) {
mPressedTextKeys.add(keyCode);
int[] codePoints = { unicode };
- JniInterface.sendTextEvent(new String(codePoints, 0, 1));
+ mClient.sendTextEvent(new String(codePoints, 0, 1));
return true;
}
@@ -661,28 +666,28 @@ public class Desktop
// third-party keyboards that may still generate these events. See
// https://source.android.com/devices/input/keyboard-devices.html#legacy-unsupported-keys
case KeyEvent.KEYCODE_AT:
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_2, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_2, pressed);
return true;
case KeyEvent.KEYCODE_POUND:
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_3, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_3, pressed);
return true;
case KeyEvent.KEYCODE_STAR:
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_8, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_8, pressed);
return true;
case KeyEvent.KEYCODE_PLUS:
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
- JniInterface.sendKeyEvent(0, KeyEvent.KEYCODE_EQUALS, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_SHIFT_LEFT, pressed);
+ mClient.sendKeyEvent(0, KeyEvent.KEYCODE_EQUALS, pressed);
return true;
default:
// We try to send all other key codes to the host directly.
- return JniInterface.sendKeyEvent(0, keyCode, pressed);
+ return mClient.sendKeyEvent(0, keyCode, pressed);
}
}
}

Powered by Google App Engine
This is Rietveld 408576698