/plugins/Fullscreen.cs
using System;
using Gtk;
using Gdk;
using bytex64.WebThing;
public class Fullscreen : WebThingPlugin {
private bool IsFullscreen = false;
private Gtk.Window Win;
public override void Init(WebThing wt) {
Win = wt.Window;
Win.KeyPressEvent += Win_KeyPress;
Win.WindowStateEvent += Win_WindowState;
}
private void Win_KeyPress(object o, KeyPressEventArgs e) {
if (e.Event.State == Gdk.ModifierType.None) {
switch(e.Event.Key) {
case Gdk.Key.F11:
if (IsFullscreen) {
Win.Unfullscreen();
} else {
Win.Fullscreen();
}
break;
}
}
}
private void Win_WindowState(object o, WindowStateEventArgs e) {
IsFullscreen = (e.Event.NewWindowState & WindowState.Fullscreen) != 0;
}
}