зеркало из https://github.com/mozilla/gecko-dev.git
Bug 974318 part.9 Use WidgetTextEvent::mRanges on CompositionStringSynthesizer r=smaug
This commit is contained in:
Родитель
3a0ba16d1a
Коммит
991dd217bc
|
@ -138,8 +138,9 @@ CompositionStringSynthesizer::DispatchEvent(bool* aDefaultPrevented)
|
|||
WidgetTextEvent textEvent(true, NS_TEXT_TEXT, widget);
|
||||
textEvent.time = PR_IntervalNow();
|
||||
textEvent.theText = mString;
|
||||
textEvent.rangeCount = mClauses->Length();
|
||||
textEvent.rangeArray = mClauses->Elements();
|
||||
if (!mClauses->IsEmpty()) {
|
||||
textEvent.mRanges = mClauses;
|
||||
}
|
||||
|
||||
// XXX How should we set false for this on b2g?
|
||||
textEvent.mFlags.mIsSynthesizedForTests = true;
|
||||
|
|
|
@ -946,8 +946,21 @@ function synthesizeText(aEvent, aWindow)
|
|||
compositionString.setString(aEvent.composition.string);
|
||||
if (aEvent.composition.clauses[0].length) {
|
||||
for (var i = 0; i < aEvent.composition.clauses.length; i++) {
|
||||
compositionString.appendClause(aEvent.composition.clauses[i].length,
|
||||
aEvent.composition.clauses[i].attr);
|
||||
switch (aEvent.composition.clauses[i].attr) {
|
||||
case compositionString.ATTR_RAWINPUT:
|
||||
case compositionString.ATTR_SELECTEDRAWTEXT:
|
||||
case compositionString.ATTR_CONVERTEDTEXT:
|
||||
case compositionString.ATTR_SELECTEDCONVERTEDTEXT:
|
||||
compositionString.appendClause(aEvent.composition.clauses[i].length,
|
||||
aEvent.composition.clauses[i].attr);
|
||||
break;
|
||||
case 0:
|
||||
// Ignore dummy clause for the argument.
|
||||
break;
|
||||
default:
|
||||
throw new Error("invalid clause attribute specified");
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче