Bug 842927 part.1 Implement D3E KeyboardEvent.key r=smaug, sr=smaug

This commit is contained in:
Masayuki Nakano
2013-04-24 12:49:46 +09:00
parent 8b4dfcce40
commit 3d53503400
12 changed files with 393 additions and 7 deletions

View File

@@ -253,6 +253,7 @@ struct ParamTraits<nsKeyEvent>
static void Write(Message* aMsg, const paramType& aParam)
{
WriteParam(aMsg, static_cast<nsInputEvent>(aParam));
WriteParam(aMsg, static_cast<uint32_t>(aParam.mKeyNameIndex));
WriteParam(aMsg, aParam.keyCode);
WriteParam(aMsg, aParam.charCode);
WriteParam(aMsg, aParam.isChar);
@@ -261,11 +262,17 @@ struct ParamTraits<nsKeyEvent>
static bool Read(const Message* aMsg, void** aIter, paramType* aResult)
{
return ReadParam(aMsg, aIter, static_cast<nsInputEvent*>(aResult)) &&
ReadParam(aMsg, aIter, &aResult->keyCode) &&
ReadParam(aMsg, aIter, &aResult->charCode) &&
ReadParam(aMsg, aIter, &aResult->isChar) &&
ReadParam(aMsg, aIter, &aResult->location);
bool rv;
uint32_t keyNameIndex;
rv = ReadParam(aMsg, aIter, static_cast<nsInputEvent*>(aResult)) &&
ReadParam(aMsg, aIter, &keyNameIndex) &&
ReadParam(aMsg, aIter, &aResult->keyCode) &&
ReadParam(aMsg, aIter, &aResult->charCode) &&
ReadParam(aMsg, aIter, &aResult->isChar) &&
ReadParam(aMsg, aIter, &aResult->location);
aResult->mKeyNameIndex =
static_cast<mozilla::widget::KeyNameIndex>(keyNameIndex);
return rv;
}
};