{"id":63,"date":"2008-08-13T15:19:00","date_gmt":"2008-08-13T15:19:00","guid":{"rendered":"https:\/\/knielsen-hq.org\/w\/?p=63"},"modified":"2021-09-01T07:39:50","modified_gmt":"2021-09-01T07:39:50","slug":"does-the-flash-plugin-play-dirty-tricks-with-the-x-keyboard","status":"publish","type":"post","link":"https:\/\/knielsen-hq.org\/w\/does-the-flash-plugin-play-dirty-tricks-with-the-x-keyboard\/","title":{"rendered":"Does the Flash plugin play dirty tricks with the X keyboard?"},"content":{"rendered":"\n<p>For a client, I am using a web application written in <a href=\"http:\/\/www.macromedia.com\/software\/flash\/about\/\">Flash<\/a>. This application behaves <strong>really<\/strong> strange with respect to the keyboard on Linux x86_64 (Ubuntu Hardy).<\/p>\n\n\n\n<p>I re-map the caps-lock key as a control key (a required action for any hardcore <a href=\"http:\/\/www.gnu.org\/software\/emacs\/\">Emacs<\/a> user to preserve sanity). Now the application has a hotkey CTRL-SHIFT-F to search. This hotkey works with the &#8220;real&#8221; control keys, but not with the re-mapped caps-lock key.<\/p>\n\n\n\n<p>Not that I am blaming the application&#8230; it should not even be possible for it to tell the difference between different control keys. In fact I cannot think of _any_ other program that does not work with re-mapped keys. Technically, it is not even &#8220;re-mapped&#8221;, in X11 all keymaps are created equal.<\/p>\n\n\n\n<p>The flash plugin must be doing some <strong>really<\/strong> nasty stuff with X11. Probably it has hardcoded PC keycodes in the source code instead of using proper X11 keysyms &#8230; now <strong>that<\/strong> would be sucky code.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>For a client, I am using a web application written in Flash. This application behaves really strange with respect to the keyboard on Linux x86_64 (Ubuntu Hardy). I re-map the caps-lock key as a control key (a required action for any hardcore Emacs user to preserve sanity). Now the application has a hotkey CTRL-SHIFT-F to&hellip; <a class=\"more-link\" href=\"https:\/\/knielsen-hq.org\/w\/does-the-flash-plugin-play-dirty-tricks-with-the-x-keyboard\/\">Continue reading <span class=\"screen-reader-text\">Does the Flash plugin play dirty tricks with the X keyboard?<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[11],"_links":{"self":[{"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/posts\/63"}],"collection":[{"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/comments?post=63"}],"version-history":[{"count":1,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/posts\/63\/revisions"}],"predecessor-version":[{"id":64,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/posts\/63\/revisions\/64"}],"wp:attachment":[{"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/media?parent=63"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/categories?post=63"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/knielsen-hq.org\/w\/wp-json\/wp\/v2\/tags?post=63"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}