зеркало из https://github.com/mozilla/pjs.git
[XForms] Backup instances before dispatching xforms-ready. Bug 329510, r=aaronr+smaug
This commit is contained in:
Родитель
8dad89aadf
Коммит
a15fb4630a
|
@ -557,9 +557,6 @@ nsXFormsModelElement::HandleDefault(nsIDOMEvent *aEvent, PRBool *aHandled)
|
||||||
rv = Rebuild();
|
rv = Rebuild();
|
||||||
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_ModelConstructDone].name)) {
|
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_ModelConstructDone].name)) {
|
||||||
rv = ConstructDone();
|
rv = ConstructDone();
|
||||||
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_Ready].name)) {
|
|
||||||
Ready();
|
|
||||||
mReadyHandled = PR_TRUE;
|
|
||||||
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_Reset].name)) {
|
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_Reset].name)) {
|
||||||
Reset();
|
Reset();
|
||||||
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_BindingException].name)) {
|
} else if (type.EqualsASCII(sXFormsEventsEntries[eEvent_BindingException].name)) {
|
||||||
|
@ -1417,12 +1414,6 @@ nsXFormsModelElement::Reset()
|
||||||
nsXFormsUtils::DispatchEvent(mElement, eEvent_Refresh);
|
nsXFormsUtils::DispatchEvent(mElement, eEvent_Refresh);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
nsXFormsModelElement::Ready()
|
|
||||||
{
|
|
||||||
BackupOrRestoreInstanceData(PR_FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
// This function will restore all of the model's instance data to it's original
|
// This function will restore all of the model's instance data to it's original
|
||||||
// state if the supplied boolean is PR_TRUE. If it is PR_FALSE, this function
|
// state if the supplied boolean is PR_TRUE. If it is PR_FALSE, this function
|
||||||
// will cause this model's instance data to be backed up.
|
// will cause this model's instance data to be backed up.
|
||||||
|
@ -1584,6 +1575,8 @@ nsXFormsModelElement::MaybeNotifyCompletion()
|
||||||
for (i = 0; i < models->Count(); ++i) {
|
for (i = 0; i < models->Count(); ++i) {
|
||||||
nsXFormsModelElement *model =
|
nsXFormsModelElement *model =
|
||||||
NS_STATIC_CAST(nsXFormsModelElement *, models->ElementAt(i));
|
NS_STATIC_CAST(nsXFormsModelElement *, models->ElementAt(i));
|
||||||
|
model->BackupOrRestoreInstanceData(PR_FALSE);
|
||||||
|
model->mReadyHandled = PR_TRUE;
|
||||||
nsXFormsUtils::DispatchEvent(model->mElement, eEvent_Ready);
|
nsXFormsUtils::DispatchEvent(model->mElement, eEvent_Ready);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -179,7 +179,6 @@ private:
|
||||||
NS_HIDDEN_(already_AddRefed<nsIDOMDocument>)
|
NS_HIDDEN_(already_AddRefed<nsIDOMDocument>)
|
||||||
FindInstanceDocument(const nsAString &aID);
|
FindInstanceDocument(const nsAString &aID);
|
||||||
NS_HIDDEN_(void) Reset();
|
NS_HIDDEN_(void) Reset();
|
||||||
NS_HIDDEN_(void) Ready();
|
|
||||||
NS_HIDDEN_(void) BackupOrRestoreInstanceData(PRBool restore);
|
NS_HIDDEN_(void) BackupOrRestoreInstanceData(PRBool restore);
|
||||||
|
|
||||||
/** Initializes the MIPs on all form controls */
|
/** Initializes the MIPs on all form controls */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче