Sign up | Lost password? | Help

[ advanced search ]

Very weird bug on this site: can't type letter t?!

Forums » Opera Community » Opera for desktop » Opera browser

Friday, 27. June 2008, 14:11:55

TheJuggalo

avatar

Posts: 65

Very weird bug on this site: can't type letter t?!

This is probably the strangest thing ever, but if I visit this site with Opera 9.5:

http://www.rabobank.nl/zoeken/context/particulieren/?z01=&z41=1&z21=0&z6=1

believe it or not, I cannot type the letter t in the search field! (below "zoeken naar")

I can enter all other characters just fine, and when I hold down the Shift key I can also enter a capital T, but no lowercase t.
When I type something with lowercase t's in notepad and copy/paste it, it works fine.
When CAPS LOCK is enabled (and not pressing shift) I can also enter capital T's normally.

I already cleared all cookies, cache, restarted, etc, but the problem stays.
Uhmmm... like, WTF?! :confused:

Friday, 27. June 2008, 14:28:54

friguron

Frío y azul...

avatar

Posts: 427

Spain

Confirmed!!

It's a category 1 WTF !!!

Friday, 27. June 2008, 14:47:35

D1sasterp1ece

Behind the Mirror

avatar

Posts: 354

Bulgaria

+1, same here. Very strange stuff.

Friday, 27. June 2008, 15:49:31

+1, but with another charset (Russian), t is accepted :eyes:

Friday, 27. June 2008, 15:52:13

Geenimetsuri

avatar

Posts: 167

That's one weird feature*

*
Remember people, they aren't called bugs anymore :wink:

Friday, 27. June 2008, 16:04:21

umrain

avatar

Posts: 270

NJ, USA

Hmm this IS really weird. So I just looked at the code for that page, and there is a script loaded by the page that is checking for certain special keypresses (F5, Enter, etc.). But, apparently the way Opera handles key events is works differently from other browsers (IE at least) in certain cases, and so the 't' is mistakenly intercepted by the script.

Anyway, I filed a bug report (bug-343875).

You might be able to turn off javascript as a workaround, except I'm not sure about how much that site relies on javascript for other things. But yeah pasting 't' or using an uppercase 'T' if you can is probably your best bet until this is fixed.

Friday, 27. June 2008, 16:08:03

Pesala

Reclining Buddha

avatar

Posts: 12722

UK

Broken in 9.51 RC1 but not in IE7.

Reported via, Help, report a site problem.

Friday, 27. June 2008, 18:23:08

Ernst-24

rebmem tnelis

avatar

Posts: 272

This problem occurs with other sites, too.
But also with version 9.2x.

My workaround is to type the text elsewhere and copy&paste it to the input field.

I haven't reported this, because it happens while doing home banking (via web frontend).
"Untypable" characters: "r", "t", "z", "u".
(Remember, that theses characters are all neighbors on a keyboard with german layout.)
I don't think that the opera team would create an account just to examine the scripts... ;-)

(using Opera on MAC OS X)

Friday, 27. June 2008, 20:25:06

sgunhouse

Volunteer

avatar

Posts: 52650

Flag City, USA

I see the following javascript file: http://www.rabobank.nl/javascript/ra_keys.js

From the title the purpose is to prevent you from pressing F5 (Reload), but it is probably what is blocking the letter "t". Let me see ... decimal 116 is hex 74 - yes, that's the letter t. Add that script to the content blocker (Preferences > Advanced > Content) and the problem should go away. Though presumably there's a reason why they don't want you to press F5, so avoid reloading pages while on that site.

Friday, 27. June 2008, 21:14:01

umrain

avatar

Posts: 270

NJ, USA

Yes, the issue is that Opera passes the Unicode value of the letter pressed as the value of the "keyCode" property when responding to the "keyup" and "keydown" events.

IE sends "keyCode" as the letter value too, but only for "keypress" events. For "keyup" and "keydown" events it uses a totally different mapping, despite Microsoft's own documentation making no mention of this. Well actually it mentions it now, but only thanks to user-contributed "Community Content"; see the contributed note at: http://msdn.microsoft.com/en-us/library/ms533927(VS.85).aspx

That other mapping is what the script on the page is testing against.

Since the keyCode property in javascript is not part of any proper specification it is tricky to define what Opera should do here, but clearly a lot of key detection scripts are going to be written "the way that works in IE". (I'm not sure what Firefox and Safari do here.)

Friday, 27. June 2008, 21:53:19

sgunhouse

Volunteer

avatar

Posts: 52650

Flag City, USA

A realistic method which would pass that script is for the keycode to be 84 (T instead of t) and charcode to be 116 - or just to have any non-zero charcode. I think Windows actually has both set to 116, but 84 would make more sense as the keycode.

Friday, 12. September 2008, 18:22:50

lsaplai

avatar

Posts: 789

Canada

OK, this is not unique to Robobank (thanks hallvors for blogging about it or I would not have seen this thread).

hsbc.ca is also guilty of the same fault. I think the only place where it appears is when connecting to the online banking portion of the site: "t" cannot be typed. it has to be "T". Fortunately, the input is not case sensitive!

Is this something that Opera can fix? Could it be included in a browser js? or should it be taken with the bank (they are monolitic when it comes to fix their websites)?

@sgunhouse: can you help me identify which script I need to block on hsbc.ca to apply the workaround you suggested?

Thanks in advance

Wednesday, 24. September 2008, 19:50:19

hallvors

Opera Software

avatar

Posts: 1351

Norway

Opera Software
It would be quite trivial to patch this in browser.js but we can't do it globally since that will cause problems for sites that use "t" as a shortcut for something. If somebody with (user) JS skills is interested please refer to this how-to on submitting patches to browser.js.

(The most efficient patch would probably be something like
opera.addEventListener('BeforeEventListener.keypress', function(e){ if(e.event.keyCode==116)e.preventDefault(); },false)
)

Thanks in advance (you can tell I'm sneakily trying to get people used to the idea of submitting contributions to browser.js here.. :wink: )

Forums » Opera Community » Opera for desktop » Opera browser