看板 Browsers 關於我們 聯絡資訊
剛剛發了最新版本 3.0.20121121 能夠有限度的在 IE Tab 內使用 Firefox 熱鍵! http://forum.moztw.org/viewtopic.php?f=11&t=38803&p=177687#p177687 傷腦筋的 Firefox,plugin 吃掉熱鍵也是快十年的老問題了, 喊到現在永遠還留在 TODO list 裡面,沒有人去修。 這是很嚴重的 accessibility bug,不過,被逼急了我也是有辦法的。 從 IE Tab plugin 呼叫主程式的 javascript,把 plugin 收到的按鍵, 傳給 Firefox,再由 gBrowser 裡面,找到所有 <key> tag 的 DOM XulElement 元件,然後逐一比對,找到符合的 command, 然後再呼叫 doCommand(),完工! 有限度支援在 firefox plugin 內使用 firefox 熱鍵。 就我所知,在 NPAPI plugin 程式設計裡面, 我還沒看過有人使用這樣的解法來克服。 IE Tab 雖然是個表面上看似簡單的 plugin, 背後其實有很多神秘的 workaround 機制和低階 Windows 操作: 1. 利用 Windows hook,攔截 Firefox 的 message loop,在其中安插動作,並把部份訊 息轉發到 ATL COM 的程式 2. 利用 window subclassing,攔截 IE 最內層視窗訊息 3. 利用傳送假訊息給 Firefox,達成 OOPP 模式下正確切換輸入焦點 4. 利用 NPAPI plugin 和 Javascript 互相呼叫,達成正常套件無法執行的動作 5. 解析 Firefox 主程式的 XUL DOM 架構,抓出視窗上註冊的熱鍵,再和 plugin 皆收 到的鍵盤輸入比對,達成 firefox 熱鍵的部份支援。 這些怪招,各個都是花了很長時間的心血研究,才想出來的妙招。 可惜這年頭寫 NPAPI plugin 的人少了,Firefox 市占率也逐年衰退。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.64.247.1
rick:HZYSoft真熱心!感恩~! 11/21 19:27
rick: 大 <<<<吃字@@ 11/21 19:28
len849:為什麼我切換IE都會顯示 需安裝程式才能檢視此內容@@? 11/21 19:45
waterpic:給個讚~~我每次開每次當 11/21 20:32
willy69wu31:推 那堆低階操作真的是難搞 11/21 22:09
AnewMitch:Win7 64bit + IE10 按backsbace會跳回上一頁 11/22 00:03
Kreen:推! 11/22 00:27
t0042380:推熱心! 11/22 00:35
KCKCLIN: 11/22 03:12
dfudfut5:話說這個版本跟IE Tab 2 有什麼不一樣?? 11/22 03:15
art1:推!!! 11/22 08:28
rockmanx52:@dfudfut5:這個是完全不加料的本家正宗 11/22 08:40
taco20:推 11/22 17:18
Kenqr:推! 11/22 17:57
ThisIsNotKFC:推! 11/22 21:48
applewarm:推! 11/23 19:00
tonyselina:沒用也推 11/25 12:44
blackbeard:太專業太熱心了,讚! 11/25 12:54
jeremychang:立刻移除IE TAB 2...改裝正版IE TAB 12/23 09:44
luvq:讚! thx 03/02 21:34
moocow:ietab 2版不只會當掉 還會造成yahoo奇摩無法登入留言 03/07 10:16