คำอธิบาย
ใช้ chrome.input.ime
API เพื่อติดตั้งใช้งาน IME ที่กำหนดเองสำหรับ ChromeOS ซึ่งจะช่วยให้ส่วนขยายจัดการการกดแป้น ตั้งค่าการเขียน และจัดการหน้าต่างคำแนะนำได้
สิทธิ์
input
คุณต้องประกาศสิทธิ์ "input" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ input.ime API เช่น
{
"name": "My extension",
...
"permissions": [
"input"
],
...
}
ความพร้อมใช้งาน
ตัวอย่าง
โค้ดต่อไปนี้สร้าง IME ที่แปลงตัวอักษรที่พิมพ์เป็นตัวพิมพ์ใหญ่
var context_id = -1;
chrome.input.ime.onFocus.addListener(function(context) {
context_id = context.contextID;
});
chrome.input.ime.onKeyEvent.addListener(
function(engineID, keyData) {
if (keyData.type == "keydown" && keyData.key.match(/^[a-z]$/)) {
chrome.input.ime.commitText({"contextID": context_id,
"text": keyData.key.toUpperCase()});
return true;
} else {
return false;
}
}
);
ประเภท
AssistiveWindowButton
รหัสของปุ่มในหน้าต่างความช่วยเหลือพิเศษ
ค่าแจกแจง
"เลิกทำ"
"addToDictionary"
AssistiveWindowProperties
พร็อพเพอร์ตี้ของหน้าต่างความช่วยเหลือ
พร็อพเพอร์ตี้
-
announceString
สตริง ไม่บังคับ
สตริงสำหรับ ChromeVox เพื่อประกาศ
-
ประเภท
"เลิกทำ"
-
มองเห็นได้
บูลีน
ตั้งค่าเป็นจริงเพื่อแสดง AssistiveWindow และตั้งค่าเป็นเท็จเพื่อซ่อน
AssistiveWindowType
ประเภทของหน้าต่างเครื่องมือช่วยเหลือ
ค่า
"เลิกทำ"
AutoCapitalizeType
ประเภทการเปลี่ยนตัวพิมพ์ของช่องข้อความโดยอัตโนมัติ
ค่าแจกแจง
"อักขระ"
"words"
"ประโยค"
InputContext
อธิบายบริบทอินพุต
พร็อพเพอร์ตี้
-
autoCapitalizeChrome 69 ขึ้นไป
ประเภทการเปลี่ยนตัวพิมพ์ของช่องข้อความโดยอัตโนมัติ
-
autoComplete
บูลีน
ฟิลด์ข้อความต้องการการเติมข้อความอัตโนมัติหรือไม่
-
autoCorrect
บูลีน
ฟิลด์ข้อความต้องการแก้ไขอัตโนมัติหรือไม่
-
contextID
ตัวเลข
ใช้เพื่อระบุเป้าหมายของการดำเนินการในช่องข้อความ รหัสนี้จะใช้ไม่ได้ทันทีที่เรียกใช้ onBlur
-
shouldDoLearning
บูลีน
Chrome 68 ขึ้นไปไม่ว่าจะใช้ข้อความที่ป้อนลงในช่องข้อความเพื่อปรับปรุงคำแนะนำในการพิมพ์สำหรับผู้ใช้หรือไม่
-
spellCheck
บูลีน
ฟิลด์ข้อความต้องการตรวจตัวสะกดหรือไม่
-
ประเภท
ประเภทค่าที่ช่องข้อความนี้แก้ไข (ข้อความ ตัวเลข URL ฯลฯ)
InputContextType
ประเภทค่าที่ช่องข้อความนี้แก้ไข (ข้อความ ตัวเลข URL ฯลฯ)
ค่าแจกแจง
"ข้อความ"
"search"
"tel"
"url"
"email"
"number"
"password"
"null"
KeyboardEvent
ดู http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent
พร็อพเพอร์ตี้
-
altKey
บูลีน ไม่บังคับ
กดแป้น ALT หรือไม่
-
altgrKey
บูลีน ไม่บังคับ
Chrome 79 ขึ้นไปกดแป้น ALTGR หรือไม่
-
capsLock
บูลีน ไม่บังคับ
เปิดใช้ CAPS_LOCK หรือไม่
-
รหัส
สตริง
ค่าของคีย์ความปลอดภัยซึ่งเป็นอุปกรณ์จริงที่กด ค่าจะไม่ได้รับผลกระทบจากรูปแบบแป้นพิมพ์ปัจจุบันหรือสถานะตัวแก้ไข
-
ctrlKey
บูลีน ไม่บังคับ
กดแป้น CTRL หรือไม่
-
extensionId
สตริง ไม่บังคับ
รหัสส่วนขยายของผู้ส่ง keyevent นี้
-
แป้น
สตริง
ค่าของปุ่มที่กด
-
keyCode
หมายเลข ไม่บังคับ
keyCode ของ HTML ที่เลิกใช้งานแล้ว ซึ่งเป็นโค้ดตัวเลขที่ขึ้นอยู่กับระบบและการติดตั้งใช้งาน ซึ่งแสดงถึงตัวระบุที่ไม่ได้แก้ไขซึ่งเชื่อมโยงกับปุ่มที่กด
-
requestId
สตริง ไม่บังคับ
(เลิกใช้งานแล้ว) รหัสของคำขอ ใช้พารามิเตอร์
requestId
จากเหตุการณ์onKeyEvent
แทน -
shiftKey
บูลีน ไม่บังคับ
กดแป้น SHIFT หรือไม่
-
ประเภท
อย่างใดอย่างหนึ่งของ keyup หรือ keydown
KeyboardEventType
ค่าแจกแจง
"keyup"
"keydown"
MenuItem
รายการเมนูที่ใช้โดยวิธีการป้อนข้อมูลเพื่อโต้ตอบกับผู้ใช้จากเมนูภาษา
พร็อพเพอร์ตี้
-
เลือกแล้ว
บูลีน ไม่บังคับ
ระบุว่าควรวาดรายการนี้ด้วยเครื่องหมายถูก
-
เปิดใช้อยู่
บูลีน ไม่บังคับ
ระบุว่ารายการนี้เปิดใช้อยู่
-
id
สตริง
สตริงที่จะส่งไปยังการเรียกกลับที่อ้างอิง MenuItem นี้
-
ป้ายกำกับ
สตริง ไม่บังคับ
ข้อความที่แสดงในเมนูสำหรับรายการนี้
-
รูปแบบ
MenuItemStyle ไม่บังคับ
ประเภทของรายการในเมนู
-
มองเห็นได้
บูลีน ไม่บังคับ
ระบุว่ารายการนี้มองเห็นได้
MenuItemStyle
ประเภทของรายการในเมนู ระบบจะถือว่าปุ่มตัวเลือกที่อยู่ระหว่างตัวคั่นเป็นกลุ่ม
ค่าแจกแจง
"check"
"radio"
"separator"
MenuParameters
พร็อพเพอร์ตี้
-
engineID
สตริง
รหัสของเครื่องมือที่จะใช้
-
รายการ
MenuItem[]
MenuItems ที่จะเพิ่มหรืออัปเดต โดยจะเพิ่มตามลำดับที่อยู่ในอาร์เรย์
MouseButton
ปุ่มเมาส์ที่คลิก
ค่าแจกแจง
"left"
"กลาง"
"right"
ScreenType
ประเภทหน้าจอที่เปิดใช้งาน IME
ค่าแจกแจง
"ปกติ"
"login"
"lock"
"secondary-login"
UnderlineStyle
ประเภทขีดเส้นใต้ที่จะแก้ไขกลุ่มนี้
ค่าแจกแจง
"ขีดเส้นใต้"
"doubleUnderline"
"noUnderline"
WindowPosition
ตำแหน่งที่จะแสดงหน้าต่างคำที่แนะนำ หากตั้งค่าเป็น "เคอร์เซอร์" หน้าต่างจะเลื่อนตามเคอร์เซอร์ หากตั้งค่าเป็น "composition" ระบบจะล็อกหน้าต่างไว้ที่จุดเริ่มต้นขององค์ประกอบ
ค่าแจกแจง
"เคอร์เซอร์"
"องค์ประกอบ"
เมธอด
clearComposition()
chrome.input.ime.clearComposition(
parameters: object,
): Promise<boolean>
ล้างการแต่งเพลงปัจจุบัน หากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่ การดำเนินการนี้จะล้มเหลว
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะล้างการเรียบเรียงเพลง
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
commitText()
chrome.input.ime.commitText(
parameters: object,
): Promise<boolean>
ยืนยันข้อความที่ระบุไปยังอินพุตปัจจุบัน
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะคอมมิตข้อความ
-
ข้อความ
สตริง
ข้อความที่จะคอมมิต
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
deleteSurroundingText()
chrome.input.ime.deleteSurroundingText(
parameters: object,
): Promise<void>
ลบข้อความรอบๆ เคอร์เซอร์
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะลบข้อความโดยรอบ
-
engineID
สตริง
รหัสของเครื่องมือที่รับเหตุการณ์
-
ความยาว
ตัวเลข
จำนวนอักขระที่จะลบ
-
ออฟเซ็ต
ตัวเลข
ออฟเซ็ตจากตำแหน่งแคเร็ตที่จะเริ่มการลบ ค่านี้อาจเป็นค่าลบได้
-
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไป
hideInputView()
chrome.input.ime.hideInputView(): void
ซ่อนหน้าต่างมุมมองอินพุตซึ่งระบบจะแสดงขึ้นโดยอัตโนมัติ หากซ่อนหน้าต่างมุมมองอินพุตอยู่แล้ว ฟังก์ชันนี้จะไม่ดำเนินการใดๆ
keyEventHandled()
chrome.input.ime.keyEventHandled(
requestId: string,
response: boolean,
): void
ระบุว่ามีการจัดการเหตุการณ์สำคัญที่ได้รับจาก onKeyEvent ควรเรียกใช้ฟังก์ชันนี้เฉพาะในกรณีที่ Listener ของ onKeyEvent เป็นแบบไม่พร้อมกัน
พารามิเตอร์
-
requestId
สตริง
รหัสคำขอของเหตุการณ์ที่จัดการ ซึ่งควรมาจาก keyEvent.requestId
-
การตอบกลับ
บูลีน
เป็นจริงหากมีการจัดการการกดแป้น เป็นเท็จหากไม่มีการจัดการ
sendKeyEvents()
chrome.input.ime.sendKeyEvents(
parameters: object,
): Promise<void>
ส่งเหตุการณ์สําคัญ ฟังก์ชันนี้คาดว่าจะใช้โดยแป้นพิมพ์เสมือน เมื่อผู้ใช้กดปุ่มบนแป้นพิมพ์เสมือน ระบบจะใช้ฟังก์ชันนี้เพื่อเผยแพร่เหตุการณ์ดังกล่าวไปยังระบบ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะส่งเหตุการณ์สำคัญ หรือ 0 เพื่อส่งเหตุการณ์สำคัญไปยังช่องที่ไม่ใช่ช่องป้อนข้อมูล
-
keyData
ข้อมูลเกี่ยวกับเหตุการณ์สําคัญ
-
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไป
setAssistiveWindowButtonHighlighted()
chrome.input.ime.setAssistiveWindowButtonHighlighted(
parameters: object,
): Promise<void>
ไฮไลต์/ยกเลิกการไฮไลต์ปุ่มในหน้าต่างความช่วยเหลือ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
announceString
สตริง ไม่บังคับ
ข้อความสำหรับโปรแกรมอ่านหน้าจอเพื่อประกาศ
-
buttonID
รหัสของปุ่ม
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างความช่วยเหลือ
-
ไฮไลต์ไว้
บูลีน
ปุ่มควรไฮไลต์ไหม
-
windowType
"เลิกทำ"
ประเภทหน้าต่างที่ปุ่มเป็นของ
-
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไป
setAssistiveWindowProperties()
chrome.input.ime.setAssistiveWindowProperties(
parameters: object,
): Promise<boolean>
แสดง/ซ่อนหน้าต่างความช่วยเหลือที่มีพร็อพเพอร์ตี้ที่ระบุ
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างความช่วยเหลือ
-
พร็อพเพอร์ตี้
พร็อพเพอร์ตี้ของหน้าต่างความช่วยเหลือ
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
setCandidates()
chrome.input.ime.setCandidates(
parameters: object,
): Promise<boolean>
ตั้งค่ารายการคำที่แนะนำปัจจุบัน การดำเนินการนี้จะล้มเหลวหากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
ผู้สมัคร
object[]
รายการตัวเลือกที่จะแสดงในหน้าต่างตัวเลือก
-
คำอธิบายประกอบ
สตริง ไม่บังคับ
ข้อความเพิ่มเติมที่อธิบายผู้สมัคร
-
ตัวเลือก
สตริง
ผู้สมัคร
-
id
ตัวเลข
รหัสของผู้สมัคร
-
ป้ายกำกับ
สตริง ไม่บังคับ
สตริงสั้นๆ ที่แสดงข้างตัวเลือก ซึ่งมักจะเป็นแป้นพิมพ์ลัดหรือดัชนี
-
parentId
หมายเลข ไม่บังคับ
รหัสที่จะเพิ่มผู้สมัครเหล่านี้
-
การใช้งาน
object ไม่บังคับ
การใช้งานหรือคำอธิบายโดยละเอียดของคำ
-
เนื้อความ
สตริง
สตริงเนื้อหาของคำอธิบายโดยละเอียด
-
title
สตริง
สตริงชื่อของคำอธิบายรายละเอียด
-
-
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างคำที่แนะนำ
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
setCandidateWindowProperties()
chrome.input.ime.setCandidateWindowProperties(
parameters: object,
): Promise<boolean>
กำหนดพร็อพเพอร์ตี้ของหน้าต่างคำที่แนะนำ การดำเนินการนี้จะล้มเหลวหากส่วนขยายไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
engineID
สตริง
รหัสของเครื่องมือที่จะตั้งค่าพร็อพเพอร์ตี้
-
พร็อพเพอร์ตี้
ออบเจ็กต์
-
auxiliaryText
สตริง ไม่บังคับ
ข้อความที่แสดงที่ด้านล่างของหน้าต่างคำที่แนะนำ
-
auxiliaryTextVisible
บูลีน ไม่บังคับ
จริงเพื่อแสดงข้อความเสริม เท็จเพื่อซ่อนข้อความเสริม
-
currentCandidateIndex
หมายเลข ไม่บังคับ
Chrome 84 ขึ้นไปดัชนีของผู้สมัครที่เลือกในปัจจุบันจากผู้สมัครทั้งหมด
-
cursorVisible
บูลีน ไม่บังคับ
เป็นจริงเพื่อแสดงเคอร์เซอร์ เป็นเท็จเพื่อซ่อนเคอร์เซอร์
-
pageSize
หมายเลข ไม่บังคับ
จำนวนตัวเลือกที่จะแสดงต่อ 1 หน้า
-
totalCandidates
หมายเลข ไม่บังคับ
Chrome 84 ขึ้นไปจำนวนตัวเลือกทั้งหมดสำหรับหน้าต่างตัวเลือก
-
แนวตั้ง
บูลีน ไม่บังคับ
เป็นจริงหากควรแสดงหน้าต่างคำที่แนะนำในแนวตั้ง เป็นเท็จหากต้องการให้แสดงในแนวนอน
-
มองเห็นได้
บูลีน ไม่บังคับ
เป็นจริงเพื่อแสดงหน้าต่างคำที่แนะนำ เป็นเท็จเพื่อซ่อนหน้าต่าง
-
windowPosition
WindowPosition ไม่บังคับ
ตำแหน่งที่จะแสดงหน้าต่างคำที่แนะนำ
-
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
setComposition()
chrome.input.ime.setComposition(
parameters: object,
): Promise<boolean>
ตั้งค่าองค์ประกอบปัจจุบัน หากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่ การดำเนินการนี้จะล้มเหลว
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
contextID
ตัวเลข
รหัสของบริบทที่จะตั้งค่าข้อความการเรียบเรียงเพลง
-
เคอร์เซอร์
ตัวเลข
ตำแหน่งในข้อความของเคอร์เซอร์
-
กลุ่ม
object[] ไม่บังคับ
รายการกลุ่มและประเภทที่เชื่อมโยง
-
End
ตัวเลข
ดัชนีของอักขระที่จะใช้สิ้นสุดกลุ่มนี้
-
เริ่มต้น
ตัวเลข
ดัชนีของอักขระที่จะเริ่มต้นส่วนนี้
-
รูปแบบ
ประเภทขีดเส้นใต้ที่จะแก้ไขกลุ่มนี้
-
-
selectionEnd
หมายเลข ไม่บังคับ
ตำแหน่งในข้อความที่การเลือกสิ้นสุด
-
selectionStart
หมายเลข ไม่บังคับ
ตำแหน่งในข้อความที่การเลือกเริ่มต้น
-
ข้อความ
สตริง
ข้อความที่จะตั้งค่า
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
setCursorPosition()
chrome.input.ime.setCursorPosition(
parameters: object,
): Promise<boolean>
กำหนดตำแหน่งของเคอร์เซอร์ในหน้าต่างคำที่แนะนำ ซึ่งจะไม่มีผลหากส่วนขยายนี้ไม่ได้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
พารามิเตอร์
ออบเจ็กต์
-
candidateID
ตัวเลข
รหัสของผู้สมัครรับเลือกตั้งที่จะเลือก
-
contextID
ตัวเลข
รหัสของบริบทที่เป็นเจ้าของหน้าต่างคำที่แนะนำ
-
การคืนสินค้า
-
Promise<boolean>
Chrome 111 ขึ้นไป
setMenuItems()
chrome.input.ime.setMenuItems(
parameters: MenuParameters,
): Promise<void>
เพิ่มรายการในเมนูที่ระบุลงในเมนูภาษาเมื่อ IME นี้ทำงานอยู่
พารามิเตอร์
-
พารามิเตอร์
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไป
updateMenuItems()
chrome.input.ime.updateMenuItems(
parameters: MenuParameters,
): Promise<void>
อัปเดตสถานะของ MenuItems ที่ระบุ
พารามิเตอร์
-
พารามิเตอร์
การคืนสินค้า
-
Promise<void>
Chrome 111 ขึ้นไป
กิจกรรม
onActivate
chrome.input.ime.onActivate.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อเปิดใช้งาน IME ซึ่งเป็นการส่งสัญญาณว่า IME จะได้รับเหตุการณ์ onKeyPress
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, screen: ScreenType) => void
-
engineID
สตริง
-
หน้าจอ
-
onAssistiveWindowButtonClicked
chrome.input.ime.onAssistiveWindowButtonClicked.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อมีการคลิกปุ่มในหน้าต่างความช่วยเหลือ
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(details: object) => void
-
รายละเอียด
ออบเจ็กต์
-
buttonID
รหัสของปุ่มที่คลิก
-
windowType
ประเภทของหน้าต่างการช่วยเหลือ
-
-
onBlur
chrome.input.ime.onBlur.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อโฟกัสออกจากกล่องข้อความ ระบบจะส่งไปยังส่วนขยายทั้งหมดที่กำลังรอรับฟังเหตุการณ์นี้และผู้ใช้ได้เปิดใช้ไว้
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(contextID: number) => void
-
contextID
ตัวเลข
-
onCandidateClicked
chrome.input.ime.onCandidateClicked.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้หากส่วนขยายนี้เป็นเจ้าของ IME ที่ใช้งานอยู่
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, candidateID: number, button: MouseButton) => void
-
engineID
สตริง
-
candidateID
ตัวเลข
-
ปุ่ม
-
onDeactivated
chrome.input.ime.onDeactivated.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อปิดใช้งาน IME ซึ่งเป็นการส่งสัญญาณว่า IME จะไม่ได้รับเหตุการณ์ onKeyPress อีกต่อไป
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string) => void
-
engineID
สตริง
-
onFocus
chrome.input.ime.onFocus.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อโฟกัสเข้าสู่กล่องข้อความ ระบบจะส่งไปยังส่วนขยายทั้งหมดที่กำลังรอรับฟังเหตุการณ์นี้และผู้ใช้ได้เปิดใช้ไว้
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(context: InputContext) => void
-
บริบท
-
onInputContextUpdate
chrome.input.ime.onInputContextUpdate.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อมีการเปลี่ยนแปลงพร็อพเพอร์ตี้ของ InputContext ปัจจุบัน เช่น ประเภท ระบบจะส่งไปยังส่วนขยายทั้งหมดที่กำลังรอรับฟังเหตุการณ์นี้และผู้ใช้ได้เปิดใช้ไว้
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(context: InputContext) => void
-
บริบท
-
onKeyEvent
chrome.input.ime.onKeyEvent.addListener(
callback: function,
)
เริ่มทำงานเมื่อมีการส่งเหตุการณ์สำคัญจากระบบปฏิบัติการ ระบบจะส่งเหตุการณ์ไปยังส่วนขยายหากส่วนขยายนี้เป็นเจ้าของ IME ที่ใช้งานอยู่ ฟังก์ชัน Listener ควรแสดงผลเป็นจริงหากมีการจัดการเหตุการณ์ และเป็นเท็จหากไม่มีการจัดการ หากจะประเมินเหตุการณ์แบบไม่พร้อมกัน ฟังก์ชันนี้ต้องแสดงผลเป็น "ไม่กำหนด" และ IME ต้องเรียกใช้ keyEventHandled() พร้อมผลลัพธ์ในภายหลัง
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, keyData: KeyboardEvent, requestId: string) => boolean | undefined
-
engineID
สตริง
-
keyData
-
requestId
สตริง
-
returns
boolean | undefined
-
onMenuItemActivated
chrome.input.ime.onMenuItemActivated.addListener(
callback: function,
)
เรียกใช้เมื่อผู้ใช้เลือกรายการเมนู
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, name: string) => void
-
engineID
สตริง
-
ชื่อ
สตริง
-
onReset
chrome.input.ime.onReset.addListener(
callback: function,
)
ระบบจะส่งเหตุการณ์นี้เมื่อ Chrome สิ้นสุดเซสชันการป้อนข้อความที่กำลังดำเนินการอยู่
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string) => void
-
engineID
สตริง
-
onSurroundingTextChanged
chrome.input.ime.onSurroundingTextChanged.addListener(
callback: function,
)
เรียกใช้เมื่อมีการเปลี่ยนแปลงสตริงที่แก้ไขได้รอบๆ เคอร์เซอร์ หรือเมื่อมีการย้ายตำแหน่งเคอร์เซอร์ ข้อความมีความยาวได้ไม่เกิน 100 อักขระสำหรับแต่ละทิศทาง
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callback
มีลักษณะดังนี้(engineID: string, surroundingInfo: object) => void
-
engineID
สตริง
-
surroundingInfo
ออบเจ็กต์
-
แท็ก Anchor
ตัวเลข
ตำแหน่งเริ่มต้นของการเลือก ค่านี้ระบุตำแหน่งเคอร์เซอร์หากไม่มีการเลือก
-
โฟกัส
ตัวเลข
ตำแหน่งสิ้นสุดของการเลือก ค่านี้ระบุตำแหน่งเคอร์เซอร์หากไม่มีการเลือก
-
ออฟเซ็ต
ตัวเลข
Chrome 46 ขึ้นไปตำแหน่งออฟเซ็ตของ
text
เนื่องจากtext
มีเพียงชุดย่อยของข้อความรอบๆ เคอร์เซอร์ ออฟเซ็ตจึงระบุตำแหน่งสัมบูรณ์ของอักขระแรกของtext
-
ข้อความ
สตริง
ข้อความรอบๆ เคอร์เซอร์ นี่เป็นเพียงส่วนย่อยของข้อความทั้งหมดในช่องป้อนข้อมูล
-
-