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));
}