Jacek Caban : mshtml: Move most code from handle_editor_load to exec_editmode.

Alexandre Julliard julliard at winehq.org
Tue Oct 9 13:37:38 CDT 2007


Module: wine
Branch: master
Commit: 99e6592c9d73b7b4b0a7d174f64c9cab7c83c9d4
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=99e6592c9d73b7b4b0a7d174f64c9cab7c83c9d4

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Sun Oct  7 10:48:35 2007 +0200

mshtml: Move most code from handle_editor_load to exec_editmode.

---

 dlls/mshtml/editor.c |   23 -----------------------
 dlls/mshtml/olecmd.c |   30 +++++++++++++++++++++++++++++-
 2 files changed, 29 insertions(+), 24 deletions(-)

diff --git a/dlls/mshtml/editor.c b/dlls/mshtml/editor.c
index 239bba5..20db6ee 100644
--- a/dlls/mshtml/editor.c
+++ b/dlls/mshtml/editor.c
@@ -505,29 +505,6 @@ void handle_edit_event(HTMLDocument *This, nsIDOMEvent *event)
 void handle_edit_load(HTMLDocument *This)
 {
     get_editor_controller(This->nscontainer);
-
-    if(This->ui_active) {
-        OLECHAR wszHTMLDocument[30];
-        RECT rcBorderWidths;
-
-        if(This->ip_window)
-            IOleInPlaceUIWindow_SetActiveObject(This->ip_window, NULL, NULL);
-        if(This->hostui)
-            IDocHostUIHandler_HideUI(This->hostui);
-
-        if(This->hostui)
-            IDocHostUIHandler_ShowUI(This->hostui, DOCHOSTUITYPE_AUTHOR, ACTOBJ(This), CMDTARGET(This),
-                This->frame, This->ip_window);
-
-        LoadStringW(hInst, IDS_HTMLDOCUMENT, wszHTMLDocument,
-                    sizeof(wszHTMLDocument)/sizeof(WCHAR));
-
-        if(This->ip_window)
-            IOleInPlaceUIWindow_SetActiveObject(This->ip_window, ACTOBJ(This), wszHTMLDocument);
-
-        memset(&rcBorderWidths, 0, sizeof(rcBorderWidths));
-        IOleInPlaceFrame_SetBorderSpace(This->frame, &rcBorderWidths);
-    }
 }
 
 static void set_ns_fontname(NSContainer *This, const char *fontname)
diff --git a/dlls/mshtml/olecmd.c b/dlls/mshtml/olecmd.c
index a137057..c56dce2 100644
--- a/dlls/mshtml/olecmd.c
+++ b/dlls/mshtml/olecmd.c
@@ -583,7 +583,35 @@ static HRESULT exec_editmode(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in,
 
     update_doc(This, UPDATE_UI);
 
-    return IPersistMoniker_Load(PERSISTMON(This), TRUE, mon, NULL, 0);
+    hres = IPersistMoniker_Load(PERSISTMON(This), TRUE, mon, NULL, 0);
+    IMoniker_Release(mon);
+    if(FAILED(hres))
+        return hres;
+
+    if(This->ui_active) {
+        OLECHAR wszHTMLDocument[30];
+        RECT rcBorderWidths;
+
+        if(This->ip_window)
+            IOleInPlaceUIWindow_SetActiveObject(This->ip_window, NULL, NULL);
+        if(This->hostui)
+            IDocHostUIHandler_HideUI(This->hostui);
+
+        if(This->hostui)
+            IDocHostUIHandler_ShowUI(This->hostui, DOCHOSTUITYPE_AUTHOR, ACTOBJ(This), CMDTARGET(This),
+                This->frame, This->ip_window);
+
+        LoadStringW(hInst, IDS_HTMLDOCUMENT, wszHTMLDocument,
+                    sizeof(wszHTMLDocument)/sizeof(WCHAR));
+
+        if(This->ip_window)
+            IOleInPlaceUIWindow_SetActiveObject(This->ip_window, ACTOBJ(This), wszHTMLDocument);
+
+        memset(&rcBorderWidths, 0, sizeof(rcBorderWidths));
+        IOleInPlaceFrame_SetBorderSpace(This->frame, &rcBorderWidths);
+    }
+
+    return S_OK;
 }
 
 static HRESULT exec_htmleditmode(HTMLDocument *This, DWORD cmdexecopt, VARIANT *in, VARIANT *out)




More information about the wine-cvs mailing list