chrome.input.ime

คำอธิบาย

ใช้ chrome.input.ime API เพื่อติดตั้งใช้งาน IME ที่กำหนดเองสำหรับ ChromeOS ซึ่งจะช่วยให้ส่วนขยายจัดการการกดแป้น ตั้งค่าการเขียน และจัดการหน้าต่างคำแนะนำได้

สิทธิ์

input

คุณต้องประกาศสิทธิ์ "input" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ input.ime API เช่น

{
  "name": "My extension",
  ...
  "permissions": [
    "input"
  ],
  ...
}

ความพร้อมใช้งาน

ChromeOS เท่านั้น

ตัวอย่าง

โค้ดต่อไปนี้สร้าง 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

Chrome 85 ขึ้นไป

รหัสของปุ่มในหน้าต่างความช่วยเหลือพิเศษ

ค่าแจกแจง

"เลิกทำ"

"addToDictionary"

AssistiveWindowProperties

Chrome 85 ขึ้นไป

พร็อพเพอร์ตี้ของหน้าต่างความช่วยเหลือ

พร็อพเพอร์ตี้

  • announceString

    สตริง ไม่บังคับ

    สตริงสำหรับ ChromeVox เพื่อประกาศ

  • ประเภท

    "เลิกทำ"

  • มองเห็นได้

    บูลีน

    ตั้งค่าเป็นจริงเพื่อแสดง AssistiveWindow และตั้งค่าเป็นเท็จเพื่อซ่อน

AssistiveWindowType

Chrome 85 ขึ้นไป

ประเภทของหน้าต่างเครื่องมือช่วยเหลือ

ค่า

"เลิกทำ"

AutoCapitalizeType

Chrome 69 ขึ้นไป

ประเภทการเปลี่ยนตัวพิมพ์ของช่องข้อความโดยอัตโนมัติ

ค่าแจกแจง

"อักขระ"

"words"

"ประโยค"

InputContext

อธิบายบริบทอินพุต

พร็อพเพอร์ตี้

  • autoCapitalize
    Chrome 69 ขึ้นไป

    ประเภทการเปลี่ยนตัวพิมพ์ของช่องข้อความโดยอัตโนมัติ

  • autoComplete

    บูลีน

    ฟิลด์ข้อความต้องการการเติมข้อความอัตโนมัติหรือไม่

  • autoCorrect

    บูลีน

    ฟิลด์ข้อความต้องการแก้ไขอัตโนมัติหรือไม่

  • contextID

    ตัวเลข

    ใช้เพื่อระบุเป้าหมายของการดำเนินการในช่องข้อความ รหัสนี้จะใช้ไม่ได้ทันทีที่เรียกใช้ onBlur

  • shouldDoLearning

    บูลีน

    Chrome 68 ขึ้นไป

    ไม่ว่าจะใช้ข้อความที่ป้อนลงในช่องข้อความเพื่อปรับปรุงคำแนะนำในการพิมพ์สำหรับผู้ใช้หรือไม่

  • spellCheck

    บูลีน

    ฟิลด์ข้อความต้องการตรวจตัวสะกดหรือไม่

  • ประเภท

    ประเภทค่าที่ช่องข้อความนี้แก้ไข (ข้อความ ตัวเลข URL ฯลฯ)

InputContextType

Chrome 44 ขึ้นไป

ประเภทค่าที่ช่องข้อความนี้แก้ไข (ข้อความ ตัวเลข 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

Chrome 44 ขึ้นไป

ค่าแจกแจง

"keyup"

"keydown"

MenuItem

รายการเมนูที่ใช้โดยวิธีการป้อนข้อมูลเพื่อโต้ตอบกับผู้ใช้จากเมนูภาษา

พร็อพเพอร์ตี้

  • เลือกแล้ว

    บูลีน ไม่บังคับ

    ระบุว่าควรวาดรายการนี้ด้วยเครื่องหมายถูก

  • เปิดใช้อยู่

    บูลีน ไม่บังคับ

    ระบุว่ารายการนี้เปิดใช้อยู่

  • id

    สตริง

    สตริงที่จะส่งไปยังการเรียกกลับที่อ้างอิง MenuItem นี้

  • ป้ายกำกับ

    สตริง ไม่บังคับ

    ข้อความที่แสดงในเมนูสำหรับรายการนี้

  • รูปแบบ

    MenuItemStyle ไม่บังคับ

    ประเภทของรายการในเมนู

  • มองเห็นได้

    บูลีน ไม่บังคับ

    ระบุว่ารายการนี้มองเห็นได้

MenuItemStyle

Chrome 44 ขึ้นไป

ประเภทของรายการในเมนู ระบบจะถือว่าปุ่มตัวเลือกที่อยู่ระหว่างตัวคั่นเป็นกลุ่ม

ค่าแจกแจง

"check"

"radio"

"separator"

MenuParameters

Chrome 88 ขึ้นไป

พร็อพเพอร์ตี้

  • engineID

    สตริง

    รหัสของเครื่องมือที่จะใช้

  • รายการ

    MenuItems ที่จะเพิ่มหรืออัปเดต โดยจะเพิ่มตามลำดับที่อยู่ในอาร์เรย์

MouseButton

Chrome 44 ขึ้นไป

ปุ่มเมาส์ที่คลิก

ค่าแจกแจง

"left"

"กลาง"

"right"

ScreenType

Chrome 44 ขึ้นไป

ประเภทหน้าจอที่เปิดใช้งาน IME

ค่าแจกแจง

"ปกติ"

"login"

"lock"

"secondary-login"

UnderlineStyle

Chrome 44 ขึ้นไป

ประเภทขีดเส้นใต้ที่จะแก้ไขกลุ่มนี้

ค่าแจกแจง

"ขีดเส้นใต้"

"doubleUnderline"

"noUnderline"

WindowPosition

Chrome 44 ขึ้นไป

ตำแหน่งที่จะแสดงหน้าต่างคำที่แนะนำ หากตั้งค่าเป็น "เคอร์เซอร์" หน้าต่างจะเลื่อนตามเคอร์เซอร์ หากตั้งค่าเป็น "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 86 ขึ้นไป
chrome.input.ime.setAssistiveWindowButtonHighlighted(
  parameters: object,
)
: Promise<void>

ไฮไลต์/ยกเลิกการไฮไลต์ปุ่มในหน้าต่างความช่วยเหลือ

พารามิเตอร์

  • พารามิเตอร์

    ออบเจ็กต์

    • announceString

      สตริง ไม่บังคับ

      ข้อความสำหรับโปรแกรมอ่านหน้าจอเพื่อประกาศ

    • รหัสของปุ่ม

    • contextID

      ตัวเลข

      รหัสของบริบทที่เป็นเจ้าของหน้าต่างความช่วยเหลือ

    • ไฮไลต์ไว้

      บูลีน

      ปุ่มควรไฮไลต์ไหม

    • windowType

      "เลิกทำ"

      ประเภทหน้าต่างที่ปุ่มเป็นของ

การคืนสินค้า

  • Promise<void>

    Chrome 111 ขึ้นไป

setAssistiveWindowProperties()

Chrome 85 ขึ้นไป
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 85 ขึ้นไป
chrome.input.ime.onAssistiveWindowButtonClicked.addListener(
  callback: function,
)

ระบบจะส่งเหตุการณ์นี้เมื่อมีการคลิกปุ่มในหน้าต่างความช่วยเหลือ

พารามิเตอร์

  • callback

    ฟังก์ชัน

    พารามิเตอร์ callback มีลักษณะดังนี้

    (details: object) => void

    • รายละเอียด

      ออบเจ็กต์

      • รหัสของปุ่มที่คลิก

      • 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

      • ข้อความ

        สตริง

        ข้อความรอบๆ เคอร์เซอร์ นี่เป็นเพียงส่วนย่อยของข้อความทั้งหมดในช่องป้อนข้อมูล