Aaron, Do you mean the caret offset is whereever the caret is blinking
either after the last char where the offset would be last char plus 1 or
at the beginning of the next line where the offset would be the position
of the first char on the line? I've forgotten, does the EOL or CRLF take
up zero or one or two spaces (on Win and Linux)?
Pete Brunet
IBM Accessibility Architecture and Development
11501 Burnet Road, MS 9022E004, Austin, TX 78758
Voice: (512) 838-4594, Cell: (512) 689-4155
Ionosphere: WS4G
Aaron Leventhal <[EMAIL PROTECTED]>
11/30/2007 10:53 AM
To
Pete Brunet/Austin/[EMAIL PROTECTED]
cc
[EMAIL PROTECTED]
Subject
Re: [Accessibility-ia2] magic numbers to indicate special positions on
text methods
The IDL should provide constants for these:
const long IAccessibleText::OFFSET_END_OF_TEXT = - 1
const long IAccessibleText::OFFSET_CARET = -2
When OFFSET_CARET is used with BOUNDARY_LINE_END the implementation
would be responsible for using the actual line the caret is shown on,
not the logical character offset which can be misleading.
Make sense?
- Aaron
Pete Brunet wrote:
>
> The Firefox a11y team has requested that we use -2 as a magic number
> offset on calls to IAText methods to indicate that the offset is
> wherever the caret is at. This is especially useful when at the end
> of the line because app behavior is often idiosyncratic at the end of
> the line, e.g. Aaron tested Notepad, Wordpad and Microsoft Word 2003.
> This is for the scenario where text wraps to the next line.
>
> 1. If you hit End, you're past the last char of the line. You're
> really on the first char of the next line. Although visually you're on
> the same line, logically you're on the next line, because the delete
> key will delete the first char of the next line, and right arrow will
> go to the 2nd char of the next line.
> 2. If you right arrow through a line, you never reach that final
> position where you're past the end. When you're on the space for the
> end of the line, the next right arrow key brings you to the next line.
> 3. This means that if your press End. left arrow, right arrow you
> change lines!
> 4. If you press the end key, then right arrow you won't hear the first
> char of the line you've moved to
> 5. If you press up or down arrow and you're near the end of a long
> line, you can end up past the end-of-line space char if you've moved
> to a shorter line. Logically you haven't changed lines, only visually
>
> Another magic number is -1 which would mean end of line.
>
> The methods involved are:
>
> IAText::characterExtents, text, textBeforeOffset, textAfterOffset,
> textAtOffset, setCaretOffset, scrollSubstringTo, scrollSubstringToPoint
> IAEditableText::copyText, deleteText, insertText, cutText, pasteText,
> replaceText, setAttributes
> IEHypertext::hyperlinkIndex
>
> Please let us know if there are any issues foreseen regarding this
> proposed enhancement.
>
> *Pete Brunet*
>
> IBM Accessibility Architecture and Development
> 11501 Burnet Road, MS 9022E004, Austin, TX 78758
> Voice: (512) 838-4594, Cell: (512) 689-4155
> Ionosphere: WS4G
> ------------------------------------------------------------------------
>
> _______________________________________________
> Accessibility-ia2 mailing list
> [email protected]
> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
>
_______________________________________________
Accessibility-ia2 mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2