Bug 14875 - Textarea with nowrap - left/right nav, Up/down nav both hide text
Summary: Textarea with nowrap - left/right nav, Up/down nav both hide text
Status: CLOSED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Forms (show other bugs)
Version: 523.x (Safari 3)
Hardware: All All
: P2 Normal
Assignee: mitz
URL: http://clearimageonline.com/playgroun...
Keywords: HasReduction, InRadar
Depends on:
Blocks:
 
Reported: 2007-08-03 13:46 PDT by Terry Riegel
Modified: 2007-08-11 16:32 PDT (History)
2 users (show)

See Also:


Attachments
Account for borders and scroll bars in scrollRectToVisible() (73.56 KB, patch)
2007-08-04 09:43 PDT, mitz
hyatt: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Terry Riegel 2007-08-03 13:46:05 PDT
SUMMARY:
Navigating a textarea (with the keyboard only) that is set to nowrap with the arrows places/hides
the cursor with the right scrollbar and the bottom scrollbar.

The bottom scroller and right scroller exhibited the same behavior. The right scrollbar issue has been resolved. The bottom scollbar issue hasn't. I am including the solved issue as well as the unsolved issue here as I think it may help idenitfy the solution better. This behavior is only exhibited when there is a textarea set to nowrap.



BOTTOM SCROLLBAR HIDING TEXT
--------
To duplicate add enough lines to create a right scrollbar, then midway through
create a line long enough to create a bottom scrollbar. (by bottom scrollbar I
mean positioned at the bottom of the texarea for scrolling left and right, and
by right scrollbar I mean positioned at the right of the textarea)

Then using just the arrow keys navigate to the bottom of the textarea. This should place your cursor at the end of the textarea., but it fails to scroll completely so it can be seen.

The offset is the width of the scrollbar.





THIS ONE HAS BEEN SOLVED
RIGHT SCROLLBAR HIDING TEXT
--------
To duplicate add enough lines to create a right scrollbar, then midway through
create a line long enough to create a bottom scrollbar. (by bottom scrollbar I
mean positioned at the bottom of the texarea for scrolling left and right, and
by right scrollbar I mean positioned at the right of the textarea)

Then using just the arrow keys navigate to the line below your long line. Hit
the left arrow, This should place your cursor at the end of the really long
line. It does but it fails to scroll completely so it can be seen.

The offset is the width of the scrollbars.
Comment 1 Terry Riegel 2007-08-03 14:10:38 PDT
> THIS ONE HAS BEEN SOLVED
> RIGHT SCROLLBAR HIDING TEXT

The right scrollbar issue has not been resolved. It was better on my initial test page, but after I removed all distracting elements and created a demonstration of the problem it was still there.

For an example of both issues see the following URL:

http://clearimageonline.com/playground/scrollbardemo.html
Comment 2 Terry Riegel 2007-08-03 16:56:19 PDT
mitz added Platform Only, I removed this as I tested on windows XP and OS X. I observed the same issue on both of those platforms.
Comment 3 mitz 2007-08-04 01:02:28 PDT
(In reply to comment #2)
> mitz added Platform Only

I blame Safari autofill. Thanks for correcting!
Comment 4 David Kilzer (:ddkilzer) 2007-08-04 06:17:09 PDT
I don't see any mention of a radar for this bug, so I'm removing the InRadar keyword.

Comment 5 mitz 2007-08-04 09:43:05 PDT
Created attachment 15838 [details]
Account for borders and scroll bars in scrollRectToVisible()
Comment 6 Dave Hyatt 2007-08-07 12:55:59 PDT
Comment on attachment 15838 [details]
Account for borders and scroll bars in scrollRectToVisible()

r=me
Comment 7 Mark Rowe (bdash) 2007-08-07 14:11:25 PDT
<rdar://problem/5392798>
Comment 8 Mark Rowe (bdash) 2007-08-09 20:51:00 PDT
Landed in r24971.
Comment 9 Terry Riegel 2007-08-10 14:21:23 PDT
I just tested this with
Safari for OS X Version 3.0.3 (522.12.1)

and the problem persists. Not sure if the fix has been commited to the copy I tested against, but I downloaded it around 5:00pm EST on August 10, 2007
Comment 10 mitz 2007-08-10 14:51:59 PDT
(In reply to comment #9)
> I just tested this with
> Safari for OS X Version 3.0.3 (522.12.1)
> 
> and the problem persists. Not sure if the fix has been commited to the copy I
> tested against, but I downloaded it around 5:00pm EST on August 10, 2007
> 

The fix is not included in Safari 3 beta releases. It is included however in the latest WebKit nightly build, available from <http://nightly.webkit.org>.
Comment 11 Terry Riegel 2007-08-11 16:32:06 PDT
It is usable at this point. When the cursor is at the far right of a textarea and I use the keyboard to go back to the left side it goes most of the way. It is 3 pixels shy of getting all the way back. I have to use the mouse to get the rest of the way back. This is usable at this point.

I like to avoid using the mouse so this feature is very important to me.

Thanks,

Terry Riegel