Hi, I wrote the offending code, and I apologize for your troubles. I
just didn't have a Mac to test on. I'll try to help debug it in anyway
I can though.
Here's what's supposed to be happening with those three functions,
reset_click, click_on_list, and use_arrow_keys. Surrounding the message
list is a <div> named mailcontframe. It's this div tag that contains
the scroll bar. What I sought to accomplish is to enable the arrow key
functionality only when the last click was inside that div tag.
It does this by setting the in_message_list flag to true or false
depending on whether the document was clicked or the mailcontframe was
clicked. If the mailcontframe was clicked, it would normally fire both
events because the mailcontframe is part of the document. Because of
this, when the mailcontframeis clicked, it cancel all other pending
events. This *might* be related to your problem.
Here are some tests for you to run to help me diagnose the problem.
1) resize the browser window until you have a vertical browser scroll
bar. Click on anywhere other than the message list and then try to use
your arrows to page through the window. The window should scroll.
2) Do the same thing, but this time click on the message list and use
the arrow keys. The selected message should change and the window
should *not* scroll.
Alternately, you could put some javascript alert() calls in those
functions to make sure that they're firing when they should be. To sum up:
When you click on the scroll bar or on any message, click_on_list()
should fire.
When you click elsewhere, reset_click should fire.
These are the first two things I need confirmed.
-Charles
Jacob Brunson wrote:
I recently found this problem with Safari (versions 1.3.2, but also with newer
tiger versions). The problem is that clicking on the message list scroll bar
to scroll up and down through the list doesn't work. The scroll bar doesn't
go anywhere. However, if you press the ctrl key down while clicking on the
scroll bar, it works fine.
There is a similar problem with the Apple key. After selecting anything on
the message list, using the apple modifier key doesn't work. This is a
problem because Apple-N opens new windows, Apple-W closes the current window.
Now macs only usually have one mouse button. Ctrl-click serves as a right
click. However, I connected a two button mouse and right clicking on the
scroll bar doesn't cause it to move, just a ctrl-click.
I've tracked the problem down to a particular change. It is in
program/js/app.js between cvs revisions 1.28 and 1.29 (for that file).
http://cvs.sourceforge.net/viewcvs.py/roundcubemail/roundcubemail/program/js/app.js?r1=text&tr1=1.28&r2=text&tr2=1.29&diff_format=h
I applied the differences between these two revisions one by one, and I found
the difference that caused scrolling to break. The diff that causes it to
break is the one that begins on line Line 246/249. (Lines 255 through 307 in
current cvs head)
It is a large chunk of code, and I'm not sure exactly what is causing the
problem, I thought I would ask here and see if anyone had any ideas. I would
be glad to work with to get this resolved. I know few people have macs, so I
would be glad to apply patches and report results.
--Jacob Brunson