/plugins/MiddleClickOpen.cs
using System;
using Gtk;
using WebKit;
using bytex64.WebThing;
public class MiddleClickOpen : WebThingPlugin {
private string LinkUri = null;
private WebThing wt;
public override void Init(WebThing wt) {
this.wt = wt;
}
public override void InitWebView(WebView wv) {
wv.HoveringOverLink += delegate(object o, HoveringOverLinkArgs e) {
LinkUri = e.Link;
};
wv.ButtonReleaseEvent += WebView_ButtonRelease;
}
private void WebView_ButtonRelease(object o, Gtk.ButtonReleaseEventArgs e) {
if (e.Event.Button == 2) {
if (LinkUri != null) {
wt.OpenTab(LinkUri);
wt.WebView.StopLoading();
e.RetVal = true; // WHY DOESN'T THIS WORK!?
}
}
}
}