Index: blimp/client/core/contents/ime_feature.h |
diff --git a/blimp/client/core/contents/ime_feature.h b/blimp/client/core/contents/ime_feature.h |
deleted file mode 100644 |
index 7b49c3b22750bc1b3975e4ac88eb26352ecfc943..0000000000000000000000000000000000000000 |
--- a/blimp/client/core/contents/ime_feature.h |
+++ /dev/null |
@@ -1,102 +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. |
- |
-#ifndef BLIMP_CLIENT_CORE_CONTENTS_IME_FEATURE_H_ |
-#define BLIMP_CLIENT_CORE_CONTENTS_IME_FEATURE_H_ |
- |
-#include <map> |
-#include <string> |
- |
-#include "base/macros.h" |
-#include "base/memory/weak_ptr.h" |
-#include "blimp/net/blimp_message_processor.h" |
-#include "ui/base/ime/text_input_type.h" |
- |
-namespace blimp { |
-namespace client { |
- |
-// Handles all incoming and outgoing protobuf messages for text input of type |
-// BlimpMessage::IME for blimp client. |
-// Upon receiving a text input request from the engine, the ImeFeature |
-// delegates the request to the appropriate Delegate to show IME along with a |
-// Callback bound with respective tab id and render widget id. |
-// Any time user taps on an input text, ImeMessage::SHOW_IME message will be |
-// sent to client. Similarly, any time the text input is out of focus (e.g. if |
-// user navigates away from the currently page or the page loads for the first |
-// time), ImeMessage::HIDE_IME will be sent. |
- |
-class ImeFeature : public BlimpMessageProcessor { |
- public: |
- struct WebInputResponse; |
- |
- // A callback to show IME. |
- using ShowImeCallback = base::Callback<void(const WebInputResponse&)>; |
- |
- // A bundle of params required by the client. |
- struct WebInputRequest { |
- WebInputRequest(); |
- ~WebInputRequest(); |
- |
- ui::TextInputType input_type; |
- std::string text; |
- ShowImeCallback show_ime_callback; |
- }; |
- |
- // A bundle of params to be sent to the engine. |
- struct WebInputResponse { |
- WebInputResponse(); |
- ~WebInputResponse() = default; |
- |
- std::string text; |
- bool submit; |
- }; |
- |
- // A delegate to be notified of text input requests. |
- class Delegate { |
- public: |
- virtual ~Delegate() {} |
- virtual void OnShowImeRequested(const WebInputRequest& request) = 0; |
- virtual void OnHideImeRequested() = 0; |
- }; |
- |
- ImeFeature(); |
- ~ImeFeature() override; |
- |
- // Set the BlimpMessageProcessor that will be used to send BlimpMessage::IME |
- // messages to the engine. |
- void set_outgoing_message_processor( |
- std::unique_ptr<BlimpMessageProcessor> processor) { |
- outgoing_message_processor_ = std::move(processor); |
- } |
- |
- // Sets a Delegate to be notified of all text input messages. |
- // There must be a valid non-null Delegate set before routing messages |
- // to the ImeFeature for processing, until the last message is processed. |
- void set_delegate(Delegate* delegate) { delegate_ = delegate; } |
- |
- // BlimpMessageProcessor implementation. |
- void ProcessMessage(std::unique_ptr<BlimpMessage> message, |
- const net::CompletionCallback& callback) override; |
- |
- private: |
- // Sends text from IME to the blimp engine. |
- void OnImeTextEntered(int tab_id, |
- int render_widget_id, |
- const WebInputResponse& response); |
- |
- // Used to actually show or hide the IME. See notes on |set_delegate|. |
- Delegate* delegate_ = nullptr; |
- |
- // Used to send BlimpMessage::IME messages to the engine. |
- std::unique_ptr<BlimpMessageProcessor> outgoing_message_processor_; |
- |
- base::WeakPtrFactory<ImeFeature> weak_factory_; |
- |
- DISALLOW_COPY_AND_ASSIGN(ImeFeature); |
-}; |
- |
-} // namespace client |
-} // namespace blimp |
- |
-#endif // BLIMP_CLIENT_CORE_CONTENTS_IME_FEATURE_H_ |