issue460: key-kill-mode kills all keys in Conkeror in xulrunner 25 and above

Priority: bug Status: resolved
Files
File name Uploaded Type Edit Remove
conkeror.patch russell, 2014-08-23.00:10:59 text/x-patch
Messages
msg1186 (view) Author: scottjad Date: 2014-01-29.12:56:07
When key-kill-mode is enabled, Conkeror will stop handling application keybindings such as "C-x b" etc.
Conkeror will appear to be locked up, with no error messages in the console. Scrolling with the mouse
will however still work. "conkeror -f unfocus" will display a message in the minibuffer but does not
solve the problem.

I have reproduced the problem on xulrunner versions 25, 26 and 29a1-2014-01-29, without RC files and with
a fresh profile.

Steps to reproduce:
1. Run "conkeror -q"
2. M-x require("key-kill")
3. M-x key-kill-mode
4. Conkeror will no longer respond to keypresses.
5. No errors in the console
msg1187 (view) Author: retroj Date: 2014-01-29.22:36:31
My guess would be that they changed the way that keyboard events are processed, so that killing keydown
also automatically kills keypress.  It would be noted in a changelog or the "What changed" document if so.
An experiment that you could do would be to alter key-kill-mode so that it doesn't kill the keydown event,
and only kills the keyup event.  This would undermine its purpose, but it would at least tell you whether
this theory is correct.
msg1191 (view) Author: scottjad Date: 2014-02-04.21:54:43
Altering key-kill-mode to not kill the keydown event indeed results in Conkeror keybindings continuing to
work.
msg1196 (view) Author: kamaradclimber Date: 2014-02-27.08:12:36
Got the same issue here but changing key-kill mode source does not fix the issue.
I am using xulrunner 27.0-1
msg1197 (view) Author: scottjad Date: 2014-02-27.08:15:26
kamaradclimber,

You might have misread. There is currently no fix. Editing the source was only an attempt to better
understand the problem.
msg1200 (view) Author: vhallac Date: 2014-03-09.19:51:15
If I am not mistaken, this problem is caused by the fix to this mozilla bug:
https://bugzilla.mozilla.org/show_bug.cgi?id=501496

Essentially they stopped generating corresponding keypress events when a keydown event is killed.
msg1229 (view) Author: russell Date: 2014-08-23.00:10:59
so i think i may have a solution, but i really don't know what the hell i'm doing.

Any way i had a look over the kkk plugin for keysnail [1]. and they are just using the stopPropagation
method instead of both stopPropagation and preventDefault.

This seems to also work for the key-kill plugin, i have attached the patch i'm using to get key-kill
working again.  As i said though, i don't really know much javascript so i'm not sure if there will be
any side effects.

1. https://github.com/mooz/keysnail/blob/master/plugins/kkk.ks.js
msg1267 (view) Author: jrm Date: 2015-08-10.04:54:15
Patch has no effect for me running latest Conkeror from the git repository with firefox -app (version 39).
msg1286 (view) Author: scottjad Date: 2016-01-15.07:05:25
key-kill-mode works fine on Pale Moon (25.8.1), which is based on FF 24.
msg1305 (view) Author: lompik Date: 2016-04-29.06:32:43
The patch uploaded uploaded by russel works great here. It should got master.
Conkeror 1.0.0 -app with Firefox 45.0
msg1311 (view) Author: scottjad Date: 2016-05-16.08:25:52
russell: Thanks for the fix.

lompik: Thanks for testing it and bringing it to my attention.

The fix has been merged http://repo.or.cz/conkeror.git/commit/f87c22e196021fcd8028e62727bd94300eca5ba7
History
Date User Action Args
2016-05-16 08:25:53scottjadsetstatus: chatting -> resolved
messages: + msg1311
2016-04-29 06:32:43lompiksetmessages: + msg1305
2016-01-15 07:05:26scottjadsetmessages: + msg1286
2015-08-10 04:54:15jrmsetmessages: + msg1267
2014-08-23 00:11:00russellsetfiles: + conkeror.patch
messages: + msg1229
2014-03-09 19:51:16vhallacsetmessages: + msg1200
2014-02-27 08:15:27scottjadsetmessages: + msg1197
2014-02-27 08:12:37kamaradclimbersetmessages: + msg1196
2014-02-04 21:54:44scottjadsetmessages: + msg1191
2014-01-29 22:36:32retrojsetstatus: unread -> chatting
messages: + msg1187
2014-01-29 12:56:07scottjadcreate