private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { System.Diagnostics.Trace.WriteLine("Sidebar navigated to: " + e.Url); bool sidebarRevisionFound = false; foreach (HtmlElement element in webBrowser.Document.GetElementsByTagName("meta")) { if ("sidebar-revision".Equals(("" + element.GetAttribute("name")).ToLower())) { sidebarRevisionFound = true; break; } } if (!sidebarRevisionFound) { System.Diagnostics.Trace.WriteLine("Could not find sidebar at URL: " + e.Url); string internalUrl = GetInternalUrl(); if (internalUrl.StartsWith("res://ieframe.dll/")) { System.Diagnostics.Trace.WriteLine("Loaded page seems to be an IE error page. URL: " + e.Url + " / " + internalUrl); SidebarSourceNotReachable?.Invoke(this, new SidebarUrlEvenArgs(e.Url)); return; } } labelImage.Visible = false; DocumentLoaded?.Invoke(this, new SidebarDocumentLoadedEvenArgs(sidebarRevisionFound, e.Url)); if (!sidebarRevisionFound) { return; } if (webBrowser.ObjectForScripting == null) { acrolinxPlugin = new AcrolinxPlugin(webBrowser, this); webBrowser.ObjectForScripting = acrolinxPlugin; acrolinxPlugin.OnAfterObjectSet(); } SidebarLoaded?.Invoke(this, new SidebarUrlEvenArgs(e.Url)); }