// Copyright (c) 2012 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. [ { "namespace": "inputMethodPrivate", "compiler_options": { "implemented_in": "chrome/browser/chromeos/extensions/input_method_api.h" }, "description": "none", "types": [ { "id": "MenuItemStyle", "type": "string", "description": "The type of menu item. Radio buttons between separators are considered grouped.", "enum": ["check", "radio", "separator"] }, { "id": "MenuItem", "type": "object", "description": "A menu item used by an input method to interact with the user from the language menu.", "properties": { "id": {"type": "string", "description": "String that will be passed to callbacks referencing this MenuItem."}, "label": {"type": "string", "optional": true, "description": "Text displayed in the menu for this item."}, "style": { "$ref": "MenuItemStyle", "optional": true, "description": "The type of menu item." }, "visible": {"type": "boolean", "optional": true, "description": "Indicates this item is visible."}, "checked": {"type": "boolean", "optional": true, "description": "Indicates this item should be drawn with a check."}, "enabled": {"type": "boolean", "optional": true, "description": "Indicates this item is enabled."} } } ], "functions": [ { "name": "getInputMethodConfig", "type": "function", "description": "Gets configurations for input methods.", "parameters": [ { "name": "callback", "type": "function", "optional": false, "description": "Callback which is called with the config object.", "parameters": [ { "name": "config", "type": "object", "description": "The input method config object.", "properties": { "isPhysicalKeyboardAutocorrectEnabled": {"type": "boolean"}, "isImeMenuActivated": {"type": "boolean"} } } ] } ] }, { "name": "getInputMethods", "type": "function", "description": "Gets all whitelisted input methods.", "parameters": [ { "name": "callback", "type": "function", "optional": false, "description": "Callback which is called with the input method objects.", "parameters": [ { "name": "inputMethods", "type": "array", "description": "Whitelisted input method objects.", "items": { "type": "object", "properties": { "id": {"type": "string"}, "name": {"type": "string"}, "indicator": {"type": "string"} } } } ] } ] }, { "name": "getCurrentInputMethod", "type": "function", "description": "Gets the current input method.", "parameters": [ { "name": "callback", "type": "function", "optional": false, "description": "Callback which is called with the current input method.", "parameters": [ { "name": "inputMethodId", "type": "string", "description": "Current input method." } ] } ] }, { "name": "setCurrentInputMethod", "type": "function", "description": "Sets the current input method.", "parameters": [ { "name": "inputMethodId", "type": "string", "optional": false, "description": "The input method ID to be set as current input method." }, { "name": "callback", "type": "function", "optional": true, "description": "Callback which is called once the current input method is set. If unsuccessful $(ref:runtime.lastError) is set.", "parameters": [] } ] }, { "name": "fetchAllDictionaryWords", "type": "function", "description": "Fetches a list of all the words currently in the dictionary.", "parameters": [ { "name": "callback", "type": "function", "optional": false, "description": "Callback which is called once the list of dictionary words are ready.", "parameters": [ { "name": "words", "type": "array", "description": "List of dictionary words.", "items": { "type": "string" } } ] } ] }, { "name": "addWordToDictionary", "type": "function", "description": "Adds a single word to be stored in the dictionary.", "parameters": [ { "name": "word", "type": "string", "optional": false, "description": "A new word to add to the dictionary." }, { "name": "callback", "type": "function", "optional": true, "description": "Callback which is called once the word is added. If unsuccessful $(ref:runtime.lastError) is set.", "parameters": [] } ] }, { "name": "getEncryptSyncEnabled", "type": "function", "description": "Gets whether the encrypt sync is enabled.", "parameters": [ { "name": "callback", "type": "function", "optional": true, "description": "Callback which is called to provide the result.", "parameters": [ { "name": "enabled", "type": "boolean", "optional": false, "description": "The result of whether enabled." } ] } ] }, { "name": "setXkbLayout", "type": "function", "description": "Sets the XKB layout for the given input method.", "parameters": [ { "name": "xkb_name", "type": "string", "description": "The XKB layout name." }, { "name": "callback", "type": "function", "optional": true, "description": "Callback which is called when the layout is set.", "parameters": [] } ] }, { "name": "notifyImeMenuItemActivated", "type": "function", "description": "Fires the input.ime.onMenuItemActivated event.", "parameters": [ { "name": "engineID", "type": "string", "description": "ID of the engine to use." }, { "name": "name", "type": "string", "description": "Name of the MenuItem which was activated" } ] }, { "name": "showInputView", "type": "function", "description": "Shows the input view window. If the input view window is already shown, this function will do nothing.", "parameters": [ { "type": "function", "name": "callback", "optional": true, "description": "Called when the operation completes.", "parameters": [] } ] } ], "events": [ { "name": "onChanged", "type": "function", "description": "Fired when the input method is changed.", "parameters": [ { "name": "newInputMethodId", "type": "string", "description": "New input method which is being used." } ] }, { "name": "onCompositionBoundsChanged", "type": "function", "description": "Fired when the composition bounds or cursor bounds are changed.", "parameters": [ { "name": "firstBounds", "type": "object", "description": "The bounds information for the first character in composition.", "properties": { "x": {"type": "integer"}, "y": {"type": "integer"}, "w": {"type": "integer"}, "h": {"type": "integer"} } }, { "name": "boundsList", "type": "array", "description": "List of bounds information.", "items": { "type": "object", "properties": { "x": {"type": "integer"}, "y": {"type": "integer"}, "w": {"type": "integer"}, "h": {"type": "integer"} } } } ] }, { "name": "onDictionaryLoaded", "type": "function", "description": "Fired when the custom spelling dictionary is loaded.", "parameters": [] }, { "name": "onDictionaryChanged", "type": "function", "description": "Fired when words are added or removed from the custom spelling dictionary.", "parameters": [ { "name": "added", "type": "array", "description": "List of added words.", "items": { "type": "string" } }, { "name": "removed", "type": "array", "description": "List of removed words.", "items": { "type": "string" } } ] }, { "name": "onImeMenuActivationChanged", "type": "function", "description": "Fired when the IME menu is activated or deactivated.", "parameters": [ { "name": "activation", "type": "boolean", "description": "Whether the IME menu is currently active." } ] }, { "name": "onImeMenuListChanged", "type": "function", "description": "Fired when the input method or the list of active input method IDs is changed.", "parameters": [] }, { "name": "onImeMenuItemsChanged", "type": "function", "description": "Fired when the input.ime.setMenuItems or input.ime.updateMenuItems API is called.", "parameters": [ { "name": "engineID", "type": "string", "description": "ID of the engine to use" }, { "name": "items", "type": "array", "items": { "$ref": "MenuItem" }, "description": "MenuItems to add or update." } ] } ] } ]