зеркало из https://github.com/mozilla/gecko-dev.git
Bug 910978 part.7 Implement nsCompositionEvent::AssignCompositionEventData() r=smaug
This commit is contained in:
Родитель
46fa9e9ca2
Коммит
f2b7ea09af
|
@ -586,8 +586,7 @@ nsDOMEvent::DuplicatePrivateData()
|
|||
new nsCompositionEvent(false, msg, nullptr);
|
||||
nsCompositionEvent* oldCompositionEvent =
|
||||
static_cast<nsCompositionEvent*>(mEvent);
|
||||
compositionEvent->AssignGUIEventData(*oldCompositionEvent, true);
|
||||
compositionEvent->data = oldCompositionEvent->data;
|
||||
compositionEvent->AssignCompositionEventData(*oldCompositionEvent, true);
|
||||
newEvent = compositionEvent;
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -1395,6 +1395,14 @@ public:
|
|||
}
|
||||
|
||||
nsString data;
|
||||
|
||||
void AssignCompositionEventData(const nsCompositionEvent& aEvent,
|
||||
bool aCopyTargets)
|
||||
{
|
||||
AssignGUIEventData(aEvent, aCopyTargets);
|
||||
|
||||
data = aEvent.data;
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -241,6 +241,29 @@ const kTests = [
|
|||
},
|
||||
todoMismatch: [ ],
|
||||
},
|
||||
{ description: "nsCompositionEvent (compositionupdate)",
|
||||
targetID: "input-text", eventType: "compositionupdate",
|
||||
dispatchEvent: function () {
|
||||
document.getElementById(this.targetID).value = "";
|
||||
document.getElementById(this.targetID).focus();
|
||||
synthesizeComposition({ type: "compositionstart" });
|
||||
synthesizeComposition({ type: "compositionupdate", data: "\u30E9\u30FC\u30E1\u30F3" });
|
||||
synthesizeText({ "composition":
|
||||
{ "string": "\u30E9\u30FC\u30E1\u30F3",
|
||||
"clauses":
|
||||
[
|
||||
{ "length": 0, "attr": 0 }
|
||||
]
|
||||
},
|
||||
"caret": { "start": 4, "length": 0 }
|
||||
});
|
||||
synthesizeComposition({ type: "compositionend", data: "\u30E9\u30FC\u30E1\u30F3" });
|
||||
},
|
||||
canRun: function () {
|
||||
return true;
|
||||
},
|
||||
todoMismatch: [ ],
|
||||
},
|
||||
];
|
||||
|
||||
function doTest(aTest)
|
||||
|
|
Загрузка…
Ссылка в новой задаче