> The fix uses character BreakIterator instead of the logic that relies on > caretBounds/hitTest/rangeShape in TextInputControl.nextCharacterVisually(). > > I believe this is a more reliable method of navigation, as it behaves in sync > with the jdk break iterator, thought it might work differently around > grapheme clusters, considering a recent change JDK-8291660 > > This change also introduces TextInputControlHelper class (impl. detail) which > gives access to character- and word- break iterators cached by > TextInputControl (*some say* these iterators and associated editing logic > should be a part of Content implementation, but that's a discussion for > another day).
Andy Goryachev has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision: - Merge remote-tracking branch 'origin/master' into 8296266.navigation - naming changes only - Merge remote-tracking branch 'origin/master' into 8296266.navigation - added robot test - exposing cached break iterators - using break iterator ------------- Changes: - all: https://git.openjdk.org/jfx/pull/1220/files - new: https://git.openjdk.org/jfx/pull/1220/files/94bba45e..36979b6a Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=1220&range=02 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1220&range=01-02 Stats: 3058 lines in 22 files changed: 2764 ins; 239 del; 55 mod Patch: https://git.openjdk.org/jfx/pull/1220.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1220/head:pull/1220 PR: https://git.openjdk.org/jfx/pull/1220