Lord-Kamina / keybinder

Firefox add-on that allows deep customization of shortcuts. Based on Tim Taubert's "Customizable Shortcuts."

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Plugin not activating (ctrl+E)

cruzzer opened this issue · comments

I've gotten further on the ctrl+E issue. Apparently the plugin never fully worked for any shortcut, not just ctrl+E (v 45.0). I've found a workaround that might explain some of the issue.

[Workaround]

  1. Open add-on manager ctrl+shift+a
  2. Double-click on keybinder
  3. deactivate "steal focus from plug-ins"
  4. restart Firefox

After that everything works.

Really? That's exceedingly odd, since what that option does is generate
content scripts, it shouldn't mess with the shortcuts at all.

On Friday, 18 March 2016, cruzzer notifications@github.com wrote:

I've gotten further on the ctrl+E issue. Apparently the plugin never fully
worked for any shortcut, not just ctrl+E (v 45.0). I've found a workaround
that might explain some of the issue.

[Workaround]

  1. Open add-on manager ctrl+shift+a
  2. Double-click on keybinder
  3. deactivate "steal focus from plug-ins" and "allow plug-ins to keep
    focus"
  4. restart Firefox

After that everything works.


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#1

Gregorio Litenstein Goldzweig [image: glit_qr_4.png]
Médico Cirujano

Unless, there is an unrelated bug in the relevant script file that is
causing the add-on to throw and stop handling shortcuts appropriately.

On Friday, 18 March 2016, cruzzer notifications@github.com wrote:

I've gotten further on the ctrl+E issue. Apparently the plugin never fully
worked for any shortcut, not just ctrl+E (v 45.0). I've found a workaround
that might explain some of the issue.

[Workaround]

  1. Open add-on manager ctrl+shift+a
  2. Double-click on keybinder
  3. deactivate "steal focus from plug-ins" and "allow plug-ins to keep
    focus"
  4. restart Firefox

After that everything works.


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#1

Gregorio Litenstein Goldzweig [image: glit_qr_4.png]
Médico Cirujano

I turned "steal focus from plug-ins" on and off and could repeatedly activate the bug (i.e shortcut aren't changed). Next week I can try the workaround on a mac, there I was having the same issue.

I can confirm that workaround with deactivating "steal focus from plug-ins" works on a separate machine running osx.

I tried deactivated all my plugins (only 3) to see if that affected the issue, which it didn't. I'm running the latest version of Firefox with v45.0.

Edit: Try this version (not yet listed in the mozilla website) instead: https://addons.mozilla.org/en-US/firefox/addon/keybinder/versions/1.2.4

Hello, can you try the newest version (1.2.1) and tell me whether it's working for you now?

Version 1.2.1:

  • "Steal focus from plug-ins" workaround doesn't work anymore -> plugin not working for me
  • Does not show tools/keybinder in the top left menu section (File,view,edit,etc.)
  • keybinder mapping accessible via plug-in menu, but no effect

Version 1.2.4:

  • "Steal focus from plug-ins" workaround doesn't work anymore -> plugin not working for me
  • Does not show tools/keybinder in the top left menu section (File,view,edit,etc.)
  • I can't access key mapping via plug-in, button doesn't open mapping window

Misc:

  • Reinstalling 1.1.2 works with workaround

Would you a) tell me what version of Firefox are you currently using? And b) I need console logs and to know which other extensions you are using.

Gregorio Litenstein Goldzweig

Médico Cirujano

On 24 de marzo de 2016 at 06:33:57, cruzzer (notifications@github.com(mailto:notifications@github.com)) wrote:

Version 1.2.1:

"Steal focus from plug-ins" workaround doesn't work anymore -> plugin not working for me
Does not show tools/keybinder in the top left menu section (File,view,edit,etc.)
keybinder mapping accessible via plug-in menu, but no effect

Version 1.2.4:

"Steal focus from plug-ins" workaround doesn't work anymore -> plugin not working for me
Does not show tools/keybinder in the top left menu section (File,view,edit,etc.)
I can't access key mapping via plug-in, button doesn't open mapping window


You are receiving this because you commented.
Reply to this email directly or view it on GitHub(#1 (comment))

I ask this because I have been testing it and squashing bugs pretty thoroughly the past few days as I'm applying for AMO full-review; and so far, it appears to be working just fine on the latest stable Firefox.

Firefox 45.0
Enabled Plugins: Keybinder(1.2.41), TabGroups(1.0.2),

  1. [Browser Console (Click on "Shortcut Mappings"):]

keybinder:
TypeError: Windows is undefined
Stack trace:
@resource://gre/modules/commonjs/toolkit/loader.js -> resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:170:1
emitOnObject@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:112:9
emit@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/event/core.js:89:38
buttonClick@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/simple-prefs.js:22:3
Observer<.observe@resource://gre/modules/commonjs/toolkit/loader.js -> resource://gre/modules/commonjs/sdk/system/events.js:81:7
oncommand@about:addons:1:1

  1. [Browser Console (Firfox startup):]

19:20:56.224 keybinder:Object { stack: "", 5 more… }1 runner.js:166
fileName: "..../prefs/prefpane.js"
lineNumber: 76
message:"parentmenu is null"
stack: "MenuItem@resource://..se-backend.js:746:1"
toString:load/<.toString.value()
proto:TypeError

19:20:56.226 keybinder:Object { stack: "", 5 more… }1 Promise-backend.js:936
fileName: "..../prefs/prefpane.js"
lineNumber: 76
message:"parentmenu is null"
stack: "MenuItem@resource://..se-backend.js:746:1"
toString:load/<.toString.value()
proto:TypeError

Can confirm, I get the same errors on startup and when trying to activate the "Edit" and "Change" buttons in the addon manager.

Program: Firefox 45.0.1 (20160315153207)
Operativsystem: WINNT (x86-msvc) --(Windows 10)

  • All About Location Bar 1.2.5.1-signed
  • BetterStop 1.0.1-signed
  • Decentraleyes 1.2.2
  • Extension List Dumper 2 1.0.1
  • Firefox Hello Beta 0.1
  • Keybinder 1.2.41
  • Reddit Enhancement Suite 4.6.1
  • Tab Badge 2
  • Tree Style Tab 0.17.2016031101
  • uBlock Origin 1.6.4
  • YouTube High Definition 45.0

This is a very odd situation; I began seeing these same errors when testing the other day on the 48.0 nightly for mac; I actually suspect it to be a bug in SDK, since that syntax is used elsewhere without issue and hasn't really changed at all in the last few versions. I filed a bug report in bugzilla the other day but don't know if there's been any update.

This should now be fixed; please test the latest version and confirm.

Trying this with a fresh profile this time, no other addons.

The dialogs are now showing up when I click the buttons, however the list of shortcut mappings is empty and it is impossible to close the window (tried the Close button, Esc, Alt-F4).

The Address Patterns editor seems to be working.

Still getting similar parentmenu is null twice on startup and also one as the shortcut list is opening.

Two of these on startup:

fileName:"resource://gre/modules/commonjs/toolkit/loader.js -> resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js"
lineNumber:77
message:"parentmenu is null"
stack:"MenuItem@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:77:9
exports.createNewMenuItem@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:133:1
exports.applyPatch@resource://keybinder-at-fail-dot-cl/lib/patch/bug-406199.js:66:3
exports.Windows.addEventListener@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:38:1
.onTrack@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:126:13
_regWindow@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:104:7
WindowTracker@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:68:5
@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:123:1
@resource://keybinder-at-fail-dot-cl/lib/main.js:6:21
run@resource://gre/modules/commonjs/sdk/addon/runner.js:147:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:87:9
Handler.prototype.process@resource://gre/modules/Promise-backend.js:933:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:812:7
this.PromiseWalker.scheduleWalkerLoop/<@resource://gre/modules/Promise-backend.js:746:1
openModalWindow@resource://gre/components/nsPrompter.js:360:5
ModalPrompter.prototype.openPrompt@resource://gre/components/nsPrompter.js:550:9
ModalPrompter.prototype.confirmEx@resource://gre/components/nsPrompter.js:694:9
Prompter.prototype.confirmEx@resource://gre/components/nsPrompter.js:79:16
DefaultBrowserCheck.prompt@resource://app/components/nsBrowserGlue.js:2958:16
BG__onWindowsRestored/<@resource://app/components/nsBrowserGlue.js:1257:11
"

And one when I first open the shortcut window:

fileName:"resource://gre/modules/commonjs/toolkit/loader.js -> resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js"
lineNumber:77
message:"parentmenu is null"
stack:"MenuItem@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:77:9
exports.createNewMenuItem@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:133:1
exports.applyPatch@resource://keybinder-at-fail-dot-cl/lib/patch/bug-406199.js:66:3
exports.Windows.addEventListener@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:38:1
.onTrack@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:126:13
_regWindow@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:104:7
WindowTracker@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:68:5
@resource://keybinder-at-fail-dot-cl/lib/util/windows.js:123:1
@resource://keybinder-at-fail-dot-cl/lib/prefs/treeview.js:7:21
preferenceDialogInit@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:176:18
delegate.onTrack@resource://keybinder-at-fail-dot-cl/lib/prefs/prefpane.js:139:13
_regWindow@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:104:7
handleEvent@resource://gre/modules/commonjs/sdk/deprecated/window-utils.js:130:11
"

This is frankly ridiculous. I think I'm gonna have to get a Windows environment to test future releases on...
I've got a theory, though. Do you have a menubar in Firefox? if not, is that the default now? And... try turning the menubar on and tell me what happens.

The menubar is normally hidden until you hit Alt but I unhid it completely in order to test. Same thing, unfortunately.

I see. Either way, I was right about what was causing the error... The menubar on Windows does not have a "Window" section and that was the problem. Before it wasn't an issue because I used to modify that menu if on Mac but due to some refactoring and request by somebody I had changed it (and forgotten why that feature was originally Mac only)

Anyway... third time's the charm? Try 1.2.6.

Bingo! It's working perfectly. 👍

Keybinder 1.2.6 fixes:

  • Missing menu item (under alt menu: File,view,edit,etc.)
  • Hotkey menu not opening
  • Keybinder Icon not displaying in add-on overview

Not working

  • no tabGroups entry in action list -> can't set ctrl+e for tabgroups

Things are moving in the right direction. Keep up the good work. As a workaround I'm using the 1.1.2 version.

Cruzzer, on the release notes a few versions back, I explicitly said Tab Groups shortcuts are not going to be supported, period. This is because TabGroups uses an entirely different method to generate and handle them (and that was the original reason you weren't able to change them). Supporting them would require either me or Quicksaver to basically remake the whole extension, because they are irreconcilable. Because of this, I chose to explicitly ignore them.

Ah yes, I now see you mentioning it in version 1.2.1. I'll give 1.2.6 another try and set the shortcut in tabgroups.

I guess an issue could arise if tabgroups starts up before keybinder does and had the chance to deactivate "Web search 2=ctlr+e". I'll test it out and report back to tabgroups, as they might need to have some timeout value.

Thank you again for your efforts.

I don't think it will be a problem because what Keybinder actually does is not deactivate "Ctrl+E", rather it deactivates "Web search 2".

My idea didn't quite work (deactive websearch 2 in keybinder and set hotkey in tabgroups).

But I guess this might be a bug with tabgroups. Keybinder deactivates "Web search 2" at startup, but tabgroups does not see that immediately. Meaning that after every Firefox restart, tabgroups looses "ctrl+e".

I'll see what Quicksave thinks, or else I'll just stick with 1.1.2 or give give up on the idea. If it's okay with you, I will close this issue.