private void SetupShell(Window window)
{
//Source: http://code-inside.de/blog/2012/11/11/howto-rahmenlose-wpf-apps-mit-schattenwurf/
window.WindowStyle = WindowStyle.None;
window.ResizeMode = ResizeMode.NoResize;
window.ShowInTaskbar = false;
window.Topmost = true;
window.SourceInitialized += (o, e) => {
if (!Helper.IsWindows7)
return;
var helper = new WindowInteropHelper(window);
var val = 2;
DwmSetWindowAttribute(helper.Handle, 2, ref val, 4);
var m = new Margins { bottomHeight = -1, leftWidth = -1, rightWidth = -1, topHeight = -1 };
DwmExtendFrameIntoClientArea(helper.Handle, ref m);
var hwnd = new WindowInteropHelper(window).Handle;
};
window.MouseLeftButtonDown += (o, e) => window.DragMove();
//Track changes on TopMost-settings
_Settings.PropertyChanged += (o, e) => {
if (e.PropertyName == "AlwaysOnTop")
window.Topmost = _Settings.AlwaysOnTop;
};
}