Method and apparatus for cursor positioning in bi-directional text
OwnerEugene Mirkininventor
Life of this patent
Estimating the term…
Abstract
A cursor is moved through regions of text 300 having differing directions to a location visually adjacent to a previous cursor location. The cursor is moved in the direction of requested cursor movement even when moving from text having a first direction to text having a second direction. A comparison of direction for current and proposed cursor locations is made 810 in both a method and apparatus for so moving the cursor. The direction of a character to be inserted is also examined 816 in determining the next location of the cursor.
Claims18
A method to facilitate a user interface by moving a cursor across bi-directional characters on a display, the method comprising:
- calculating in a processor, responsive to a request for cursor movement and in accordance with a deterministic algorithm, a next position of the cursor when traversing from a first character having a first direction to a second character having a second direction;
- determining whether the next position is within a valid range including
- assigning a value to each character in a string comprising the bi-directional characters corresponding to an order entered;
- and
- determining that the next position is greater than or equal to the value for the first character and less than or equal to one plus the value for a latest character;
- and
- moving the cursor to the next position, the next position being visually adjacent to a current position of the cursor.
A software program to implement a user interface for moving a cursor through bi-directional text on a display, the software program when installed and operating on a processor resulting in the processor:
- responsive to a request for cursor movement, calculating a next deterministic position of the cursor when traversing from a first character having a first direction to a second character having a second direction;
- where
- the calculating the next position determines whether the next position is within a valid range, and
- assigns a value to each character in the bi-directional text corresponding to the order entered;
- and
- determines that the next position is greater than or equal to the value of the first character and less than or equal to one plus the value of the latest character;
- and
- moving the cursor to the next deterministic position, the next deterministic position being visually adjacent to a current position of the cursor.
An electronic device arranged to support movement of a cursor through bi-directional text, the electronic device comprising:
- a user interface comprising a display for displaying the bi-directional text and a cursor control for moving the cursor;
- and
- a processor coupled to the user interface for moving the cursor responsive to the cursor control,
- wherein the cursor is moved to an adjacent displayed location when traversing characters having different corresponding directions and wherein the processor determines that a next position for the cursor is within a valid range and calculates the next position by:
- assigning a value to each character of the bi-directional text, the value corresponding to the order entered;
- and
- determining that the next position is greater than or equal to the value for the first character and less than or equal to one plus the value for the latest character.
A method to facilitate a user interface including moving a cursor through a string of characters on a display, the characters being bi-directional characters, the method comprising:
- calculating in a processor and in accordance with a deterministic algorithm, responsive to a request for cursor movement, a next position of the cursor when traversing from a first character corresponding to a first language wherein text of the first language is read in a first direction to a second character corresponding to a second language wherein text of the second language is read in a direction opposite to the first direction wherein the calculating the next position utilizes a current position of the cursor, the request for cursor movement, a primary direction for the string comprising the bi-directional characters, and a direction for a next character;
- determining whether the next position is within a valid range of positions including:
- assigning a value to each character in the string comprising the bi-directional characters, the value corresponding to the order of entry for the each character;
- and
- determining that the next position is greater than or equal to the value for the first character and less than or equal to one plus the value for a latest character;
- and
- moving the cursor to the next position, the next position being visually adjacent to a current position of the cursor.
Dependencies are inferred from the claim text.