תיאור
משתמשים ב-API של chrome.input.ime כדי להטמיע IME בהתאמה אישית ל-ChromeOS. כך התוסף יכול לטפל בהקשות, להגדיר את הקומפוזיציה ולנהל את חלון המועמדים.
הרשאות
inputכדי להשתמש ב-API input.ime, צריך להצהיר על ההרשאה "input" במניפסט של התוסף. לדוגמה:
{
"name": "My extension",
...
"permissions": [
"input"
],
...
}
זמינות
דוגמאות
הקוד הבא יוצר IME שממיר אותיות מוקלדות לאותיות רישיות.
var context_id = -1;
browser.input.ime.onFocus.addListener(function(context) {
context_id = context.contextID;
});
browser.input.ime.onKeyEvent.addListener(
function(engineID, keyData) {
if (keyData.type == "keydown" && keyData.key.match(/^[a-z]$/)) {
browser.input.ime.commitText({"contextID": context_id,
"text": keyData.key.toUpperCase()});
return true;
} else {
return false;
}
}
);
סוגים
AssistiveWindowButton
מזהה של כפתורים בחלון העזר.
טיפוסים בני מנייה (enum)
"ביטול"
"addToDictionary"
AssistiveWindowProperties
מאפייני החלון של כלי העזר.
מאפיינים
-
announceString
מחרוזת אופציונלי
מחרוזות ש-ChromeVox יקריא.
-
סוג
"ביטול"
-
גלוי
בוליאני
הערך True מציג את AssistiveWindow, והערך False מסתיר אותו.
AssistiveWindowType
סוג החלון המסייע.
ערך
"ביטול"
AutoCapitalizeType
סוג האותיות הרישיות האוטומטיות של שדה הטקסט.
טיפוסים בני מנייה (enum)
"דמויות"
"מילים"
"sentences"
InputContext
תיאור של הקשר קלט
מאפיינים
-
autoCapitalizeChrome 69 ואילך browser.* מגרסה Chrome 148
סוג האותיות הרישיות האוטומטיות של שדה הטקסט.
-
autoComplete
בוליאני
אם שדה הטקסט דורש השלמה אוטומטית.
-
autoCorrect
בוליאני
אם שדה הטקסט דורש תיקון אוטומטי.
-
contextID
number
הוא משמש לציון יעדים של פעולות בשדות טקסט. המזהה הזה מפסיק להיות תקף ברגע שמתבצעת קריאה ל-onBlur.
-
shouldDoLearning
בוליאני
Chrome 68 ואילך browser.* מ-Chrome 148אם הטקסט שהוזן בשדה הטקסט ישמש לשיפור הצעות ההקלדה למשתמש.
-
spellCheck
בוליאני
אם שדה הטקסט דורש בדיקת איות.
-
סוג
סוג הערך ששדה הטקסט הזה עורך (טקסט, מספר, כתובת URL וכו')
InputContextType
סוג הערך ששדה הטקסט הזה עורך (טקסט, מספר, כתובת URL וכו')
טיפוסים בני מנייה (enum)
"text"
"חיפוש"
"tel"
"url"
"email"
"number"
"password"
"null"
KeyboardEvent
אפשר לעיין בכתובת http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent
מאפיינים
-
altKey
בוליאני אופציונלי
אם מקש ALT נלחץ או לא.
-
altgrKey
בוליאני אופציונלי
Chrome 79 ואילך browser.* מגרסה 148 של Chromeאם המקש ALTGR נלחץ או לא.
-
capsLock
בוליאני אופציונלי
אם CAPS_LOCK מופעל או לא.
-
קוד
מחרוזת
ערך המקש הפיזי שנלחץ. הערך לא מושפע מהפריסה הנוכחית של המקלדת או ממצב מקש הצירוף.
-
ctrlKey
בוליאני אופציונלי
אם מקש ה-CTRL נלחץ או לא.
-
extensionId
מחרוזת אופציונלי
מזהה התוסף של שולח אירוע המקש הזה.
-
מקש
מחרוזת
הערך של המקש שנלחץ
-
keyCode
מספר אופציונלי
ה-keyCode של HTML שהוצא משימוש, שהוא קוד מספרי שתלוי במערכת ובהטמעה ומציין את המזהה ללא שינוי שמשויך למקש שנלחץ.
-
requestId
מחרוזת אופציונלי
(הוצא משימוש) מזהה הבקשה. במקום זאת, צריך להשתמש בפרמטר
requestIdמהאירועonKeyEvent. -
shiftKey
בוליאני אופציונלי
אם מקש ה-SHIFT נלחץ או לא.
-
אחד מהאירועים keyup או keydown.
KeyboardEventType
טיפוסים בני מנייה (enum)
"keyup"
"keydown"
MenuItem
פריט בתפריט שמשמש שיטת קלט כדי לקיים אינטראקציה עם המשתמש מתפריט השפה.
מאפיינים
-
בוצע סימון
בוליאני אופציונלי
מציין שצריך לסמן את הפריט הזה בסימן וי.
-
פעיל
בוליאני אופציונלי
מציין שהפריט הזה מופעל.
-
id [מזהה]
מחרוזת
מחרוזת שתועבר לקריאות חוזרות (callbacks) שמפנות ל-MenuItem הזה.
-
תווית
מחרוזת אופציונלי
הטקסט שמוצג בתפריט של הפריט הזה.
-
סגנון
MenuItemStyle אופציונלי
סוג הפריט בתפריט.
-
גלוי
בוליאני אופציונלי
מציין שהפריט הזה גלוי.
MenuItemStyle
סוג הפריט בתפריט. כפתורי בחירה בין מפרידים נחשבים לקבוצה.
טיפוסים בני מנייה (enum)
"check"
"radio"
"separator"
MenuParameters
מאפיינים
-
engineID
מחרוזת
מזהה המנוע שבו רוצים להשתמש.
-
פריטים
MenuItem[]
פריטי תפריט שצריך להוסיף או לעדכן. הם יתווספו לפי הסדר שבו הם מופיעים במערך.
MouseButton
על איזה כפתור בעכבר לחצו.
טיפוסים בני מנייה (enum)
"left"
"middle"
"right"
ScreenType
סוג המסך שבו מופעל ה-IME.
טיפוסים בני מנייה (enum)
"normal"
"login"
"lock"
"secondary-login"
UnderlineStyle
סוג הקו התחתון לשינוי הקטע הזה.
טיפוסים בני מנייה (enum)
"underline"
"doubleUnderline"
"noUnderline"
WindowPosition
איפה להציג את חלון המועמדים. אם המדיניות מוגדרת לערך "cursor", החלון עוקב אחרי הסמן. אם המדיניות מוגדרת כ-"composition", החלון נעול לתחילת הקומפוזיציה.
טיפוסים בני מנייה (enum)
"cursor"
"קומפוזיציה"
Methods
clearComposition()
browser.input.ime.clearComposition(
parameters: object,
): Promise<boolean>
מחיקת היצירה הנוכחית. אם התוסף הזה לא הבעלים של ה-IME הפעיל, הפעולה נכשלת.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
מזהה ההקשר שבו הקומפוזיציה תימחק
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת עם ערך בוליאני שמציין אם הטקסט התקבל או לא. אם הפעולה נכשלת, ה-promise נדחה.
commitText()
browser.input.ime.commitText(
parameters: object,
): Promise<boolean>
הזנת הטקסט שסופק לקלט הנוכחי.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
מזהה ההקשר שבו הטקסט יתועד
-
text
מחרוזת
הטקסט שרוצים להוסיף
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת עם ערך בוליאני שמציין אם הטקסט התקבל או לא. אם הפעולה נכשלת, ה-promise נדחה.
deleteSurroundingText()
browser.input.ime.deleteSurroundingText(
parameters: object,
): Promise<void>
מחיקת הטקסט מסביב לסמן הטקסט.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
המזהה של ההקשר שבו הטקסט שמסביב יימחק.
-
engineID
מחרוזת
המזהה של המנוע שמקבל את האירוע.
-
length
number
מספר התווים שיימחקו
-
היסט
number
ההיסט ממיקום הסמן שבו תתחיל המחיקה. הערך הזה יכול להיות שלילי.
-
החזרות
-
Promise<void>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת.
hideInputView()
browser.input.ime.hideInputView(): void
הסתרת החלון של תצוגת הקלט, שמופיע באופן אוטומטי על ידי המערכת. אם חלון תצוגת הקלט כבר מוסתר, הפונקציה הזו לא תעשה כלום.
keyEventHandled()
browser.input.ime.keyEventHandled(
requestId: string,
response: boolean,
): void
מציין שהאירוע המרכזי שהתקבל על ידי onKeyEvent מטופל. צריך להפעיל את הפונקציה הזו רק אם המאזין onKeyEvent הוא אסינכרוני.
פרמטרים
-
requestId
מחרוזת
מזהה הבקשה של האירוע שטופל. הערך הזה צריך להגיע מ-keyEvent.requestId
-
תשובה
בוליאני
אם הלחיצה על המקש טופלה, התנאי מתקיים. אם לא, התנאי לא מתקיים
sendKeyEvents()
browser.input.ime.sendKeyEvents(
parameters: object,
): Promise<void>
שליחת האירועים המרכזיים. הפונקציה הזו מיועדת לשימוש על ידי מקלדות וירטואליות. כשמשתמש לוחץ על מקשים במקלדת וירטואלית, הפונקציה הזו משמשת להפצת האירוע הזה למערכת.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
מזהה ההקשר שאליו יישלחו האירועים המרכזיים, או אפס כדי לשלוח אירועים מרכזיים לשדה שאינו להזנת קלט.
-
keyData
נתונים על האירוע המרכזי.
-
החזרות
-
Promise<void>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת.
setAssistiveWindowButtonHighlighted()
browser.input.ime.setAssistiveWindowButtonHighlighted(
parameters: object,
): Promise<void>
הדגשה או ביטול הדגשה של כפתור בחלון עזר.
פרמטרים
-
פרמטרים
אובייקט
-
announceString
מחרוזת אופציונלי
הטקסט שקורא המסך יקריא.
-
buttonID
המזהה של הכפתור
-
contextID
number
מזהה ההקשר שבבעלותו חלון העזרה.
-
מודגש
בוליאני
האם להדגיש את הלחצן.
-
windowType
"ביטול"
סוג החלון שהכפתור שייך אליו.
-
החזרות
-
Promise<void>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת. אם הפעולה נכשלת, ה-promise נדחה.
setAssistiveWindowProperties()
browser.input.ime.setAssistiveWindowProperties(
parameters: object,
): Promise<boolean>
הצגה או הסתרה של חלון עזר עם המאפיינים שצוינו.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
מזהה ההקשר שבבעלותו חלון העזרה.
-
מאפייני החלון של כלי העזר.
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת.
setCandidates()
browser.input.ime.setCandidates(
parameters: object,
): Promise<boolean>
הגדרת רשימת המועמדים הנוכחית. הפעולה נכשלת אם התוסף הזה לא הבעלים של ה-IME הפעיל
פרמטרים
-
פרמטרים
אובייקט
-
מועמדים
object[]
רשימת המועמדים שיוצגו בחלון המועמדים
-
אנוטציה
מחרוזת אופציונלי
טקסט נוסף שמתאר את המועמד
-
שילוב אפשרי למיקוד
מחרוזת
המועמד
-
id [מזהה]
number
מזהה המועמד
-
תווית
מחרוזת אופציונלי
מחרוזת קצרה שמוצגת לצד המועמד, בדרך כלל מקש קיצור הדרך או האינדקס
-
parentId
מספר אופציונלי
המזהה שלפיו צריך להוסיף את המועמדים האלה
-
שימוש
object optional
השימוש במילה או תיאור מפורט שלה.
-
גוף
מחרוזת
המחרוזת של גוף התיאור המפורט.
-
title
מחרוזת
מחרוזת הכותרת של תיאור הפרטים.
-
-
-
contextID
number
המזהה של ההקשר שבבעלותו חלון המועמדים.
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת.
setCandidateWindowProperties()
browser.input.ime.setCandidateWindowProperties(
parameters: object,
): Promise<boolean>
הגדרת המאפיינים של חלון המועמדים. הפעולה נכשלת אם התוסף לא הבעלים של ה-IME הפעיל
פרמטרים
-
פרמטרים
אובייקט
-
engineID
מחרוזת
מזהה המנוע שבו רוצים להגדיר מאפיינים.
-
נכסים
אובייקט
-
auxiliaryText
מחרוזת אופציונלי
טקסט שמוצג בתחתית חלון המועמדים.
-
auxiliaryTextVisible
בוליאני אופציונלי
True כדי להציג את הטקסט הנוסף, False כדי להסתיר אותו.
-
currentCandidateIndex
מספר אופציונלי
Chrome 84 ואילך browser.* מגרסת Chrome 148האינדקס של המועמד שנבחר מתוך כל המועמדים.
-
cursorVisible
בוליאני אופציונלי
הערך True כדי להציג את הסמן, הערך False כדי להסתיר אותו.
-
pageSize
מספר אופציונלי
מספר המועמדים שיוצגו בכל דף.
-
totalCandidates
מספר אופציונלי
Chrome 84 ואילך browser.* מגרסת Chrome 148המספר הכולל של המועמדים לחלון המועמדים.
-
לאורך
בוליאני אופציונלי
True אם חלון המועמדים צריך להיות מוצג אנכית, False כדי להציג אותו אופקית.
-
גלוי
בוליאני אופציונלי
הערך True כדי להציג את חלון המועמדים, הערך False כדי להסתיר אותו.
-
windowPosition
WindowPosition אופציונלי
איפה להציג את חלון המועמדים.
-
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת כשהיא מושלמת.
setComposition()
browser.input.ime.setComposition(
parameters: object,
): Promise<boolean>
הגדרת הקומפוזיציה הנוכחית. אם התוסף הזה לא הבעלים של ה-IME הפעיל, הפעולה נכשלת.
פרמטרים
-
פרמטרים
אובייקט
-
contextID
number
מזהה ההקשר שבו יוגדר הטקסט של היצירה
-
סמן
number
המיקום של הסמן בטקסט.
-
פלחים
object[] אופציונלי
רשימת פלחים והסוגים שמשויכים אליהם.
-
End
number
אינדקס התו שאחריו מסתיים הקטע הזה.
-
start
number
אינדקס התו שבו מתחיל הקטע הזה
-
סגנון
סוג הקו התחתון לשינוי הקטע הזה.
-
-
selectionEnd
מספר אופציונלי
המיקום בטקסט שבו הבחירה מסתיימת.
-
selectionStart
מספר אופציונלי
המיקום בטקסט שבו מתחילה הבחירה.
-
text
מחרוזת
טקסט להגדרה
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148הפעולה מסתיימת עם ערך בוליאני שמציין אם הטקסט התקבל או לא. אם הפעולה נכשלת, ה-promise נדחה.
setCursorPosition()
browser.input.ime.setCursorPosition(
parameters: object,
): Promise<boolean>
מגדירים את מיקום הסמן בחלון המועמדים. אם התוסף הזה לא הבעלים של ה-IME הפעיל, לא תהיה לפעולה הזו השפעה.
פרמטרים
-
פרמטרים
אובייקט
-
candidateID
number
המזהה של המועמד לבחירה.
-
contextID
number
המזהה של ההקשר שבבעלותו חלון המועמדים.
-
החזרות
-
Promise<boolean>
Chrome 111 ואילך browser.* מ-Chrome 148ההבטחה מתממשת כשהפעולה מסתיימת
setMenuItems()
browser.input.ime.setMenuItems(
parameters: MenuParameters,
): Promise<void>
הוספת פריטי התפריט שצוינו לתפריט השפה כשה-IME הזה פעיל.
פרמטרים
-
פרמטרים
החזרות
-
Promise<void>
Chrome 111 ואילך browser.* מ-Chrome 148
updateMenuItems()
browser.input.ime.updateMenuItems(
parameters: MenuParameters,
): Promise<void>
עדכון המצב של פריטי התפריט שצוינו
פרמטרים
-
פרמטרים
החזרות
-
Promise<void>
Chrome 111 ואילך browser.* מ-Chrome 148ההבטחה מתממשת כשהפעולה מסתיימת
אירועים
onActivate
browser.input.ime.onActivate.addListener(
callback: function,
)
האירוע הזה נשלח כשמפעילים IME. הוא מאותת שה-IME יקבל אירועי onKeyPress.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string, screen: ScreenType) => void
-
engineID
מחרוזת
-
סינון שיחות
-
onAssistiveWindowButtonClicked
browser.input.ime.onAssistiveWindowButtonClicked.addListener(
callback: function,
)
האירוע הזה נשלח כשלוחצים על כפתור בחלון עזר.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(details: object) => void
-
פרטים
אובייקט
-
buttonID
המזהה של הלחצן שנלחץ.
-
windowType
סוג החלון של העזרה.
-
-
onBlur
browser.input.ime.onBlur.addListener(
callback: function,
)
האירוע הזה נשלח כשהמיקוד עובר מתיבת טקסט. הוא נשלח לכל התוספים שמאזינים לאירוע הזה, ומופעל על ידי המשתמש.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(contextID: number) => void
-
contextID
number
-
onCandidateClicked
browser.input.ime.onCandidateClicked.addListener(
callback: function,
)
האירוע הזה נשלח אם התוסף הזה הוא הבעלים של ה-IME הפעיל.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string, candidateID: number, button: MouseButton) => void
-
engineID
מחרוזת
-
candidateID
number
-
כפתור
-
onDeactivated
browser.input.ime.onDeactivated.addListener(
callback: function,
)
האירוע הזה נשלח כש-IME מושבת. הוא מציין שה-IME לא יקבל יותר אירועי onKeyPress.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string) => void
-
engineID
מחרוזת
-
onFocus
browser.input.ime.onFocus.addListener(
callback: function,
)
האירוע הזה נשלח כשהמיקוד נכנס לתיבת טקסט. הוא נשלח לכל התוספים שמאזינים לאירוע הזה, ומופעל על ידי המשתמש.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(context: InputContext) => void
-
הקשר
-
onInputContextUpdate
browser.input.ime.onInputContextUpdate.addListener(
callback: function,
)
האירוע הזה נשלח כשמאפייני InputContext הנוכחי משתנים, למשל הסוג. הוא נשלח לכל התוספים שמאזינים לאירוע הזה, ומופעל על ידי המשתמש.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(context: InputContext) => void
-
הקשר
-
onKeyEvent
browser.input.ime.onKeyEvent.addListener(
callback: function,
)
מופעל כשאירוע מרכזי נשלח ממערכת ההפעלה. האירוע יישלח לתוסף אם התוסף הזה הוא הבעלים של ה-IME הפעיל. פונקציית המאזין צריכה להחזיר את הערך True אם האירוע טופל, ואת הערך False אם לא. אם האירוע יוערך באופן אסינכרוני, הפונקציה הזו חייבת להחזיר ערך לא מוגדר, ובהמשך ה-IME חייב לקרוא ל-keyEventHandled() עם התוצאה.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string, keyData: KeyboardEvent, requestId: string) => boolean | undefined
-
engineID
מחרוזת
-
keyData
-
requestId
מחרוזת
-
החזרות
boolean | undefined
-
onMenuItemActivated
browser.input.ime.onMenuItemActivated.addListener(
callback: function,
)
הפונקציה מופעלת כשהמשתמש בוחר פריט בתפריט
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string, name: string) => void
-
engineID
מחרוזת
-
שם
מחרוזת
-
onReset
browser.input.ime.onReset.addListener(
callback: function,
)
האירוע הזה נשלח כש-Chrome מסיים סשן פעיל של קלט טקסט.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string) => void
-
engineID
מחרוזת
-
onSurroundingTextChanged
browser.input.ime.onSurroundingTextChanged.addListener(
callback: function,
)
מופעלת כשהמחרוזת שניתנת לעריכה סביב סמן הטקסט משתנה או כשמיקום סמן הטקסט משתנה. אורך הטקסט מוגבל ל-100 תווים לכל כיוון.
פרמטרים
-
callback
פונקציה
הפרמטר
callbackנראה כך:(engineID: string, surroundingInfo: object) => void
-
engineID
מחרוזת
-
surroundingInfo
אובייקט
-
עוגן
number
המיקום של תחילת הקטע שנבחר. הערך הזה מציין את מיקום הסמן אם אין בחירה.
-
מיקוד
number
מיקום הסיום של הבחירה. הערך הזה מציין את מיקום הסמן אם אין בחירה.
-
היסט
number
Chrome 46 ואילך browser.* מ-Chrome 148מיקום ההיסט של
text. מכיוון ש-textכולל רק קבוצת משנה של טקסט מסביב לסמן, ההיסט מציין את המיקום המוחלט של התו הראשון שלtext. -
text
מחרוזת
הטקסט שמסביב לסמן. זה רק חלק מהטקסט בשדה להזנת קלט.
-
-