From be9761268afb6251d341ca4c47267a126c3da60e Mon Sep 17 00:00:00 2001 From: Adam Barth Date: Tue, 18 Oct 2016 00:57:23 -0700 Subject: [PATCH] All the clients have migrated to platform messages (#3142) --- services/raw_keyboard/BUILD.gn | 36 ---------- services/raw_keyboard/raw_keyboard.mojom | 17 ----- .../raw_keyboard/RawKeyboardServiceImpl.java | 33 --------- .../raw_keyboard/RawKeyboardServiceState.java | 71 ------------------- shell/platform/android/BUILD.gn | 2 - .../android/io/flutter/view/FlutterView.java | 17 +---- shell/platform/linux/BUILD.gn | 1 - .../flutter_services/lib/raw_keyboard.dart | 6 -- sky/packages/sky_services/BUILD.gn | 1 - 9 files changed, 2 insertions(+), 182 deletions(-) delete mode 100644 services/raw_keyboard/BUILD.gn delete mode 100644 services/raw_keyboard/raw_keyboard.mojom delete mode 100644 services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceImpl.java delete mode 100644 services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceState.java delete mode 100644 sky/packages/flutter_services/lib/raw_keyboard.dart diff --git a/services/raw_keyboard/BUILD.gn b/services/raw_keyboard/BUILD.gn deleted file mode 100644 index 9fa13f696c..0000000000 --- a/services/raw_keyboard/BUILD.gn +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2015 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. - -import("//mojo/public/tools/bindings/mojom.gni") - -mojom("interfaces") { - sources = [ - "raw_keyboard.mojom", - ] - - deps = [ - "//flutter/services/engine:interfaces" - ] -} - -if (is_android) { - import("//build/config/android/config.gni") - import("//build/config/android/rules.gni") - - android_library("raw_keyboard_lib") { - java_files = [ - "src/org/domokit/raw_keyboard/RawKeyboardServiceImpl.java", - "src/org/domokit/raw_keyboard/RawKeyboardServiceState.java", - ] - - deps = [ - "//base:base_java", - "//mojo/public/java:bindings", - "//mojo/public/java:system", - "//flutter/services/engine:interfaces_java", - ":interfaces_java", - ] - } -} - diff --git a/services/raw_keyboard/raw_keyboard.mojom b/services/raw_keyboard/raw_keyboard.mojom deleted file mode 100644 index 97197873bb..0000000000 --- a/services/raw_keyboard/raw_keyboard.mojom +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -[DartPackage="sky_services"] -module raw_keyboard; - -import "flutter/services/engine/input_event.mojom"; - -interface RawKeyboardListener { - OnKey(sky.InputEvent event); -}; - -[ServiceName="raw_keyboard::RawKeyboardService"] -interface RawKeyboardService { - AddListener(RawKeyboardListener listener); -}; diff --git a/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceImpl.java b/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceImpl.java deleted file mode 100644 index 34b27baff8..0000000000 --- a/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceImpl.java +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -package org.domokit.raw_keyboard; - -import org.chromium.mojo.system.MojoException; -import org.chromium.mojom.raw_keyboard.RawKeyboardListener; -import org.chromium.mojom.raw_keyboard.RawKeyboardService; - -/** - * Android implementation of Keyboard. - */ -public class RawKeyboardServiceImpl implements RawKeyboardService { - private RawKeyboardServiceState mViewState; - - public RawKeyboardServiceImpl(RawKeyboardServiceState state) { - mViewState = state; - } - - @Override - public void addListener(RawKeyboardListener listener) { - mViewState.addListener((RawKeyboardListener.Proxy) listener); - } - - @Override - public void onConnectionError(MojoException e) {} - - @Override - public void close() { - mViewState.close(); - } -} diff --git a/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceState.java b/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceState.java deleted file mode 100644 index d66a1cf794..0000000000 --- a/services/raw_keyboard/src/org/domokit/raw_keyboard/RawKeyboardServiceState.java +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -package org.domokit.raw_keyboard; - -import android.util.Log; -import android.view.KeyEvent; -import android.view.View; - -import java.util.ArrayList; - -import org.chromium.mojo.bindings.ConnectionErrorHandler; -import org.chromium.mojo.system.MojoException; -import org.chromium.mojom.raw_keyboard.RawKeyboardListener; -import org.chromium.mojom.raw_keyboard.RawKeyboardService; -import org.chromium.mojom.sky.InputEvent; -import org.chromium.mojom.sky.EventType; -import org.chromium.mojom.sky.KeyData; - -/** - * Per-View raw keyboard state. - */ -public class RawKeyboardServiceState implements View.OnKeyListener { - private static final String TAG = "RawKeyboardServiceState"; - - private ArrayList mListeners = new ArrayList(); - - public RawKeyboardServiceState() { - } - - public void addListener(final RawKeyboardListener.Proxy listener) { - mListeners.add(listener); - listener.getProxyHandler().setErrorHandler(new ConnectionErrorHandler() { - @Override - public void onConnectionError(MojoException e) { - mListeners.remove(listener); - } - }); - } - - public void close() { - } - - @Override - public boolean onKey(View v, int keyCode, KeyEvent nativeEvent) { - if (mListeners.isEmpty()) - return false; - InputEvent event = new InputEvent(); - switch (nativeEvent.getAction()) { - case KeyEvent.ACTION_DOWN: - event.type = EventType.KEY_PRESSED; - break; - case KeyEvent.ACTION_UP: - event.type = EventType.KEY_RELEASED; - break; - default: - Log.w(TAG, "Unknown key event received"); - return false; - } - KeyData keyData = new KeyData(); - keyData.flags = nativeEvent.getFlags(); - keyData.scanCode = nativeEvent.getScanCode(); - keyData.metaState = nativeEvent.getMetaState(); - keyData.keyCode = keyCode; - event.keyData = keyData; - for (RawKeyboardListener listener : mListeners) - listener.onKey(event); - return true; - } -} diff --git a/shell/platform/android/BUILD.gn b/shell/platform/android/BUILD.gn index 82b5bf3b44..11b8b26af0 100644 --- a/shell/platform/android/BUILD.gn +++ b/shell/platform/android/BUILD.gn @@ -86,8 +86,6 @@ android_library("java") { "//flutter/services/editing:interfaces_java", "//flutter/services/engine:interfaces_java", "//flutter/services/platform:interfaces_java", - "//flutter/services/raw_keyboard:interfaces_java", - "//flutter/services/raw_keyboard:raw_keyboard_lib", "//flutter/services/vsync:vsync_lib", "//mojo/android:system_java", "//mojo/public/interfaces/application:application_java", diff --git a/shell/platform/android/io/flutter/view/FlutterView.java b/shell/platform/android/io/flutter/view/FlutterView.java index e252206d68..2520595599 100644 --- a/shell/platform/android/io/flutter/view/FlutterView.java +++ b/shell/platform/android/io/flutter/view/FlutterView.java @@ -45,7 +45,6 @@ import org.chromium.mojo.system.impl.CoreImpl; import org.chromium.mojom.editing.Keyboard; import org.chromium.mojom.flutter.platform.ApplicationMessages; import org.chromium.mojom.mojo.ServiceProvider; -import org.chromium.mojom.raw_keyboard.RawKeyboardService; import org.chromium.mojom.sky.AppLifecycleState; import org.chromium.mojom.sky.ServicesData; import org.chromium.mojom.sky.SkyEngine; @@ -65,8 +64,6 @@ import io.flutter.plugin.platform.PlatformPlugin; import org.domokit.editing.KeyboardImpl; import org.domokit.editing.KeyboardViewState; -import org.domokit.raw_keyboard.RawKeyboardServiceImpl; -import org.domokit.raw_keyboard.RawKeyboardServiceState; /** * An Android view containing a Flutter app. @@ -92,7 +89,6 @@ public class FlutterView extends SurfaceView private final SurfaceHolder.Callback mSurfaceCallback; private final ViewportMetrics mMetrics; private final KeyboardViewState mKeyboardState; - private final RawKeyboardServiceState mRawKeyboardState; private final AccessibilityManager mAccessibilityManager; private BroadcastReceiver discoveryReceiver; private List mActivityLifecycleListeners; @@ -142,7 +138,6 @@ public class FlutterView extends SurfaceView getHolder().addCallback(mSurfaceCallback); mKeyboardState = new KeyboardViewState(this); - mRawKeyboardState = new RawKeyboardServiceState(); Core core = CoreImpl.getInstance(); @@ -173,6 +168,8 @@ public class FlutterView extends SurfaceView private void encodeKeyEvent(KeyEvent event, JSONObject message) throws JSONException { message.put("flags", event.getFlags()); + message.put("codePoint", event.getUnicodeChar()); + message.put("keyCode", event.getKeyCode()); message.put("scanCode", event.getScanCode()); message.put("metaState", event.getMetaState()); } @@ -188,8 +185,6 @@ public class FlutterView extends SurfaceView } catch (JSONException e) { Log.e(TAG, "Failed to serialize key event", e); } - // TODO(abarth): Remove once clients are moved over to platform messages. - mRawKeyboardState.onKey(this, keyCode, event); return true; } @@ -204,7 +199,6 @@ public class FlutterView extends SurfaceView } catch (JSONException e) { Log.e(TAG, "Failed to serialize key event", e); } - mRawKeyboardState.onKey(this, keyCode, event); return true; } @@ -469,13 +463,6 @@ public class FlutterView extends SurfaceView } }); - registry.register(RawKeyboardService.MANAGER.getName(), new ServiceFactory() { - @Override - public Binding connectToService(FlutterView view, Core core, MessagePipeHandle pipe) { - return RawKeyboardService.MANAGER.bind(new RawKeyboardServiceImpl(mRawKeyboardState), pipe); - } - }); - registry.register(ApplicationMessages.MANAGER.getName(), new ServiceFactory() { @Override public Binding connectToService(FlutterView view, Core core, MessagePipeHandle pipe) { diff --git a/shell/platform/linux/BUILD.gn b/shell/platform/linux/BUILD.gn index 676c7e664f..825ab2440f 100644 --- a/shell/platform/linux/BUILD.gn +++ b/shell/platform/linux/BUILD.gn @@ -19,7 +19,6 @@ executable("linux") { "//base", "//flutter/common", "//flutter/services/engine:interfaces", - "//flutter/services/raw_keyboard:interfaces", "//flutter/shell/common", "//flutter/shell/gpu", "//flutter/shell/testing", diff --git a/sky/packages/flutter_services/lib/raw_keyboard.dart b/sky/packages/flutter_services/lib/raw_keyboard.dart deleted file mode 100644 index 4650a26cd0..0000000000 --- a/sky/packages/flutter_services/lib/raw_keyboard.dart +++ /dev/null @@ -1,6 +0,0 @@ -/// Copyright 2016 The Chromium Authors. All rights reserved. -/// Use of this source code is governed by a BSD-style license that can be -/// found in the LICENSE file. - -import 'package:sky_services/raw_keyboard/raw_keyboard.mojom.dart'; -export 'package:sky_services/raw_keyboard/raw_keyboard.mojom.dart'; diff --git a/sky/packages/sky_services/BUILD.gn b/sky/packages/sky_services/BUILD.gn index 513506833b..532f7491eb 100644 --- a/sky/packages/sky_services/BUILD.gn +++ b/sky/packages/sky_services/BUILD.gn @@ -25,6 +25,5 @@ dart_pkg("sky_services") { ":copy_sky_services_license", "//flutter/services/editing:interfaces", "//flutter/services/platform:interfaces", - "//flutter/services/raw_keyboard:interfaces", ] } -- GitLab