26 #define NS_APPSTARTUPNOTIFIER_CONTRACTID "@mozilla.org/embedcomp/appstartup-notifier;1" 27 #define NS_WEBBROWSER_CONTRACTID "@mozilla.org/embedding/browser/nsWebBrowser;1" 28 #define NS_COMMANDPARAMS_CONTRACTID "@mozilla.org/embedcomp/command-params;1" 29 #define NS_HTMLSERIALIZER_CONTRACTID "@mozilla.org/layout/contentserializer;1?mimetype=text/html" 30 #define NS_EDITORCONTROLLER_CONTRACTID "@mozilla.org/editor/editorcontroller;1" 31 #define NS_PREFERENCES_CONTRACTID "@mozilla.org/preferences;1" 32 #define NS_VARIANT_CONTRACTID "@mozilla.org/variant;1" 33 #define NS_CATEGORYMANAGER_CONTRACTID "@mozilla.org/categorymanager;1" 34 #define NS_XMLHTTPREQUEST_CONTRACTID "@mozilla.org/xmlextras/xmlhttprequest;1" 35 #define NS_SCRIPTSECURITYMANAGER_CONTRACTID "@mozilla.org/scriptsecuritymanager;1" 37 #define PR_UINT32_MAX 0xffffffff 39 #define NS_STRING_CONTAINER_INIT_DEPEND 0x0002 40 #define NS_CSTRING_CONTAINER_INIT_DEPEND 0x0002 66 static const WCHAR wszNsContainer[] = {
'N',
's',
'C',
'o',
'n',
't',
'a',
'i',
'n',
'e',
'r',0};
82 WARN(
"NS_NewLocalFile failed: %08x\n", nsres);
103 *
ppv = &
This->nsISimpleEnumerator_iface;
105 TRACE(
"(%p)->(IID_nsISimpleEnumerator %p)\n",
This,
ppv);
106 *
ppv = &
This->nsISimpleEnumerator_iface;
136 nsISupports_Release(
This->value);
162 *_retval =
This->value;
187 nsISupports_AddRef(
value);
189 return &
ret->nsISimpleEnumerator_iface;
199 TRACE(
"(IID_nsIDirectoryServiceProvider %p)\n",
result);
202 TRACE(
"(IID_nsIDirectoryServiceProvider2 %p)\n",
result);
226 static const WCHAR wine_geckoW[] = {
'\\',
'w',
'i',
'n',
'e',
'_',
'g',
'e',
'c',
'k',
'o',0};
235 ERR(
"SHGetFolderPath failed: %08x\n",
hres);
246 ERR(
"Exists failed: %08x\n", nsres);
253 ERR(
"Create failed: %08x\n", nsres);
264 if(!
strcmp(prop,
"ProfD")) {
286 if(!
strcmp(prop,
"APluginsDL")) {
293 static const WCHAR gecko_pluginW[] = {
'\\',
'g',
'e',
'c',
'k',
'o',
'\\',
'p',
'l',
'u',
'g',
'i',
'n',0};
312 nsIFile_Release(
file);
339 static const WCHAR wszTHIS[] = {
'T',
'H',
'I',
'S',0};
352 nsres = nsIBaseWindow_SetSize(
This->window,
355 WARN(
"SetSize failed: %08x\n", nsres);
364 nsIWebBrowserFocus_Activate(
This->focus);
396 static const WCHAR controlW[] = {
'\\',
'c',
'o',
'n',
't',
'r',
'o',
'l',
'.',
'e',
'x',
'e',0};
397 static const WCHAR argsW[] =
398 {
' ',
'a',
'p',
'p',
'w',
'i',
'z',
'.',
'c',
'p',
'l',
' ',
'i',
'n',
's',
't',
'a',
'l',
'l',
'_',
'g',
'e',
'c',
'k',
'o',0};
412 memset(&si, 0,
sizeof(si));
428 size_t len, gre_path_len;
433 static const WCHAR pathW[] = {
'P',
'A',
'T',
'H',0};
434 static const WCHAR warnW[] = {
'w',
'a',
'r',
'n',0};
435 static const WCHAR xpcom_debug_breakW[] =
436 {
'X',
'P',
'C',
'O',
'M',
'_',
'D',
'E',
'B',
'U',
'G',
'_',
'B',
'R',
'E',
'A',
'K',0};
437 static const WCHAR nspr_log_modulesW[] =
438 {
'N',
'S',
'P',
'R',
'_',
'L',
'O',
'G',
'_',
'M',
'O',
'D',
'U',
'L',
'E',
'S',0};
439 static const WCHAR debug_formatW[] = {
'a',
'l',
'l',
':',
'%',
'd',0};
454 gre_path_len =
strlenW(gre_path);
463 || (
ptr[gre_path_len] &&
ptr[gre_path_len] !=
';')) {
474 static const WCHAR xul_dllW[] = {
'\\',
'x',
'u',
'l',
'.',
'd',
'l',
'l',0};
490 #define NS_DLSYM(func) \ 491 func = (void *)GetProcAddress(xul_handle, #func); \ 493 ERR("Could not GetProcAddress(" #func ") failed\n") 501 NS_DLSYM(NS_CStringContainerFinish);
528 static const WCHAR wszVersion[] = {
'\\',
'V',
'E',
'R',
'S',
'I',
'O',
'N',0};
536 ERR(
"Could not open VERSION file\n");
559 HKEY hkey = mshtml_key;
561 static const WCHAR wszGeckoPath[] =
562 {
'G',
'e',
'c',
'k',
'o',
'P',
'a',
't',
'h',0};
572 if(hkey != mshtml_key)
589 static const WCHAR wszMshtmlKey[] = {
590 'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
'\\',
'W',
'i',
'n',
'e',
591 '\\',
'M',
'S',
'H',
'T',
'M',
'L',0};
608 nsres = nsIPrefBranch_SetBoolPref(pref, pref_name,
val);
617 nsres = nsIPrefBranch_SetIntPref(pref, pref_name,
val);
626 nsres = nsIPrefBranch_SetCharPref(pref, pref_name,
val);
637 static const WCHAR international_keyW[] =
638 {
'S',
'o',
'f',
't',
'w',
'a',
'r',
'e',
639 '\\',
'M',
'i',
'c',
'r',
'o',
's',
'o',
'f',
't',
640 '\\',
'I',
'n',
't',
'e',
'r',
'n',
'e',
't',
' ',
'E',
'x',
'p',
'l',
'o',
'r',
'e',
'r',
641 '\\',
'I',
'n',
't',
'e',
'r',
'n',
'a',
't',
'i',
'o',
'n',
'a',
'l',0};
647 size =
sizeof(langs);
664 &IID_nsIPrefBranch, (
void**)&pref);
666 ERR(
"Could not get preference service: %08x\n", nsres);
675 nsIPrefBranch_Release(pref);
693 ERR(
"NS_InitXPCOM2 failed: %08x\n", nsres);
705 nsres = nsIServiceManager_QueryInterface(
pServMgr, &IID_nsIComponentManager, (
void**)&
pCompMgr);
707 ERR(
"Could not get nsIComponentManager: %08x\n", nsres);
709 nsres = NS_GetComponentRegistrar(®istrar);
713 ERR(
"NS_GetComponentRegistrar failed: %08x\n", nsres);
719 &IID_nsICategoryManager, (
void**)&
cat_mgr);
721 ERR(
"Could not get category manager service: %08x\n", nsres);
725 nsIComponentRegistrar_Release(registrar);
738 0, 0, { (
DWORD_PTR)(__FILE__
": load_gecko") }
747 static DWORD loading_thread;
757 if(!loading_thread) {
768 MESSAGE(
"Could not load wine-gecko. HTML rendering will be disabled.\n");
814 NS_CStringContainerFinish(
str);
838 NS_StringContainerFinish(
str);
846 ERR(
"failed: %08x\n", nsres);
873 nsres = nsIComponentManager_CreateInstanceByContractID(
pCompMgr,
877 ERR(
"Could not get nsICommandParams\n");
890 nsres = nsIComponentManager_CreateInstanceByContractID(
pCompMgr,
893 ERR(
"Could not get nsIVariant\n");
912 nsres = nsISupports_QueryInterface(iface, &IID_nsIInterfaceRequestor, (
void**)&iface_req);
916 nsres = nsIInterfaceRequestor_GetInterface(iface_req,
riid,
ppv);
917 nsIInterfaceRequestor_Release(iface_req);
930 nsIDOMNode_HasChildNodes(nsnode, &has_children);
932 nsres = nsIDOMNode_GetNodeType(nsnode, &
type);
934 ERR(
"GetType failed: %08x\n", nsres);
938 if(
type != DOCUMENT_NODE) {
939 nsres = nsIDOMNode_QueryInterface(nsnode, &IID_nsIContent, (
void**)&nscontent);
941 ERR(
"Could not get nsIContent interface: %08x\n", nsres);
948 nsIContentSerializer_AppendElementStart(serializer, nscontent, nscontent,
str);
951 nsIContentSerializer_AppendText(serializer, nscontent, 0, -1,
str);
954 nsres = nsIContentSerializer_AppendComment(serializer, nscontent, 0, -1,
str);
956 case DOCUMENT_NODE: {
958 nsIDOMNode_QueryInterface(nsnode, &IID_nsIDocument, (
void**)&nsdoc);
959 nsIContentSerializer_AppendDocumentStart(serializer, nsdoc,
str);
960 nsIDocument_Release(nsdoc);
963 case DOCUMENT_TYPE_NODE:
964 nsIContentSerializer_AppendDoctype(serializer, nscontent,
str);
966 case DOCUMENT_FRAGMENT_NODE:
976 nsIDOMNode_GetChildNodes(nsnode, &node_list);
977 nsIDOMNodeList_GetLength(node_list, &child_cnt);
979 for(
i=0;
i<child_cnt;
i++) {
980 nsres = nsIDOMNodeList_Item(node_list,
i, &child_node);
983 nsIDOMNode_Release(child_node);
985 ERR(
"Item failed: %08x\n", nsres);
989 nsIDOMNodeList_Release(node_list);
992 if(
type == ELEMENT_NODE)
993 nsIContentSerializer_AppendElementEnd(serializer, nscontent,
str);
995 if(
type != DOCUMENT_NODE)
996 nsIContent_Release(nscontent);
1006 nsres = nsIComponentManager_CreateInstanceByContractID(
pCompMgr,
1008 (
void**)&serializer);
1010 ERR(
"Could not get nsIContentSerializer: %08x\n", nsres);
1014 nsres = nsIContentSerializer_Init(serializer, 0, 100,
NULL,
FALSE,
FALSE );
1016 ERR(
"Init failed: %08x\n", nsres);
1020 nsres = nsIContentSerializer_Flush(serializer,
str);
1022 ERR(
"Flush failed: %08x\n", nsres);
1025 nsIContentSerializer_Release(serializer);
1036 nsIEditor_Release(
This->editor);
1040 if(
This->editor_controller) {
1041 nsIController_Release(
This->editor_controller);
1046 (
void**)&editing_session);
1048 ERR(
"Could not get nsIEditingSession: %08x\n", nsres);
1052 nsres = nsIEditingSession_GetEditorForWindow(editing_session,
1053 This->doc->basedoc.window->nswindow, &
This->editor);
1054 nsIEditingSession_Release(editing_session);
1056 ERR(
"Could not get editor: %08x\n", nsres);
1060 nsres = nsIComponentManager_CreateInstanceByContractID(
pCompMgr,
1063 nsres = nsIControllerContext_SetCommandContext(ctrlctx, (
nsISupports *)
This->editor);
1065 ERR(
"SetCommandContext failed: %08x\n", nsres);
1066 nsres = nsIControllerContext_QueryInterface(ctrlctx, &IID_nsIController,
1067 (
void**)&
This->editor_controller);
1068 nsIControllerContext_Release(ctrlctx);
1070 ERR(
"Could not get nsIController interface: %08x\n", nsres);
1072 ERR(
"Could not create edit controller: %08x\n", nsres);
1094 nsIComponentManager_Release(
pCompMgr);
1097 nsIServiceManager_Release(
pServMgr);
1100 nsICategoryManager_Release(
cat_mgr);
1141 nsres = nsIDocShell_GetContentViewer(doc_shell, &content_viewer);
1143 nsIDocShell_Release(doc_shell);
1145 nsres = nsIContentViewer_SetFullZoom(content_viewer,
factor);
1147 ERR(
"SetFullZoom failed: %08x\n", nsres);
1149 nsIContentViewer_Release(content_viewer);
1216 if(!
This->nscontainer)
1219 return nsIWebBrowserChrome_QueryInterface(&
This->nscontainer->nsIWebBrowserChrome_iface,
riid,
result);
1252 *
result = &
This->nsIContextMenuListener_iface;
1255 *
result = &
This->nsIURIContentListener_iface;
1258 *
result = &
This->nsIEmbeddingSiteWindow_iface;
1264 *
result = &
This->nsIInterfaceRequestor_iface;
1267 *
result = &
This->nsISupportsWeakReference_iface;
1271 nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1298 nsIWebBrowserChrome_Release(&
This->parent->nsIWebBrowserChrome_iface);
1299 if(
This->weak_reference) {
1300 This->weak_reference->nscontainer =
NULL;
1301 nsIWeakReference_Release(&
This->weak_reference->nsIWeakReference_iface);
1322 TRACE(
"(%p)->(%p)\n",
This, aWebBrowser);
1327 if(
This->webbrowser)
1328 nsIWebBrowser_AddRef(
This->webbrowser);
1329 *aWebBrowser =
This->webbrowser;
1338 TRACE(
"(%p)->(%p)\n",
This, aWebBrowser);
1340 if(aWebBrowser !=
This->webbrowser)
1341 ERR(
"Wrong nsWebBrowser!\n");
1350 WARN(
"(%p)->(%p)\n",
This, aChromeFlags);
1358 WARN(
"(%p)->(%08x)\n",
This, aChromeFlags);
1373 WARN(
"(%p)->(%d %d)\n",
This, aCX, aCY);
1387 WARN(
"(%p)->(%p)\n",
This, _retval);
1395 WARN(
"(%p)->(%08x)\n",
This, aStatus);
1428 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1434 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1440 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1450 DWORD dwID = CONTEXT_MENU_DEFAULT;
1454 TRACE(
"(%p)->(%08x %p %p)\n",
This, aContextFlags, aEvent, aNode);
1458 nsres = nsIDOMEvent_QueryInterface(aEvent, &IID_nsIDOMMouseEvent, (
void**)&
event);
1460 ERR(
"Could not get nsIDOMMouseEvent interface: %08x\n", nsres);
1464 nsIDOMMouseEvent_GetScreenX(
event, &
pt.x);
1465 nsIDOMMouseEvent_GetScreenY(
event, &
pt.y);
1466 nsIDOMMouseEvent_Release(
event);
1468 switch(aContextFlags) {
1470 case CONTEXT_DOCUMENT:
1471 case CONTEXT_TEXT: {
1474 nsres = nsIDOMHTMLDocument_GetSelection(
This->doc->basedoc.doc_node->nsdoc, &
selection);
1479 nsres = nsISelection_GetIsCollapsed(
selection, &is_collapsed);
1482 dwID = CONTEXT_MENU_TEXTSELECT;
1487 case CONTEXT_IMAGE|CONTEXT_LINK:
1488 dwID = CONTEXT_MENU_IMAGE;
1491 dwID = CONTEXT_MENU_ANCHOR;
1494 dwID = CONTEXT_MENU_CONTROL;
1497 FIXME(
"aContextFlags=%08x\n", aContextFlags);
1529 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1535 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1541 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1553 nsIURI_GetSpec(aURI, &spec_str);
1564 return !*_retval &&
This->content_listener
1565 ? nsIURIContentListener_OnStartURIOpen(
This->content_listener, aURI, _retval)
1575 TRACE(
"(%p)->(%p %x %p %p %p)\n",
This, aContentType, aIsContentPreferred,
1576 aRequest, aContentHandler, _retval);
1578 return This->content_listener
1579 ? nsIURIContentListener_DoContent(
This->content_listener, aContentType,
1580 aIsContentPreferred, aRequest, aContentHandler, _retval)
1585 const char *aContentType,
char **aDesiredContentType,
cpp_bool *_retval)
1589 TRACE(
"(%p)->(%s %p %p)\n",
This,
debugstr_a(aContentType), aDesiredContentType, _retval);
1594 return This->content_listener
1595 ? nsIURIContentListener_IsPreferred(
This->content_listener, aContentType,
1596 aDesiredContentType, _retval)
1601 const char *aContentType,
cpp_bool aIsContentPreferred,
char **aDesiredContentType,
1607 aDesiredContentType, _retval);
1609 return This->content_listener
1610 ? nsIURIContentListener_CanHandleContent(
This->content_listener, aContentType,
1611 aIsContentPreferred, aDesiredContentType, _retval)
1620 WARN(
"(%p)->(%p)\n",
This, aLoadCookie);
1622 return This->content_listener
1623 ? nsIURIContentListener_GetLoadCookie(
This->content_listener, aLoadCookie)
1632 WARN(
"(%p)->(%p)\n",
This, aLoadCookie);
1634 return This->content_listener
1635 ? nsIURIContentListener_SetLoadCookie(
This->content_listener, aLoadCookie)
1644 TRACE(
"(%p)->(%p)\n",
This, aParentContentListener);
1646 if(
This->content_listener)
1647 nsIURIContentListener_AddRef(
This->content_listener);
1649 *aParentContentListener =
This->content_listener;
1658 TRACE(
"(%p)->(%p)\n",
This, aParentContentListener);
1660 if(aParentContentListener == &
This->nsIURIContentListener_iface)
1663 if(
This->content_listener)
1664 nsIURIContentListener_Release(
This->content_listener);
1666 This->content_listener = aParentContentListener;
1667 if(
This->content_listener)
1668 nsIURIContentListener_AddRef(
This->content_listener);
1700 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1706 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1712 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1732 ERR(
"GetWindowRect failed\n");
1741 *
cx =
r.right-
r.left;
1743 *
cy =
r.bottom-
r.top;
1753 return nsIBaseWindow_SetFocus(
This->window);
1761 TRACE(
"(%p)->(%p)\n",
This, aVisibility);
1772 TRACE(
"(%p)->(%x)\n",
This, aVisibility);
1781 WARN(
"(%p)->(%p)\n",
This, aTitle);
1798 TRACE(
"(%p)->(%p)\n",
This, aSiteWindow);
1800 *aSiteWindow =
This->hwnd;
1827 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1833 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1839 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1880 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1886 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1892 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1905 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1924 return nsIWebBrowserChrome_QueryInterface(&
This->nsIWebBrowserChrome_iface,
riid,
result);
1930 return nsIWebBrowserChrome_AddRef(&
This->nsIWebBrowserChrome_iface);
1936 return nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
1946 if(!
This->weak_reference) {
1948 if(!
This->weak_reference)
1952 This->weak_reference->ref = 1;
1953 This->weak_reference->nscontainer =
This;
1956 *_retval = &
This->weak_reference->nsIWeakReference_iface;
1957 nsIWeakReference_AddRef(*_retval);
1970 nsIWebBrowserSetup *wbsetup;
1977 ERR(
"Creating WebBrowser failed: %08x\n", nsres);
1983 ERR(
"SetContainerWindow failed: %08x\n", nsres);
1987 nsres = nsIWebBrowser_QueryInterface(nscontainer->
webbrowser, &IID_nsIBaseWindow,
1988 (
void**)&nscontainer->
window);
1990 ERR(
"Could not get nsIBaseWindow interface: %08x\n", nsres);
1994 nsres = nsIWebBrowser_QueryInterface(nscontainer->
webbrowser, &IID_nsIWebBrowserSetup,
1997 nsres = nsIWebBrowserSetup_SetProperty(wbsetup, SETUP_IS_CHROME_WRAPPER,
FALSE);
1998 nsIWebBrowserSetup_Release(wbsetup);
2000 ERR(
"SetProperty(SETUP_IS_CHROME_WRAPPER) failed: %08x\n", nsres);
2004 ERR(
"Could not get nsIWebBrowserSetup interface\n");
2008 nsres = nsIWebBrowser_QueryInterface(nscontainer->
webbrowser, &IID_nsIWebNavigation,
2011 ERR(
"Could not get nsIWebNavigation interface: %08x\n", nsres);
2015 nsres = nsIWebBrowser_QueryInterface(nscontainer->
webbrowser, &IID_nsIWebBrowserFocus,
2016 (
void**)&nscontainer->
focus);
2018 ERR(
"Could not get nsIWebBrowserFocus interface: %08x\n", nsres);
2031 if(!nscontainer->
hwnd) {
2032 WARN(
"Could not create window\n");
2036 nsres = nsIBaseWindow_InitWindow(nscontainer->
window, nscontainer->
hwnd,
NULL, 0, 0, 100, 100);
2038 nsres = nsIBaseWindow_Create(nscontainer->
window);
2040 WARN(
"Creating window failed: %08x\n", nsres);
2044 nsIBaseWindow_SetVisibility(nscontainer->
window,
FALSE);
2045 nsIBaseWindow_SetEnabled(nscontainer->
window,
FALSE);
2047 ERR(
"InitWindow failed: %08x\n", nsres);
2051 nsres = nsIWebBrowser_SetParentURIContentListener(nscontainer->
webbrowser,
2054 ERR(
"SetParentURIContentListener failed: %08x\n", nsres);
2056 nsres = nsIWebBrowser_QueryInterface(nscontainer->
webbrowser, &IID_nsIScrollable, (
void**)&scrollable);
2058 nsres = nsIScrollable_SetDefaultScrollbarPreferences(scrollable,
2059 ScrollOrientation_Y, Scrollbar_Always);
2061 ERR(
"Could not set default Y scrollbar prefs: %08x\n", nsres);
2063 nsres = nsIScrollable_SetDefaultScrollbarPreferences(scrollable,
2064 ScrollOrientation_X, Scrollbar_Auto);
2066 ERR(
"Could not set default X scrollbar prefs: %08x\n", nsres);
2068 nsIScrollable_Release(scrollable);
2070 ERR(
"Could not get nsIScrollable: %08x\n", nsres);
2103 nsIWebBrowserChrome_Release(&
ret->nsIWebBrowserChrome_iface);
2116 nsIBaseWindow_SetVisibility(
This->window,
FALSE);
2117 nsIBaseWindow_Destroy(
This->window);
2119 nsIWebBrowser_SetContainerWindow(
This->webbrowser,
NULL);
2121 nsIWebBrowser_Release(
This->webbrowser);
2124 nsIWebNavigation_Release(
This->navigation);
2127 nsIBaseWindow_Release(
This->window);
2130 nsIWebBrowserFocus_Release(
This->focus);
2133 if(
This->editor_controller) {
2134 nsIController_Release(
This->editor_controller);
2139 nsIEditor_Release(
This->editor);
2143 if(
This->content_listener) {
2144 nsIURIContentListener_Release(
This->content_listener);
2153 nsIWebBrowserChrome_Release(&
This->nsIWebBrowserChrome_iface);
2164 nsres = nsIServiceManager_GetServiceByContractID(
pServMgr,
2166 &IID_nsIScriptSecurityManager, (
void**)&secman);
2168 ERR(
"Could not get sec manager service: %08x\n", nsres);
2172 nsres = nsIScriptSecurityManager_GetSystemPrincipal(secman, &nspri);
2173 nsIScriptSecurityManager_Release(secman);
2175 ERR(
"GetSystemPrincipal failed: %08x\n", nsres);
2179 nsres = nsIDOMWindow_QueryInterface(nswindow, &IID_nsIGlobalObject, (
void **)&nsglo);
2182 nsres = nsIComponentManager_CreateInstanceByContractID(
pCompMgr,
2186 ERR(
"Could not get nsIXMLHttpRequest: %08x\n", nsres);
2187 nsISupports_Release(nspri);
2188 nsIGlobalObject_Release(nsglo);
2192 nsres = nsIXMLHttpRequest_Init(nsxhr, nspri,
NULL, nsglo,
NULL,
NULL);
2194 nsISupports_Release(nspri);
2195 nsIGlobalObject_Release(nsglo);
2197 ERR(
"nsIXMLHttpRequest_Init failed: %08x\n", nsres);
2198 nsIXMLHttpRequest_Release(nsxhr);
static nsresult NSAPI nsWebBrowserChrome_SetStatus(nsIWebBrowserChrome *iface, UINT32 statusType, const PRUnichar *status)
static HRESULT init_nscontainer(NSContainer *nscontainer)
static nsresult NSAPI nsDirectoryServiceProvider2_GetFile(nsIDirectoryServiceProvider2 *iface, const char *prop, cpp_bool *persistent, nsIFile **_retval)
static nsresult NSAPI nsDirectoryServiceProvider2_QueryInterface(nsIDirectoryServiceProvider2 *iface, nsIIDRef riid, void **result)
static nsrefcnt NSAPI nsContextMenuListener_Release(nsIContextMenuListener *iface)
#define NS_CATEGORYMANAGER_CONTRACTID
static void register_nscontainer_class(void)
LONG WINAPI RegOpenKeyA(HKEY hKey, LPCSTR lpSubKey, PHKEY phkResult)
static nsresult NSAPI nsWebBrowserChrome_IsWindowModal(nsIWebBrowserChrome *iface, cpp_bool *_retval)
LONG WINAPI RegQueryValueExA(_In_ HKEY hkeyorg, _In_ LPCSTR name, _In_ LPDWORD reserved, _Out_opt_ LPDWORD type, _Out_opt_ LPBYTE data, _Inout_opt_ LPDWORD count)
static nsresult NSAPI nsURIContentListener_QueryInterface(nsIURIContentListener *iface, nsIIDRef riid, void **result)
void nsACString_SetData(nsACString *str, const char *data)
nsIWebBrowser * webbrowser
static nsIFile **static const PRUnichar cpp_bool *static const char cpp_bool *static void *CDECL * NS_Alloc(SIZE_T)
static void set_environment(LPCWSTR gre_path)
static nsresult NSAPI nsEmbeddingSiteWindow_GetTitle(nsIEmbeddingSiteWindow *iface, PRUnichar **aTitle)
static nsresult NSAPI nsWebBrowserChrome_SetWebBrowser(nsIWebBrowserChrome *iface, nsIWebBrowser *aWebBrowser)
WINE_UNICODE_INLINE unsigned int strlenW(const WCHAR *str)
static void set_preferences(void)
static BOOL install_wine_gecko(void)
static nsresult NSAPI nsWebBrowserChrome_QueryInterface(nsIWebBrowserChrome *iface, nsIIDRef riid, void **result)
static nsresult NSAPI nsEmbeddingSiteWindow_SetVisibility(nsIEmbeddingSiteWindow *iface, cpp_bool aVisibility)
static const nsIWeakReferenceVtbl nsWeakReferenceVtbl
nsIWebBrowserFocus * focus
static nsresult NSAPI nsEmbeddingSiteWindow_SetFocus(nsIEmbeddingSiteWindow *iface)
static nsresult NSAPI nsSingletonEnumerator_QueryInterface(nsISimpleEnumerator *iface, nsIIDRef riid, void **ppv)
UINT32 nsACString_GetData(const nsACString *str, const char **data)
HRESULT create_nscontainer(HTMLDocumentObj *doc, NSContainer **_ret)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint factor
UINT32 nsAString_GetData(const nsAString *str, const PRUnichar **data)
GLsizei const GLchar ** path
HWND WINAPI SetParent(_In_ HWND, _In_opt_ HWND)
GLdouble GLdouble GLdouble r
#define URL_UNESCAPE_INPLACE
static nsresult NSAPI nsWebBrowserChrome_GetChromeFlags(nsIWebBrowserChrome *iface, UINT32 *aChromeFlags)
static const WCHAR controlW[]
#define HKEY_CURRENT_USER
HINSTANCE WINAPI DECLSPEC_HOTPATCH LoadLibraryExW(LPCWSTR lpLibFileName, HANDLE hFile, DWORD dwFlags)
static nsresult NSAPI nsContextMenuListener_QueryInterface(nsIContextMenuListener *iface, nsIIDRef riid, void **result)
static BOOL check_version(LPCWSTR gre_path, const char *version_string)
static void set_bool_pref(nsIPrefBranch *pref, const char *pref_name, BOOL val)
static nsresult NSAPI nsWebBrowserChrome_SetChromeFlags(nsIWebBrowserChrome *iface, UINT32 aChromeFlags)
static BOOL load_wine_gecko(PRUnichar *gre_path)
nsIWebNavigation * navigation
static nsresult NSAPI nsSingletonEnumerator_HasMoreElements(nsISimpleEnumerator *iface, cpp_bool *_retval)
static nsICategoryManager * cat_mgr
NSContainer * nscontainer
static nsISimpleEnumerator * create_singleton_enumerator(nsISupports *value)
static nsresult NSAPI nsURIContentListener_CanHandleContent(nsIURIContentListener *iface, const char *aContentType, cpp_bool aIsContentPreferred, char **aDesiredContentType, cpp_bool *_retval)
#define INVALID_HANDLE_VALUE
#define NS_SCRIPTSECURITYMANAGER_CONTRACTID
DWORD WINAPI GetLastError(VOID)
static nsresult NSAPI nsEmbeddingSiteWindow_GetDimensions(nsIEmbeddingSiteWindow *iface, UINT32 flags, LONG *x, LONG *y, LONG *cx, LONG *cy)
GLint GLint GLint GLint GLint x
static LRESULT WINAPI nsembed_proc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
struct _WNDCLASSEXW WNDCLASSEXW
#define LOAD_WITH_ALTERED_SEARCH_PATH
static nsrefcnt NSAPI nsDirectoryServiceProvider2_AddRef(nsIDirectoryServiceProvider2 *iface)
BOOL WINAPI ShowWindow(_In_ HWND, _In_ int)
void WINAPI EnterCriticalSection(LPCRITICAL_SECTION)
static NSContainer * impl_from_nsIWebBrowserChrome(nsIWebBrowserChrome *iface)
static nsresult NSAPI nsURIContentListener_IsPreferred(nsIURIContentListener *iface, const char *aContentType, char **aDesiredContentType, cpp_bool *_retval)
static nsrefcnt NSAPI nsSupportsWeakReference_AddRef(nsISupportsWeakReference *iface)
BOOL WINAPI DestroyWindow(_In_ HWND)
#define CLASS_E_CLASSNOTAVAILABLE
static nsresult NSAPI nsTooltipListener_QueryInterface(nsITooltipListener *iface, nsIIDRef riid, void **result)
static void * heap_alloc(size_t len)
LRESULT WINAPI DefWindowProcW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
static nsresult NSAPI nsWeakReference_QueryReferent(nsIWeakReference *iface, const nsIID *riid, void **result)
nsIWritableVariant * create_nsvariant(void)
#define NS_EDITORCONTROLLER_CONTRACTID
void hide_tooltip(HTMLDocumentObj *) DECLSPEC_HIDDEN
HRESULT WINAPI UrlUnescapeW(LPWSTR pszUrl, LPWSTR pszUnescaped, LPDWORD pcchUnescaped, DWORD dwFlags)
ATOM WINAPI RegisterClassExW(_In_ CONST WNDCLASSEXW *)
GLenum GLuint GLenum GLsizei const GLchar * buf
DWORD WINAPI WaitForSingleObject(IN HANDLE hHandle, IN DWORD dwMilliseconds)
static nsresult NSAPI nsTooltipListener_OnShowTooltip(nsITooltipListener *iface, LONG aXCoord, LONG aYCoord, const PRUnichar *aTipText)
static unsigned gecko_path_len
static void node_release(HTMLDOMNode *node)
#define NS_PREFERENCES_CONTRACTID
#define NS_WEBBROWSER_CONTRACTID
static nsresult NSAPI nsWebBrowserChrome_SizeBrowserTo(nsIWebBrowserChrome *iface, LONG aCX, LONG aCY)
BOOL is_gecko_path(const char *path)
#define NS_ERROR_NULL_POINTER
static nsIServiceManager * pServMgr
void set_viewer_zoom(NSContainer *nscontainer, float factor)
void nsAString_InitDepend(nsAString *str, const PRUnichar *data)
static ATOM nscontainer_class
LONG WINAPI RegOpenKeyW(HKEY hKey, LPCWSTR lpSubKey, PHKEY phkResult)
static BOOL load_xul(const PRUnichar *gre_path)
static const nsIInterfaceRequestorVtbl nsInterfaceRequestorVtbl
static nsrefcnt NSAPI nsSingletonEnumerator_AddRef(nsISimpleEnumerator *iface)
static NSContainer * impl_from_nsISupportsWeakReference(nsISupportsWeakReference *iface)
_Out_opt_ int _Out_opt_ int * cy
static const WCHAR version[]
HWND WINAPI GetDesktopWindow(void)
void NSContainer_Release(NSContainer *This)
nsIWebBrowserChrome nsIWebBrowserChrome_iface
static BOOL init_xpcom(const PRUnichar *gre_path)
BSTR WINAPI SysAllocString(LPCOLESTR str)
static const WCHAR wszNsContainer[]
void release_nsio(void) DECLSPEC_HIDDEN
static nsresult NSAPI nsWebBrowserChrome_GetWebBrowser(nsIWebBrowserChrome *iface, nsIWebBrowser **aWebBrowser)
static nsresult NSAPI nsInterfaceRequestor_GetInterface(nsIInterfaceRequestor *iface, nsIIDRef riid, void **result)
static nsresult NSAPI nsSupportsWeakReference_GetWeakReference(nsISupportsWeakReference *iface, nsIWeakReference **_retval)
static nsrefcnt NSAPI nsURIContentListener_AddRef(nsIURIContentListener *iface)
static nsIComponentManager * pCompMgr
static nsresult NSAPI nsURIContentListener_SetLoadCookie(nsIURIContentListener *iface, nsISupports *aLoadCookie)
static nsresult NSAPI nsURIContentListener_GetLoadCookie(nsIURIContentListener *iface, nsISupports **aLoadCookie)
static nsrefcnt NSAPI nsInterfaceRequestor_Release(nsIInterfaceRequestor *iface)
char * get_nscategory_entry(const char *category, const char *entry)
void register_nsservice(nsIComponentRegistrar *, nsIServiceManager *) DECLSPEC_HIDDEN
static WCHAR gecko_path[MAX_PATH]
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
DWORD WINAPI GetCurrentThreadId(VOID)
BOOL WINAPI DECLSPEC_HOTPATCH CreateProcessW(LPCWSTR lpApplicationName, LPWSTR lpCommandLine, LPSECURITY_ATTRIBUTES lpProcessAttributes, LPSECURITY_ATTRIBUTES lpThreadAttributes, BOOL bInheritHandles, DWORD dwCreationFlags, LPVOID lpEnvironment, LPCWSTR lpCurrentDirectory, LPSTARTUPINFOW lpStartupInfo, LPPROCESS_INFORMATION lpProcessInformation)
static nsrefcnt NSAPI nsWebBrowserChrome_Release(nsIWebBrowserChrome *iface)
static nsresult NSAPI nsEmbeddingSiteWindow_SetDimensions(nsIEmbeddingSiteWindow *iface, UINT32 flags, LONG x, LONG y, LONG cx, LONG cy)
static nsrefcnt NSAPI nsWeakReference_Release(nsIWeakReference *iface)
static nsresult NSAPI nsURIContentListener_GetParentContentListener(nsIURIContentListener *iface, nsIURIContentListener **aParentContentListener)
static nsrefcnt NSAPI nsContextMenuListener_AddRef(nsIContextMenuListener *iface)
static nsIDirectoryServiceProvider2 nsDirectoryServiceProvider2
static const nsIContextMenuListenerVtbl nsContextMenuListenerVtbl
static nsrefcnt NSAPI nsEmbeddingSiteWindow_Release(nsIEmbeddingSiteWindow *iface)
static nsresult NSAPI nsEmbeddingSiteWindow_QueryInterface(nsIEmbeddingSiteWindow *iface, nsIIDRef riid, void **result)
void nsACString_InitDepend(nsACString *str, const char *data)
static void set_lang(nsIPrefBranch *pref)
BOOL WINAPI SetPropW(_In_ HWND, _In_ LPCWSTR, _In_opt_ HANDLE)
LONG WINAPI RegQueryValueExW(_In_ HKEY hkeyorg, _In_ LPCWSTR name, _In_ LPDWORD reserved, _In_ LPDWORD type, _In_ LPBYTE data, _In_ LPDWORD count)
static void set_string_pref(nsIPrefBranch *pref, const char *pref_name, const char *val)
void WINAPI DeleteCriticalSection(PCRITICAL_SECTION)
void nsACString_Finish(nsACString *str)
static const nsISimpleEnumeratorVtbl nsSingletonEnumeratorVtbl
#define NS_ERROR_NOT_IMPLEMENTED
static WCHAR * heap_strdupUtoW(const char *str)
static HRESULT nsnode_to_nsstring_rec(nsIContentSerializer *serializer, nsIDOMNode *nsnode, nsAString *str)
#define NS_SUCCEEDED(res)
static nsrefcnt NSAPI nsTooltipListener_Release(nsITooltipListener *iface)
static nsresult NSAPI nsURIContentListener_DoContent(nsIURIContentListener *iface, const nsACString *aContentType, cpp_bool aIsContentPreferred, nsIRequest *aRequest, nsIStreamListener **aContentHandler, cpp_bool *_retval)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
static NSContainer * impl_from_nsITooltipListener(nsITooltipListener *iface)
static nsresult NSAPI nsInterfaceRequestor_QueryInterface(nsIInterfaceRequestor *iface, nsIIDRef riid, void **result)
BOOL WINAPI DECLSPEC_HOTPATCH SetEnvironmentVariableW(IN LPCWSTR lpName, IN LPCWSTR lpValue)
static nsresult NSAPI nsSingletonEnumerator_GetNext(nsISimpleEnumerator *iface, nsISupports **_retval)
void show_tooltip(HTMLDocumentObj *, DWORD, DWORD, LPCWSTR) DECLSPEC_HIDDEN
nsresult get_nsinterface(nsISupports *iface, REFIID riid, void **ppv)
static nsresult NSAPI nsEmbeddingSiteWindow_SetTitle(nsIEmbeddingSiteWindow *iface, const PRUnichar *aTitle)
static nsWeakReference * impl_from_nsIWeakReference(nsIWeakReference *iface)
static nsrefcnt NSAPI nsSupportsWeakReference_Release(nsISupportsWeakReference *iface)
nsIURIContentListener nsIURIContentListener_iface
static CRITICAL_SECTION_DEBUG cs_load_gecko_dbg
static nsIFile * profile_directory
#define FILE_ATTRIBUTE_NORMAL
static void set_int_pref(nsIPrefBranch *pref, const char *pref_name, int val)
static HINSTANCE xul_handle
#define InterlockedDecrement
static const nsIURIContentListenerVtbl nsURIContentListenerVtbl
HWND WINAPI CreateWindowExW(_In_ DWORD dwExStyle, _In_opt_ LPCWSTR lpClassName, _In_opt_ LPCWSTR lpWindowName, _In_ DWORD dwStyle, _In_ int X, _In_ int Y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam)
nsresult create_nsfile(const PRUnichar *path, nsIFile **ret)
static const nsIEmbeddingSiteWindowVtbl nsEmbeddingSiteWindowVtbl
static nsresult NSAPI nsWebBrowserChrome_ShowAsModal(nsIWebBrowserChrome *iface)
nsISimpleEnumerator nsISimpleEnumerator_iface
nsresult on_start_uri_open(NSContainer *, nsIURI *, cpp_bool *) DECLSPEC_HIDDEN
#define memcpy(s1, s2, n)
GLsizei const GLfloat * value
static nsrefcnt NSAPI nsWeakReference_AddRef(nsIWeakReference *iface)
#define NS_ERROR_INVALID_ARG
LIST_ENTRY ProcessLocksList
void init_nsio(nsIComponentManager *, nsIComponentRegistrar *) DECLSPEC_HIDDEN
static nsresult create_profile_directory(void)
static nsresult NSAPI nsDirectoryServiceProvider2_GetFiles(nsIDirectoryServiceProvider2 *iface, const char *prop, nsISimpleEnumerator **_retval)
#define NS_CSTRING_CONTAINER_INIT_DEPEND
static const nsIWebBrowserChromeVtbl nsWebBrowserChromeVtbl
static nsIFile * plugin_directory
static const nsISupportsWeakReferenceVtbl nsSupportsWeakReferenceVtbl
static NSContainer * impl_from_nsIInterfaceRequestor(nsIInterfaceRequestor *iface)
static nsrefcnt NSAPI nsDirectoryServiceProvider2_Release(nsIDirectoryServiceProvider2 *iface)
static nsresult NSAPI nsTooltipListener_OnHideTooltip(nsITooltipListener *iface)
BOOL nsACString_Init(nsACString *str, const char *data)
void * nsalloc(size_t size)
WINE_UNICODE_INLINE WCHAR * strcpyW(WCHAR *dst, const WCHAR *src)
#define InterlockedIncrement
static nsresult NSAPI nsURIContentListener_OnStartURIOpen(nsIURIContentListener *iface, nsIURI *aURI, cpp_bool *_retval)
static nsresult NSAPI nsEmbeddingSiteWindow_GetVisibility(nsIEmbeddingSiteWindow *iface, cpp_bool *aVisibility)
static nsSingletonEnumerator * impl_from_nsISimpleEnumerator(nsISimpleEnumerator *iface)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define NS_XMLHTTPREQUEST_CONTRACTID
static void(CDECL *NS_Free)(void *)
#define NS_STRING_CONTAINER_INIT_DEPEND
HRESULT get_node(HTMLDocumentNode *This, nsIDOMNode *nsnode, BOOL create, HTMLDOMNode **ret)
#define NS_COMMANDPARAMS_CONTRACTID
WINE_UNICODE_INLINE WCHAR * strcatW(WCHAR *dst, const WCHAR *src)
UINT WINAPI GetSystemDirectoryW(OUT LPWSTR lpBuffer, IN UINT uSize)
#define ReadFile(a, b, c, d, e)
void nsAString_Finish(nsAString *str)
static nsresult NSAPI nsWeakReference_QueryInterface(nsIWeakReference *iface, nsIIDRef riid, void **result)
nsIXMLHttpRequest * create_nsxhr(nsIDOMWindow *nswindow)
void get_editor_controller(NSContainer *This)
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
static nsrefcnt NSAPI nsWebBrowserChrome_AddRef(nsIWebBrowserChrome *iface)
HANDLE WINAPI GetPropW(_In_ HWND, _In_ LPCWSTR)
GLint GLint GLint GLint GLint GLint y
#define NS_ERROR_OUT_OF_MEMORY
static NSContainer * impl_from_nsIContextMenuListener(nsIContextMenuListener *iface)
nsICommandParams * create_nscommand_params(void)
static nsresult NSAPI nsURIContentListener_SetParentContentListener(nsIURIContentListener *iface, nsIURIContentListener *aParentContentListener)
WINE_DECLARE_DEBUG_CHANNEL(gecko)
#define NS_HTMLSERIALIZER_CONTRACTID
static nsrefcnt NSAPI nsURIContentListener_Release(nsIURIContentListener *iface)
HRESULT WINAPI SHGetFolderPathW(HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwFlags, LPWSTR pszPath)
static nsresult(CDECL *NS_InitXPCOM2)(nsIServiceManager **
#define NS_VARIANT_CONTRACTID
static nsresult NSAPI nsContextMenuListener_OnShowContextMenu(nsIContextMenuListener *iface, UINT32 aContextFlags, nsIDOMEvent *aEvent, nsIDOMNode *aNode)
static nsresult NSAPI nsWebBrowserChrome_ExitModalEventLoop(nsIWebBrowserChrome *iface, nsresult aStatus)
BOOL WINAPI IsWindowVisible(_In_ HWND)
int strcmp(const char *String1, const char *String2)
void init_mutation(nsIComponentManager *) DECLSPEC_HIDDEN
static nsresult NSAPI nsWebBrowserChrome_DestroyBrowserWindow(nsIWebBrowserChrome *iface)
static NSContainer * impl_from_nsIEmbeddingSiteWindow(nsIEmbeddingSiteWindow *iface)
static nsrefcnt NSAPI nsEmbeddingSiteWindow_AddRef(nsIEmbeddingSiteWindow *iface)
static nsresult NSAPI nsEmbeddingSiteWindow_GetSiteWindow(nsIEmbeddingSiteWindow *iface, void **aSiteWindow)
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
GLuint GLuint GLsizei GLenum type
static CRITICAL_SECTION cs_load_gecko
HRESULT return_nsstr(nsresult nsres, nsAString *nsstr, BSTR *p)
void WINAPI LeaveCriticalSection(LPCRITICAL_SECTION)
#define GetEnvironmentVariableW(x, y, z)
void show_context_menu(HTMLDocumentObj *, DWORD, POINT *, IDispatch *) DECLSPEC_HIDDEN
static nsrefcnt NSAPI nsTooltipListener_AddRef(nsITooltipListener *iface)
BOOL nsAString_Init(nsAString *str, const PRUnichar *data)
static const nsITooltipListenerVtbl nsTooltipListenerVtbl
nsIWeakReference nsIWeakReference_iface
HRESULT nsnode_to_nsstring(nsIDOMNode *nsnode, nsAString *str)
static nsrefcnt NSAPI nsInterfaceRequestor_AddRef(nsIInterfaceRequestor *iface)
#define RegCloseKey(hKey)
static nsresult NSAPI nsSupportsWeakReference_QueryInterface(nsISupportsWeakReference *iface, nsIIDRef riid, void **result)
static nsrefcnt NSAPI nsSingletonEnumerator_Release(nsISimpleEnumerator *iface)
_CRTIMP int __cdecl read(_In_ int _FileHandle, _Out_writes_bytes_(_MaxCharCount) void *_DstBuf, _In_ unsigned int _MaxCharCount)
static NSContainer * impl_from_nsIURIContentListener(nsIURIContentListener *iface)
#define NS_ERROR_UNEXPECTED
static BOOL load_wine_gecko_v(PRUnichar *gre_path, HKEY mshtml_key, const char *version, const char *version_string)
static const nsIDirectoryServiceProvider2Vtbl nsDirectoryServiceProvider2Vtbl
static BOOL heap_free(void *mem)
#define HKEY_LOCAL_MACHINE
void fire_event(HTMLDocumentNode *doc, eventid_t eid, BOOL set_event, nsIDOMNode *target, nsIDOMEvent *nsevent, IDispatch *script_this)