Chromium Code Reviews

Side by Side Diff: third_party/WebKit/Source/core/editing/InputMethodController.h

Issue 1995333002: Handle newCursorPosition correctly for Android's commitText() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: change for aelias@'s review Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff |
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 39 matching lines...)
50 KeepSelection, 50 KeepSelection,
51 }; 51 };
52 52
53 static InputMethodController* create(LocalFrame&); 53 static InputMethodController* create(LocalFrame&);
54 DECLARE_TRACE(); 54 DECLARE_TRACE();
55 55
56 // international text input composition 56 // international text input composition
57 bool hasComposition() const; 57 bool hasComposition() const;
58 void setComposition(const String&, const Vector<CompositionUnderline>&, int selectionStart, int selectionEnd); 58 void setComposition(const String&, const Vector<CompositionUnderline>&, int selectionStart, int selectionEnd);
59 void setCompositionFromExistingText(const Vector<CompositionUnderline>&, uns igned compositionStart, unsigned compositionEnd); 59 void setCompositionFromExistingText(const Vector<CompositionUnderline>&, uns igned compositionStart, unsigned compositionEnd);
60
60 // Inserts the text that is being composed as a regular text and returns tru e 61 // Inserts the text that is being composed as a regular text and returns tru e
61 // if composition exists. 62 // if composition exists.
62 bool confirmComposition(); 63 bool replaceComposition();
aelias_OOO_until_Jul13 2016/08/25 02:50:57 I think the old name "confirmComposition" is bette
yabinh 2016/08/25 10:27:08 Done.
63 // Inserts the given text string in the place of the existing composition 64 // Inserts the given text string in the place of the existing composition
64 // and returns true. 65 // and returns true.
65 bool confirmComposition(const String& text, ConfirmCompositionBehavior confi rmBehavior = KeepSelection); 66 bool replaceComposition(const String& text, ConfirmCompositionBehavior confi rmBehavior = KeepSelection);
aelias_OOO_until_Jul13 2016/08/25 02:50:57 This is the one I wanted to make private. AFAIK,
yabinh 2016/08/25 10:27:08 Default argument is removed. This one is called i
aelias_OOO_until_Jul13 2016/08/25 22:43:15 The if/else logic in WebLocalFrameImpl::insertText
yabinh 2016/08/26 01:23:20 When |text| is empty, replaceComposition(const Str
aelias_OOO_until_Jul13 2016/08/26 02:08:59 Looks like WebLocalFrame::insertText actually is d
yabinh 2016/08/26 02:46:23 Yes. We can simply delete it. Perfect!
67
66 // Inserts the text that is being composed or specified non-empty text and 68 // Inserts the text that is being composed or specified non-empty text and
67 // returns true. 69 // returns true. This will not change the selection.
68 bool confirmCompositionOrInsertText(const String& text, ConfirmCompositionBe havior); 70 bool confirmComposition(const String& text);
71 // Inserts the text that is being composed or specified non-empty text and
72 // returns true. This will change the selection according to
73 // relativeCursorPosition.
74 bool confirmCompositionWithCursor(const String& text, int relativeCursorPosi tion);
75
yabinh 2016/08/26 02:46:23 On a second thought, I think it's better to name t
aelias_OOO_until_Jul13 2016/08/26 05:58:59 Dunno, I find that too long and I think that metho
yabinh 2016/08/26 07:18:32 OK. I'll use commitComposition for now and ask yos
69 // Deletes the existing composition text. 76 // Deletes the existing composition text.
70 void cancelComposition(); 77 void cancelComposition();
71 void cancelCompositionIfSelectionIsInvalid(); 78 void cancelCompositionIfSelectionIsInvalid();
72 EphemeralRange compositionEphemeralRange() const; 79 EphemeralRange compositionEphemeralRange() const;
73 Range* compositionRange() const; 80 Range* compositionRange() const;
74 81
75 void clear(); 82 void clear();
76 void documentDetached(); 83 void documentDetached();
77 84
78 PlainTextRange getSelectionOffsets() const; 85 PlainTextRange getSelectionOffsets() const;
(...skipping 30 matching lines...)
109 } 116 }
110 117
111 String composingText() const; 118 String composingText() const;
112 void selectComposition() const; 119 void selectComposition() const;
113 bool setSelectionOffsets(const PlainTextRange&, FrameSelection::SetSelection Options = FrameSelection::CloseTyping); 120 bool setSelectionOffsets(const PlainTextRange&, FrameSelection::SetSelection Options = FrameSelection::CloseTyping);
114 }; 121 };
115 122
116 } // namespace blink 123 } // namespace blink
117 124
118 #endif // InputMethodController_h 125 #endif // InputMethodController_h
OLDNEW

Powered by Google App Engine