Changeset 291728 in webkit
- Timestamp:
- Mar 22, 2022, 5:11:38 PM (5 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 2 edited
-
ChangeLog (modified) (1 diff)
-
WebProcess/WebPage/ios/WebPageIOS.mm (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r291724 r291728 1 2022-03-22 Megan Gardner <megan_gardner@apple.com> 2 3 Expand autocorrect context for more accurate results. 4 https://bugs.webkit.org/show_bug.cgi?id=237990 5 rdar://87353381 6 7 Expand autocorrect context to at least 10 words instead of 3, and with a min/max length of 40/100 instead of 12/30 8 and start context at the beginning of sentences to help with having more accurate autocorrect suggestions. 9 10 Reviewed by Tim Horton. 11 12 * WebProcess/WebPage/ios/WebPageIOS.mm: 13 (WebKit::WebPage::autocorrectionContext): 14 1 15 2022-03-22 Tyler Wilcock <tyler_w@apple.com> 2 16 -
trunk/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
r291371 r291728 2566 2566 VisiblePosition startPosition = frame->selection().selection().start(); 2567 2567 VisiblePosition endPosition = frame->selection().selection().end(); 2568 const unsigned minContextWordCount = 3;2569 const unsigned minContextLength = 12;2570 const unsigned maxContextLength = 30;2568 const unsigned minContextWordCount = 10; 2569 const unsigned minContextLength = 40; 2570 const unsigned maxContextLength = 100; 2571 2571 2572 2572 if (frame->selection().isRange()) … … 2599 2599 contextStartPosition = previousPosition; 2600 2600 } 2601 VisiblePosition sentenceContextStartPosition = positionOfNextBoundaryOfGranularity(startPosition, TextGranularity::SentenceGranularity, SelectionDirection::Backward); 2602 if (sentenceContextStartPosition.isNotNull() && sentenceContextStartPosition < contextStartPosition) 2603 contextStartPosition = sentenceContextStartPosition; 2601 2604 if (contextStartPosition.isNotNull() && contextStartPosition != startPosition) { 2602 2605 contextBefore = plainTextForContext(makeSimpleRange(contextStartPosition, startPosition)); … … 2607 2610 2608 2611 if (endPosition != endOfEditableContent(endPosition)) { 2609 VisiblePosition nextPosition; 2610 if (!atBoundaryOfGranularity(endPosition, TextGranularity::WordGranularity, SelectionDirection::Forward) && withinTextUnitOfGranularity(endPosition, TextGranularity::WordGranularity, SelectionDirection::Forward)) 2611 nextPosition = positionOfNextBoundaryOfGranularity(endPosition, TextGranularity::WordGranularity, SelectionDirection::Forward); 2612 contextAfter = plainTextForContext(makeSimpleRange(endPosition, nextPosition)); 2612 VisiblePosition nextPosition = positionOfNextBoundaryOfGranularity(endPosition, TextGranularity::SentenceGranularity, SelectionDirection::Forward); 2613 if (nextPosition.isNotNull() && nextPosition != endPosition) 2614 contextAfter = plainTextForContext(makeSimpleRange(endPosition, nextPosition)); 2613 2615 } 2614 2616 }
Note:
See TracChangeset
for help on using the changeset viewer.