Saya mencoba mengubah pintasan keyboard untuk menampilkan menu konteks di Firefox (setara dengan menekan Shift-F10
pada Linux atau Windows atau Control-Space
pada OS X). Sepertinya pintasan ini ditangani pada tingkat yang berbeda dari pintasan keyboard normal (tidak muncul di ekstensi Keyconfig yang memungkinkan pemetaan ulang sebagian besar pintasan keyboard).
Saya telah mencoba membuat acara kunci dan mouse untuk memicu menu konteks (menggunakan kode berikut yang dipetakan ke jalan pintas dengan Keyconfig) tetapi mereka belum berfungsi sejauh ini. Saya belum dapat melacak di mana dalam kode sumber Firefox menangani pintasan keyboard untuk menu konteks atau jika ada satu fungsi yang dapat saya panggil untuk menunjukkannya.
Acara mouse:
var focused = document.commandDispatcher.focusedElement;
if(!focused) focused = document.commandDispatcher.focusedWindow.document.activeElement;
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window,
0, 0, 0, 0, 0, false, false, false, false, 2, null);
focused.dispatchEvent(evt);
Acara utama:
var focused = document.commandDispatcher.focusedElement;
if(!focused) focused = document.commandDispatcher.focusedWindow.document.activeElement;
var evt = document.createEvent("KeyboardEvent");
evt.initKeyEvent("keypress", true, true, null, false, false, true, false, 0x79, 0);
focused.dispatchEvent(evt);
sumber
about:config
, tetapi saya memeriksa pada komputer yang berbeda dari yang saya awalnya gunakan ketika saya mengajukan pertanyaan dan menemukan bahwa saya benar-benar membuat jalan pintas di Keyconfig pada komputer itu (dan saya hanya menyadarinya dengan melihat ke dalamabout:config
). Dari jalan pintas lama itu, saya menghasilkan jawaban saya.Saya menemukan bahwa pertanyaan yang sama ini telah ditanyakan sebelumnya di MozillaZine di sini . Solusi itu menempatkan menu konteks di sudut kiri atas layar. Saya mencoba menggunakan solusi yang diberikan untuk pertanyaan lain ini tentang mendapatkan posisi layar DOM untuk menghasilkan kode di bawah ini yang menempatkan menu konteks lebih dekat ke elemen aktif, tetapi masih buggy (kadang-kadang menu agak jauh dari elemen):
sumber