| OLD | NEW | 
|    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |    1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4  |    4  | 
|    5 #ifndef UI_BASE_IME_TEXT_INPUT_CLIENT_H_ |    5 #ifndef UI_BASE_IME_TEXT_INPUT_CLIENT_H_ | 
|    6 #define UI_BASE_IME_TEXT_INPUT_CLIENT_H_ |    6 #define UI_BASE_IME_TEXT_INPUT_CLIENT_H_ | 
|    7  |    7  | 
|    8 #include <stddef.h> |    8 #include <stddef.h> | 
|    9 #include <stdint.h> |    9 #include <stdint.h> | 
|   10  |   10  | 
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   75  |   75  | 
|   76   // Returns the current text input flags, which is a bit map of |   76   // Returns the current text input flags, which is a bit map of | 
|   77   // WebTextInputType defined in blink. This is valid only for web input fileds; |   77   // WebTextInputType defined in blink. This is valid only for web input fileds; | 
|   78   // it will return TEXT_INPUT_FLAG_NONE for native input fields. |   78   // it will return TEXT_INPUT_FLAG_NONE for native input fields. | 
|   79   virtual int GetTextInputFlags() const = 0; |   79   virtual int GetTextInputFlags() const = 0; | 
|   80  |   80  | 
|   81   // Returns if the client supports inline composition currently. |   81   // Returns if the client supports inline composition currently. | 
|   82   virtual bool CanComposeInline() const = 0; |   82   virtual bool CanComposeInline() const = 0; | 
|   83  |   83  | 
|   84   // Returns current caret (insertion point) bounds in the universal screen |   84   // Returns current caret (insertion point) bounds in the universal screen | 
|   85   // coordinates. If there is selection, then the selection bounds will be |   85   // coordinates in DIP (Density Independent Pixel). | 
|   86   // returned. |   86   // If there is selection, then the selection bounds will be returned. | 
|   87   // Note: On Windows, the returned value is supposed to be DIP (Density |  | 
|   88   // Independent Pixel). |  | 
|   89   // TODO(ime): Have a clear spec whether the returned value is DIP or not. |  | 
|   90   // http://crbug.com/360334 |  | 
|   91   virtual gfx::Rect GetCaretBounds() const = 0; |   87   virtual gfx::Rect GetCaretBounds() const = 0; | 
|   92  |   88  | 
|   93   // Retrieves the composition character boundary rectangle in the universal |   89   // Retrieves the composition character boundary rectangle in the universal | 
|   94   // screen coordinates. The |index| is zero-based index of character position |   90   // screen coordinates in DIP (Density Independent Pixel). | 
|   95   // in composition text. |   91   // The |index| is zero-based index of character position in composition text. | 
|   96   // Returns false if there is no composition text or |index| is out of range. |   92   // Returns false if there is no composition text or |index| is out of range. | 
|   97   // The |rect| is not touched in the case of failure. |   93   // The |rect| is not touched in the case of failure. | 
|   98   // Note: On Windows, the returned value is supposed to be DIP |  | 
|   99   // (Density Independent Pixel). |  | 
|  100   // TODO(ime): Have a clear spec whether the returned value is DIP or not. |  | 
|  101   // http://crbug.com/360334 |  | 
|  102   virtual bool GetCompositionCharacterBounds(uint32_t index, |   94   virtual bool GetCompositionCharacterBounds(uint32_t index, | 
|  103                                              gfx::Rect* rect) const = 0; |   95                                              gfx::Rect* rect) const = 0; | 
|  104  |   96  | 
|  105   // Returns true if there is composition text. |   97   // Returns true if there is composition text. | 
|  106   virtual bool HasCompositionText() const = 0; |   98   virtual bool HasCompositionText() const = 0; | 
|  107  |   99  | 
|  108   // Document content operations ---------------------------------------------- |  100   // Document content operations ---------------------------------------------- | 
|  109  |  101  | 
|  110   // Retrieves the UTF-16 based character range containing accessible text in |  102   // Retrieves the UTF-16 based character range containing accessible text in | 
|  111   // the View. It must cover the composition and selection range. |  103   // the View. It must cover the composition and selection range. | 
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  155   virtual bool ChangeTextDirectionAndLayoutAlignment( |  147   virtual bool ChangeTextDirectionAndLayoutAlignment( | 
|  156       base::i18n::TextDirection direction) = 0; |  148       base::i18n::TextDirection direction) = 0; | 
|  157  |  149  | 
|  158   // Deletes the current selection plus the specified number of characters |  150   // Deletes the current selection plus the specified number of characters | 
|  159   // before and after the selection or caret. This function should be used |  151   // before and after the selection or caret. This function should be used | 
|  160   // instead of calling DeleteRange with GetSelectionRange, because |  152   // instead of calling DeleteRange with GetSelectionRange, because | 
|  161   // GetSelectionRange may not be the latest value due to asynchronous of IPC |  153   // GetSelectionRange may not be the latest value due to asynchronous of IPC | 
|  162   // between browser and renderer. |  154   // between browser and renderer. | 
|  163   virtual void ExtendSelectionAndDelete(size_t before, size_t after) = 0; |  155   virtual void ExtendSelectionAndDelete(size_t before, size_t after) = 0; | 
|  164  |  156  | 
|  165   // Ensure the caret is not in |rect|.  |rect| is in screen coordinates and |  157   // Ensure the caret is not in |rect|.  |rect| is in screen coordinates in | 
|  166   // may extend beyond the bounds of this TextInputClient. |  158   // DIP (Density Independent Pixel) and may extend beyond the bounds of this | 
|  167   // Note: On Windows, the returned value is supposed to be DIP (Density |  159   // TextInputClient. | 
|  168   // Independent Pixel). |  | 
|  169   // TODO(ime): Have a clear spec whether the returned value is DIP or not. |  | 
|  170   // http://crbug.com/360334 |  | 
|  171   virtual void EnsureCaretNotInRect(const gfx::Rect& rect) = 0; |  160   virtual void EnsureCaretNotInRect(const gfx::Rect& rect) = 0; | 
|  172  |  161  | 
|  173   // Returns true if |command| is currently allowed to be executed. |  162   // Returns true if |command| is currently allowed to be executed. | 
|  174   virtual bool IsTextEditCommandEnabled(TextEditCommand command) const = 0; |  163   virtual bool IsTextEditCommandEnabled(TextEditCommand command) const = 0; | 
|  175  |  164  | 
|  176   // Execute |command| on the next key event. This allows a TextInputClient to |  165   // Execute |command| on the next key event. This allows a TextInputClient to | 
|  177   // be informed of a platform-independent edit command that has been derived |  166   // be informed of a platform-independent edit command that has been derived | 
|  178   // from the key event currently being dispatched (but not yet sent to the |  167   // from the key event currently being dispatched (but not yet sent to the | 
|  179   // TextInputClient). The edit command will take into account any OS-specific, |  168   // TextInputClient). The edit command will take into account any OS-specific, | 
|  180   // or user-specified, keybindings that may be set up. |  169   // or user-specified, keybindings that may be set up. | 
|  181   virtual void SetTextEditCommandForNextKeyEvent(TextEditCommand command) = 0; |  170   virtual void SetTextEditCommandForNextKeyEvent(TextEditCommand command) = 0; | 
|  182 }; |  171 }; | 
|  183  |  172  | 
|  184 }  // namespace ui |  173 }  // namespace ui | 
|  185  |  174  | 
|  186 #endif  // UI_BASE_IME_TEXT_INPUT_CLIENT_H_ |  175 #endif  // UI_BASE_IME_TEXT_INPUT_CLIENT_H_ | 
| OLD | NEW |