Bug 76208: Store control that submitted form in event so we can submit it to the server (fixes regression), r=harishd@netscape.com, sr=jst@netscape.com

git-svn-id: svn://10.0.0.236/trunk@92546 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
pollmann%netscape.com
2001-04-17 10:02:11 +00:00
parent 27f4c139a7
commit 6d4f34711c
5 changed files with 60 additions and 17 deletions

View File

@@ -971,7 +971,6 @@ nsFormControlHelper::DoManualSubmitOrReset(nsIPresContext* aPresContext,
aFormControlFrame->GetContent(getter_AddRefs(controlContent));
}
nsEventStatus status = nsEventStatus_eIgnore;
if (formContent) {
//Either use the PresShell passed in or go get it from the PresContext
nsCOMPtr<nsIPresShell> shell; // this will do our clean up
@@ -982,9 +981,16 @@ nsFormControlHelper::DoManualSubmitOrReset(nsIPresContext* aPresContext,
// With a valid PreShell handle the event
if (NS_SUCCEEDED(result) && nsnull != aPresShell) {
nsEvent event;
event.eventStructType = NS_EVENT;
// Get originator for event (failure is non-fatal)
nsCOMPtr<nsIContent> formControl;
aFormControlFrame->GetContent(getter_AddRefs(formControl));
nsFormEvent event;
event.eventStructType = NS_FORM_EVENT;
event.message = aDoSubmit?NS_FORM_SUBMIT:NS_FORM_RESET;
event.originator = formControl;
nsEventStatus status = nsEventStatus_eIgnore;
if (aDoDOMEvent) {
aPresShell->HandleDOMEventWithTarget(formContent, &event, &status);
} else {