This commit is contained in:
Lorenz Cuno Klopfenstein 2013-10-16 00:13:14 +02:00
parent 11cf1621e9
commit 1ab262d032
28 changed files with 2704 additions and 118 deletions

View file

@ -5,6 +5,5 @@ glob:publish/*
glob:*Thumbs.db
glob:*.psd
glob:Installer/OnTopReplica-Setup.exe
syntax: glob
*.Designer.cs
*.suo
glob:*.Designer.cs
glob:*.suo

BIN
Graphics/Raster/help.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
Graphics/Vector/help.psd Normal file

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,2 @@
"C:\Program Files (x86)\WiX Toolset v3.7\bin\candle.exe" wix-package.wxs
"C:\Program Files (x86)\WiX Toolset v3.7\bin\light.exe" wix-package.wixobj

71
Installer/wix-package.wxs Normal file
View file

@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8" ?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product
Name="OnTopReplica"
Id="c6982522-aa7f-476d-be20-f739c2111408"
UpgradeCode="eeaf5a3d-bc48-4fd6-8503-450afdead792"
Language="1033" Codepage="1252"
Version="1.0.0"
Manufacturer="Lorenz Cuno Klopfenstein"
>
<Package
Id="*"
Keywords="Installer"
Description="OnTopReplica installer"
Manufacturer="Lorenz Cuno Klopfenstein"
InstallScope="perUser"
InstallerVersion="100"
Languages="1033"
Compressed="yes"
SummaryCodepage="1252"
/>
<!--<UIRef Id="WixUI_Minimal" />-->
<!--<Icon Id="Foobar10.exe" SourceFile="FoobarAppl10.exe" />-->
<Media Id="1" Cabinet="OTR.cab" EmbedCab="yes" />
<!-- Directories declaration -->
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="LocalAppDataFolder">
<Directory Id="APPLICATIONINSTALLDIR" Name="OnTopReplica-Test" />
<Directory Id="OldApplicationInstallDir" Name="Lorenz_Cuno_Klopfenstein2" />
</Directory>
<!--<Directory Id="ProgramMenuFolder" Name="Programs">
<Directory Id="ProgramMenuDir" Name="OnTopReplica-MenuDir">
<Component Id="ProgramMenuDir" Guid="64c6a89e-9f2f-49cb-b742-c3503668c23d">
<RemoveFolder Id="ProgramMenuDir" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\[ProductName]" Type="string" Value="" KeyPath="yes" />
</Component>
</Directory>
</Directory>
<Directory Id="DesktopFolder" Name="Desktop" />-->
</Directory>
<!-- Components -->
<DirectoryRef Id="APPLICATIONINSTALLDIR">
<Component Id="OnTopReplica.exe" Guid="a0cd6179-95a5-4055-87bd-c326ee307f1b">
<File Id="OnTopReplica.exe" Name="OnTopReplica.exe" DiskId="1" Source="..\OnTopReplica\bin\Release\OnTopReplica.exe" Checksum="yes" />
<RemoveFolder Id="APPLICATIONINSTALLDIR" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\[ProductName]" Type="string" Value="" KeyPath="yes" />
</Component>
<Component Id="OldOnTopReplicaRemoval" Guid="17692986-3678-4155-9ae6-155ab44d226b">
<RemoveFolder Id="OldApplicationInstallDir" On="install" />
</Component>
</DirectoryRef>
<!-- Features -->
<Feature Id="FeatureMainApplication" Title="Application" Level="1">
<ComponentRef Id="OnTopReplica.exe" />
<ComponentRef Id="OldOnTopReplicaRemoval" />
</Feature>
</Product>
</Wix>

View file

@ -0,0 +1,117 @@
using OnTopReplica.Properties;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace OnTopReplica {
class FullscreenFormManager {
private readonly MainForm _mainForm;
public FullscreenFormManager(MainForm form) {
_mainForm = form;
IsFullscreen = false;
}
Point _preFullscreenLocation;
Size _preFullscreenSize;
FormBorderStyle _preFullscreenBorderStyle;
public bool IsFullscreen {
get;
private set;
}
public void SwitchFullscreen() {
SwitchFullscreen(Settings.Default.GetFullscreenMode());
}
public void SwitchFullscreen(FullscreenMode mode) {
if (IsFullscreen) {
MoveToFullscreenMode(mode);
return;
}
if (!_mainForm.ThumbnailPanel.IsShowingThumbnail)
return;
//On switch, always hide side panels
_mainForm.CloseSidePanel();
//Store state
_preFullscreenLocation = _mainForm.Location;
_preFullscreenSize = _mainForm.ClientSize;
_preFullscreenBorderStyle = _mainForm.FormBorderStyle;
//Change state to fullscreen
_mainForm.FormBorderStyle = FormBorderStyle.None;
MoveToFullscreenMode(mode);
CommonCompleteSwitch(true);
}
private void MoveToFullscreenMode(FullscreenMode mode) {
var screens = Screen.AllScreens;
var currentScreen = Screen.FromControl(_mainForm);
Size size = _mainForm.Size;
Point location = _mainForm.Location;
switch (mode) {
case FullscreenMode.Standard:
default:
size = currentScreen.WorkingArea.Size;
location = currentScreen.WorkingArea.Location;
break;
case FullscreenMode.Fullscreen:
size = currentScreen.Bounds.Size;
location = currentScreen.Bounds.Location;
break;
case FullscreenMode.AllScreens:
size = SystemInformation.VirtualScreen.Size;
location = SystemInformation.VirtualScreen.Location;
break;
}
_mainForm.Size = size;
_mainForm.Location = location;
}
public void SwitchBack() {
if (!IsFullscreen)
return;
//Restore state
_mainForm.FormBorderStyle = _preFullscreenBorderStyle;
_mainForm.Location = _preFullscreenLocation;
_mainForm.ClientSize = _preFullscreenSize;
_mainForm.RefreshAspectRatio();
CommonCompleteSwitch(false);
}
private void CommonCompleteSwitch(bool enabled) {
//UI stuff switching
_mainForm.GlassEnabled = !enabled;
_mainForm.TopMost = !enabled;
_mainForm.HandleMouseMove = !enabled;
IsFullscreen = enabled;
Program.Platform.OnFormStateChange(_mainForm);
}
public void Toggle() {
if (IsFullscreen)
SwitchBack();
else
SwitchFullscreen(Settings.Default.GetFullscreenMode());
}
}
}

View file

@ -0,0 +1,39 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;
using OnTopReplica.Properties;
namespace OnTopReplica {
/// <summary>
/// Describes a fullscreen mode.
/// </summary>
enum FullscreenMode {
Standard,
Fullscreen,
AllScreens
}
static class FullscreenModeExtensions {
/// <summary>
/// Gets the fullscreen mode as an enumeration value.
/// </summary>
public static FullscreenMode GetFullscreenMode(this Settings settings) {
FullscreenMode retMode = FullscreenMode.Standard;
Enum.TryParse<FullscreenMode>(settings.FullscreenMode, out retMode);
return retMode;
}
/// <summary>
/// Sets the fullscreen mode.
/// </summary>
public static void SetFullscreenMode(this Settings settings, FullscreenMode mode) {
settings.FullscreenMode = mode.ToString();
}
}
}

View file

@ -31,7 +31,6 @@
this.menuContextWindows = new System.Windows.Forms.ToolStripMenuItem();
this.menuWindows = new System.Windows.Forms.ContextMenuStrip(this.components);
this.noneToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fullSelectWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.switchToWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.selectRegionToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.advancedToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
@ -45,6 +44,7 @@
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem3 = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem4 = new System.Windows.Forms.ToolStripMenuItem();
this.fullOpacityToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.resizeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuResize = new System.Windows.Forms.ContextMenuStrip(this.components);
this.doubleToolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem();
@ -68,8 +68,12 @@
this.settingsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.aboutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuContextClose = new System.Windows.Forms.ToolStripMenuItem();
this.fullOpacityToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fullSelectWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuFullscreenContext = new System.Windows.Forms.ContextMenuStrip(this.components);
this.modeToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuModeStandardToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuModeFullscreenToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuModeAllScreensToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.enableClickthroughToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.fullExitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.menuContext.SuspendLayout();
@ -96,7 +100,7 @@
this.aboutToolStripMenuItem,
this.menuContextClose});
this.menuContext.Name = "menuContext";
this.menuContext.Size = new System.Drawing.Size(187, 296);
this.menuContext.Size = new System.Drawing.Size(187, 274);
this.menuContext.Opening += new System.ComponentModel.CancelEventHandler(this.Menu_opening);
//
// menuContextWindows
@ -113,7 +117,6 @@
this.menuWindows.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.noneToolStripMenuItem});
this.menuWindows.Name = "menuWindows";
this.menuWindows.OwnerItem = this.menuContextWindows;
this.menuWindows.Size = new System.Drawing.Size(118, 26);
//
// noneToolStripMenuItem
@ -122,15 +125,6 @@
this.noneToolStripMenuItem.Size = new System.Drawing.Size(117, 22);
this.noneToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindowsNone;
//
// fullSelectWindowToolStripMenuItem
//
this.fullSelectWindowToolStripMenuItem.DropDown = this.menuWindows;
this.fullSelectWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.list;
this.fullSelectWindowToolStripMenuItem.Name = "fullSelectWindowToolStripMenuItem";
this.fullSelectWindowToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.fullSelectWindowToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindows;
this.fullSelectWindowToolStripMenuItem.ToolTipText = global::OnTopReplica.Strings.MenuWindowsTT;
//
// switchToWindowToolStripMenuItem
//
this.switchToWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.xiao_arrow;
@ -214,7 +208,7 @@
this.toolStripMenuItem3,
this.toolStripMenuItem4});
this.menuOpacity.Name = "menuOpacity";
this.menuOpacity.OwnerItem = this.fullOpacityToolStripMenuItem;
this.menuOpacity.OwnerItem = this.menuContextOpacity;
this.menuOpacity.ShowCheckMargin = true;
this.menuOpacity.ShowImageMargin = false;
this.menuOpacity.Size = new System.Drawing.Size(154, 92);
@ -258,6 +252,14 @@
this.toolStripMenuItem4.ToolTipText = global::OnTopReplica.Strings.MenuOp25TT;
this.toolStripMenuItem4.Click += new System.EventHandler(this.Menu_Opacity_click);
//
// fullOpacityToolStripMenuItem
//
this.fullOpacityToolStripMenuItem.DropDown = this.menuOpacity;
this.fullOpacityToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.window_opacity;
this.fullOpacityToolStripMenuItem.Name = "fullOpacityToolStripMenuItem";
this.fullOpacityToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.fullOpacityToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuOpacity;
//
// resizeToolStripMenuItem
//
this.resizeToolStripMenuItem.DropDown = this.menuResize;
@ -279,7 +281,7 @@
this.restorePositionAndSizeToolStripMenuItem});
this.menuResize.Name = "menuResize";
this.menuResize.OwnerItem = this.resizeToolStripMenuItem;
this.menuResize.Size = new System.Drawing.Size(218, 170);
this.menuResize.Size = new System.Drawing.Size(218, 148);
this.menuResize.Opening += new System.ComponentModel.CancelEventHandler(this.Menu_Resize_opening);
//
// doubleToolStripMenuItem1
@ -411,7 +413,7 @@
//
// reduceToIconToolStripMenuItem
//
this.reduceToIconToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.reduce;
this.reduceToIconToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.minimize;
this.reduceToIconToolStripMenuItem.Name = "reduceToIconToolStripMenuItem";
this.reduceToIconToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.reduceToIconToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuReduce;
@ -433,7 +435,7 @@
//
// aboutToolStripMenuItem
//
this.aboutToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.xiao_help;
this.aboutToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.help;
this.aboutToolStripMenuItem.Name = "aboutToolStripMenuItem";
this.aboutToolStripMenuItem.Size = new System.Drawing.Size(186, 22);
this.aboutToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuAbout;
@ -448,23 +450,57 @@
this.menuContextClose.Text = global::OnTopReplica.Strings.MenuClose;
this.menuContextClose.Click += new System.EventHandler(this.Menu_Close_click);
//
// fullOpacityToolStripMenuItem
// fullSelectWindowToolStripMenuItem
//
this.fullOpacityToolStripMenuItem.DropDown = this.menuOpacity;
this.fullOpacityToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.window_opacity;
this.fullOpacityToolStripMenuItem.Name = "fullOpacityToolStripMenuItem";
this.fullOpacityToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.fullOpacityToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuOpacity;
this.fullSelectWindowToolStripMenuItem.DropDown = this.menuWindows;
this.fullSelectWindowToolStripMenuItem.Image = global::OnTopReplica.Properties.Resources.list;
this.fullSelectWindowToolStripMenuItem.Name = "fullSelectWindowToolStripMenuItem";
this.fullSelectWindowToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.fullSelectWindowToolStripMenuItem.Text = global::OnTopReplica.Strings.MenuWindows;
this.fullSelectWindowToolStripMenuItem.ToolTipText = global::OnTopReplica.Strings.MenuWindowsTT;
//
// menuFullscreenContext
//
this.menuFullscreenContext.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.fullSelectWindowToolStripMenuItem,
this.modeToolStripMenuItem,
this.fullOpacityToolStripMenuItem,
this.enableClickthroughToolStripMenuItem,
this.fullExitToolStripMenuItem});
this.menuFullscreenContext.Name = "menuFullscreenContext";
this.menuFullscreenContext.Size = new System.Drawing.Size(190, 92);
this.menuFullscreenContext.Size = new System.Drawing.Size(190, 136);
//
// modeToolStripMenuItem
//
this.modeToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.menuModeStandardToolStripMenuItem,
this.menuModeFullscreenToolStripMenuItem,
this.menuModeAllScreensToolStripMenuItem});
this.modeToolStripMenuItem.Name = "modeToolStripMenuItem";
this.modeToolStripMenuItem.Size = new System.Drawing.Size(189, 22);
this.modeToolStripMenuItem.Text = "Mode";
this.modeToolStripMenuItem.DropDownOpening += new System.EventHandler(this.Menu_Fullscreen_Mode_opening);
//
// menuModeStandardToolStripMenuItem
//
this.menuModeStandardToolStripMenuItem.Name = "menuModeStandardToolStripMenuItem";
this.menuModeStandardToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.menuModeStandardToolStripMenuItem.Text = "Standard";
this.menuModeStandardToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_Standard_click);
//
// menuModeFullscreenToolStripMenuItem
//
this.menuModeFullscreenToolStripMenuItem.Name = "menuModeFullscreenToolStripMenuItem";
this.menuModeFullscreenToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.menuModeFullscreenToolStripMenuItem.Text = "Fullscreen";
this.menuModeFullscreenToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_Fullscreen_click);
//
// menuModeAllScreensToolStripMenuItem
//
this.menuModeAllScreensToolStripMenuItem.Name = "menuModeAllScreensToolStripMenuItem";
this.menuModeAllScreensToolStripMenuItem.Size = new System.Drawing.Size(152, 22);
this.menuModeAllScreensToolStripMenuItem.Text = "All screens";
this.menuModeAllScreensToolStripMenuItem.Click += new System.EventHandler(this.Menu_Fullscreen_Mode_AllScreens_click);
//
// enableClickthroughToolStripMenuItem
//
@ -488,7 +524,7 @@
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Control;
this.ClientSize = new System.Drawing.Size(318, 226);
this.ClientSize = new System.Drawing.Size(324, 232);
this.ControlBox = false;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
this.HideCaption = true;
@ -555,6 +591,10 @@
private System.Windows.Forms.ToolStripMenuItem restorePositionAndSizeToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem restoreLastClonedWindowToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem settingsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem modeToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem menuModeStandardToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem menuModeFullscreenToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem menuModeAllScreensToolStripMenuItem;
}
}

View file

@ -19,13 +19,16 @@ namespace OnTopReplica {
ThumbnailPanel _thumbnailPanel;
//Managers
MessagePumpManager _msgPumpManager = new MessagePumpManager();
readonly MessagePumpManager _msgPumpManager = new MessagePumpManager();
WindowListMenuManager _windowListManager;
public FullscreenFormManager FullscreenManager { get; private set; }
Options _startupOptions;
public MainForm(Options startupOptions) {
_startupOptions = startupOptions;
FullscreenManager = new FullscreenFormManager(this);
//WinForms init pass
InitializeComponent();
@ -86,11 +89,6 @@ namespace OnTopReplica {
Settings.Default.RestoreLastWindowHwnd = CurrentThumbnailWindowHandle.Handle.ToInt64();
Settings.Default.RestoreLastWindowClass = CurrentThumbnailWindowHandle.Class;
}
else {
Settings.Default.RestoreLastWindowTitle = string.Empty;
Settings.Default.RestoreLastWindowHwnd = 0;
Settings.Default.RestoreLastWindowClass = string.Empty;
}
_msgPumpManager.Dispose();
Program.Platform.CloseForm(this);
@ -126,7 +124,7 @@ namespace OnTopReplica {
//HACK: sometimes, even if TopMost is true, the window loses its "always on top" status.
// This is a fix attempt that probably won't work...
if (!IsFullscreen) { //fullscreen mode doesn't use TopMost
if (!FullscreenManager.IsFullscreen) { //fullscreen mode doesn't use TopMost
TopMost = false;
TopMost = true;
}
@ -135,7 +133,7 @@ namespace OnTopReplica {
protected override void OnMouseWheel(MouseEventArgs e) {
base.OnMouseWheel(e);
if (!IsFullscreen) {
if (!FullscreenManager.IsFullscreen) {
int change = (int)(e.Delta / 6.0); //assumes a mouse wheel "tick" is in the 80-120 range
AdjustSize(change);
RefreshScreenLock();
@ -148,7 +146,7 @@ namespace OnTopReplica {
//This is handled by the WM_NCLBUTTONDBLCLK msg handler usually (because the GlassForm translates
//clicks on client to clicks on caption). But if fullscreen mode disables GlassForm dragging, we need
//this auxiliary handler to switch mode.
IsFullscreen = !IsFullscreen;
FullscreenManager.Toggle();
}
protected override void OnMouseClick(MouseEventArgs e) {
@ -181,7 +179,7 @@ namespace OnTopReplica {
case WM.NCLBUTTONDBLCLK:
//Toggle fullscreen mode if double click on caption (whole glass area)
if (m.WParam.ToInt32() == HT.CAPTION) {
IsFullscreen = !IsFullscreen;
FullscreenManager.Toggle();
m.Result = IntPtr.Zero;
return;
@ -211,7 +209,7 @@ namespace OnTopReplica {
if (e.Modifiers == Keys.Alt) {
if (e.KeyCode == Keys.Enter) {
e.Handled = true;
IsFullscreen = !IsFullscreen;
FullscreenManager.Toggle();
}
else if (e.KeyCode == Keys.D1 || e.KeyCode == Keys.NumPad1) {
@ -235,7 +233,7 @@ namespace OnTopReplica {
//F11 Fullscreen switch
else if (e.KeyCode == Keys.F11) {
e.Handled = true;
IsFullscreen = !IsFullscreen;
FullscreenManager.Toggle();
}
//ESCAPE
@ -245,8 +243,8 @@ namespace OnTopReplica {
ClickThroughEnabled = false;
}
//Toggle fullscreen
else if (IsFullscreen) {
IsFullscreen = false;
else if (FullscreenManager.IsFullscreen) {
FullscreenManager.SwitchBack();
}
//Disable click forwarding
else if (ClickForwardingEnabled) {
@ -257,56 +255,6 @@ namespace OnTopReplica {
#endregion
#region Fullscreen
bool _isFullscreen = false;
Point _preFullscreenLocation;
Size _preFullscreenSize;
FormBorderStyle _preFullscreenBorderStyle;
public bool IsFullscreen {
get {
return _isFullscreen;
}
set {
if (IsFullscreen == value)
return;
if (value && !_thumbnailPanel.IsShowingThumbnail)
return;
CloseSidePanel(); //on switch, always hide side panels
//Location and size
if (value) {
_preFullscreenLocation = Location;
_preFullscreenSize = ClientSize;
_preFullscreenBorderStyle = FormBorderStyle;
FormBorderStyle = FormBorderStyle.None;
var currentScreen = Screen.FromControl(this);
Size = currentScreen.WorkingArea.Size;
Location = currentScreen.WorkingArea.Location;
}
else {
FormBorderStyle = _preFullscreenBorderStyle;
Location = _preFullscreenLocation;
ClientSize = _preFullscreenSize;
RefreshAspectRatio();
}
//Common
GlassEnabled = !value;
TopMost = !value;
HandleMouseMove = !value;
_isFullscreen = value;
Program.Platform.OnFormStateChange(this);
}
}
#endregion
#region Thumbnail operation
/// <summary>
@ -322,7 +270,7 @@ namespace OnTopReplica {
_thumbnailPanel.SetThumbnailHandle(handle, region);
//Set aspect ratio (this will resize the form), do not refresh if in fullscreen
SetAspectRatio(_thumbnailPanel.ThumbnailPixelSize, !IsFullscreen);
SetAspectRatio(_thumbnailPanel.ThumbnailPixelSize, !FullscreenManager.IsFullscreen);
}
catch (Exception ex) {
System.Diagnostics.Trace.Fail("Unable to set thumbnail.", ex.ToString());

View file

@ -14,7 +14,7 @@ namespace OnTopReplica {
if (position.HasValue)
menuPosition = position.Value;
if (IsFullscreen) {
if (FullscreenManager.IsFullscreen) {
menuFullscreenContext.Show(menuPosition);
}
else {
@ -71,7 +71,7 @@ namespace OnTopReplica {
/// </summary>
public void EnsureMainFormVisible() {
//Reset special modes
IsFullscreen = false;
FullscreenManager.SwitchBack();
ClickThroughEnabled = false;
Opacity = 1.0;

View file

@ -11,7 +11,7 @@ namespace OnTopReplica {
private void Menu_opening(object sender, CancelEventArgs e) {
//Cancel if currently in "fullscreen" mode or a side panel is open
if (IsFullscreen || IsSidePanelOpen) {
if (FullscreenManager.IsFullscreen || IsSidePanelOpen) {
e.Cancel = true;
return;
}
@ -111,7 +111,7 @@ namespace OnTopReplica {
}
private void Menu_Resize_Fullscreen(object sender, EventArgs e) {
IsFullscreen = true;
FullscreenManager.SwitchFullscreen();
}
private void Menu_Resize_RecallPosition_click(object sender, EventArgs e) {
@ -173,7 +173,30 @@ namespace OnTopReplica {
}
private void Menu_Fullscreen_ExitFullscreen_click(object sender, EventArgs e) {
IsFullscreen = false;
FullscreenManager.SwitchBack();
}
private void Menu_Fullscreen_Mode_opening(object sender, EventArgs e) {
var mode = Settings.Default.GetFullscreenMode();
menuModeStandardToolStripMenuItem.Checked = (mode == FullscreenMode.Standard);
menuModeFullscreenToolStripMenuItem.Checked = (mode == FullscreenMode.Fullscreen);
menuModeAllScreensToolStripMenuItem.Checked = (mode == FullscreenMode.AllScreens);
}
private void Menu_Fullscreen_Mode_Standard_click(object sender, EventArgs e) {
Settings.Default.SetFullscreenMode(FullscreenMode.Standard);
FullscreenManager.SwitchFullscreen(FullscreenMode.Standard);
}
private void Menu_Fullscreen_Mode_Fullscreen_click(object sender, EventArgs e) {
Settings.Default.SetFullscreenMode(FullscreenMode.Fullscreen);
FullscreenManager.SwitchFullscreen(FullscreenMode.Fullscreen);
}
private void Menu_Fullscreen_Mode_AllScreens_click(object sender, EventArgs e) {
Settings.Default.SetFullscreenMode(FullscreenMode.AllScreens);
FullscreenManager.SwitchFullscreen(FullscreenMode.AllScreens);
}
}

View file

@ -139,8 +139,7 @@ namespace OnTopReplica.MessagePumpProcessors {
/// between shown and hidden states.
/// </summary>
void HotKeyShowHideHandler() {
if (Form.IsFullscreen)
Form.IsFullscreen = false;
Form.FullscreenManager.SwitchBack();
if (!Program.Platform.IsHidden(Form)) {
Program.Platform.HideForm(Form);

View file

@ -106,6 +106,8 @@
</Compile>
<Compile Include="CloneClickEventArgs.cs" />
<Compile Include="CloseRequestEventArgs.cs" />
<Compile Include="FullscreenFormManager.cs" />
<Compile Include="FullscreenMode.cs" />
<Compile Include="GeometryExtensions.cs" />
<Compile Include="HotKeyTextBox.cs">
<SubType>Component</SubType>
@ -367,6 +369,8 @@
<None Include="Assets\reduce.png" />
</ItemGroup>
<ItemGroup>
<None Include="Resources\help.png" />
<None Include="Resources\minimize.png" />
<None Include="LICENSE.txt">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>

View file

@ -41,7 +41,7 @@ namespace OnTopReplica.Platforms {
/// Used to alter the window style. Not used anymore.
/// </summary>
private void SetWindowStyle(MainForm form) {
if (!form.IsFullscreen) {
if (!form.FullscreenManager.IsFullscreen) {
//This hides the app from ALT+TAB
//Note that when minimized, it will be shown as an (ugly) minimized tool window
//thus we do not minimize, but set to transparent when hiding

View file

@ -0,0 +1,453 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18051
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace OnTopReplica.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("OnTopReplica.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap back {
get {
object obj = ResourceManager.GetObject("back", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap clickforwarding {
get {
object obj = ResourceManager.GetObject("clickforwarding", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap close_new {
get {
object obj = ResourceManager.GetObject("close_new", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap desktop {
get {
object obj = ResourceManager.GetObject("desktop", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_czech {
get {
object obj = ResourceManager.GetObject("flag_czech", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_danish {
get {
object obj = ResourceManager.GetObject("flag_danish", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_germany {
get {
object obj = ResourceManager.GetObject("flag_germany", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_ita {
get {
object obj = ResourceManager.GetObject("flag_ita", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_poland {
get {
object obj = ResourceManager.GetObject("flag_poland", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_spanish {
get {
object obj = ResourceManager.GetObject("flag_spanish", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap flag_usa {
get {
object obj = ResourceManager.GetObject("flag_usa", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap fullscreen {
get {
object obj = ResourceManager.GetObject("fullscreen", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap groupmode {
get {
object obj = ResourceManager.GetObject("groupmode", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap help {
get {
object obj = ResourceManager.GetObject("help", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap icon {
get {
object obj = ResourceManager.GetObject("icon", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Icon similar to (Icon).
/// </summary>
internal static System.Drawing.Icon icon_new {
get {
object obj = ResourceManager.GetObject("icon_new", resourceCulture);
return ((System.Drawing.Icon)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap list {
get {
object obj = ResourceManager.GetObject("list", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap minimize {
get {
object obj = ResourceManager.GetObject("minimize", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_bottomleft {
get {
object obj = ResourceManager.GetObject("pos_bottomleft", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_bottomright {
get {
object obj = ResourceManager.GetObject("pos_bottomright", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_center {
get {
object obj = ResourceManager.GetObject("pos_center", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_null {
get {
object obj = ResourceManager.GetObject("pos_null", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_topleft {
get {
object obj = ResourceManager.GetObject("pos_topleft", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap pos_topright {
get {
object obj = ResourceManager.GetObject("pos_topright", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap refresh {
get {
object obj = ResourceManager.GetObject("refresh", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap regions {
get {
object obj = ResourceManager.GetObject("regions", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap window_border16 {
get {
object obj = ResourceManager.GetObject("window_border16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap window_multiple16 {
get {
object obj = ResourceManager.GetObject("window_multiple16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap window_opacity {
get {
object obj = ResourceManager.GetObject("window_opacity", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap window_switch {
get {
object obj = ResourceManager.GetObject("window_switch", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap window16 {
get {
object obj = ResourceManager.GetObject("window16", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_add {
get {
object obj = ResourceManager.GetObject("xiao_add", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_arrow {
get {
object obj = ResourceManager.GetObject("xiao_arrow", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_component {
get {
object obj = ResourceManager.GetObject("xiao_component", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_delete {
get {
object obj = ResourceManager.GetObject("xiao_delete", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_down {
get {
object obj = ResourceManager.GetObject("xiao_down", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_ok {
get {
object obj = ResourceManager.GetObject("xiao_ok", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_up {
get {
object obj = ResourceManager.GetObject("xiao_up", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap xiao_wrench {
get {
object obj = ResourceManager.GetObject("xiao_wrench", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
}
}

View file

@ -112,10 +112,10 @@
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="flag_ita" type="System.Resources.ResXFileRef, System.Windows.Forms">
@ -163,9 +163,6 @@
<data name="icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\newicon.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="xiao_help" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\xiao_help.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="back" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\back.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -190,9 +187,6 @@
<data name="flag_danish" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\flag_danish.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="reduce" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\reduce.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="xiao_ok" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\xiao_ok.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
@ -232,8 +226,13 @@
<data name="flag_poland" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\flag_poland.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="flag_germany" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Assets\flag_germany.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="minimize" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\minimize.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="help" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\help.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View file

@ -0,0 +1,241 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18051
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace OnTopReplica.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public global::OnTopReplica.StoredRegionArray SavedRegions {
get {
return ((global::OnTopReplica.StoredRegionArray)(this["SavedRegions"]));
}
set {
this["SavedRegions"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("255")]
public byte Opacity {
get {
return ((byte)(this["Opacity"]));
}
set {
this["Opacity"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("(Default)")]
public global::System.Globalization.CultureInfo Language {
get {
return ((global::System.Globalization.CultureInfo)(this["Language"]));
}
set {
this["Language"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool MustUpdate {
get {
return ((bool)(this["MustUpdate"]));
}
set {
this["MustUpdate"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool ClickThrough {
get {
return ((bool)(this["ClickThrough"]));
}
set {
this["ClickThrough"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool FirstTimeClickThrough {
get {
return ((bool)(this["FirstTimeClickThrough"]));
}
set {
this["FirstTimeClickThrough"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("True")]
public bool FirstTimeClickForwarding {
get {
return ((bool)(this["FirstTimeClickForwarding"]));
}
set {
this["FirstTimeClickForwarding"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool FullscreenAlwaysOnTop {
get {
return ((bool)(this["FullscreenAlwaysOnTop"]));
}
set {
this["FullscreenAlwaysOnTop"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool RestoreSizeAndPosition {
get {
return ((bool)(this["RestoreSizeAndPosition"]));
}
set {
this["RestoreSizeAndPosition"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
public global::System.Drawing.Size RestoreLastSize {
get {
return ((global::System.Drawing.Size)(this["RestoreLastSize"]));
}
set {
this["RestoreLastSize"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("0, 0")]
public global::System.Drawing.Point RestoreLastPosition {
get {
return ((global::System.Drawing.Point)(this["RestoreLastPosition"]));
}
set {
this["RestoreLastPosition"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool RestoreLastWindow {
get {
return ((bool)(this["RestoreLastWindow"]));
}
set {
this["RestoreLastWindow"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string RestoreLastWindowClass {
get {
return ((string)(this["RestoreLastWindowClass"]));
}
set {
this["RestoreLastWindowClass"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("")]
public string RestoreLastWindowTitle {
get {
return ((string)(this["RestoreLastWindowTitle"]));
}
set {
this["RestoreLastWindowTitle"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("0")]
public long RestoreLastWindowHwnd {
get {
return ((long)(this["RestoreLastWindowHwnd"]));
}
set {
this["RestoreLastWindowHwnd"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("[CTRL]+[SHIFT]+C")]
public string HotKeyCloneCurrent {
get {
return ((string)(this["HotKeyCloneCurrent"]));
}
set {
this["HotKeyCloneCurrent"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("[CTRL]+[SHIFT]+O")]
public string HotKeyShowHide {
get {
return ((string)(this["HotKeyShowHide"]));
}
set {
this["HotKeyShowHide"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("Standard")]
public string FullscreenMode {
get {
return ((string)(this["FullscreenMode"]));
}
set {
this["FullscreenMode"] = value;
}
}
}
}

View file

@ -53,5 +53,8 @@
<Setting Name="HotKeyShowHide" Type="System.String" Scope="User">
<Value Profile="(Default)">[CTRL]+[SHIFT]+O</Value>
</Setting>
<Setting Name="FullscreenMode" Type="System.String" Scope="User">
<Value Profile="(Default)">Standard</Value>
</Setting>
</Settings>
</SettingsFile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -27,9 +27,9 @@
//
// SidePanelContainer
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(246, 300);
this.ClientSize = new System.Drawing.Size(287, 346);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.SizableToolWindow;
this.MinimizeBox = false;
this.Name = "SidePanelContainer";

View file

@ -112,9 +112,9 @@
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View file

@ -1,4 +1,5 @@
using System;
using OnTopReplica.Properties;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;

View file

@ -152,7 +152,7 @@ namespace OnTopReplica.StartupOptions {
//Fullscreen
if (Fullscreen) {
form.IsFullscreen = true;
form.FullscreenManager.SwitchFullscreen();
}
}

1644
OnTopReplica/Strings.Designer.cs generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -41,10 +41,10 @@
<value>False</value>
</setting>
<setting name="RestoreLastWindowClass" serializeAs="String">
<value/>
<value />
</setting>
<setting name="RestoreLastWindowTitle" serializeAs="String">
<value/>
<value />
</setting>
<setting name="RestoreLastWindowHwnd" serializeAs="String">
<value>0</value>
@ -55,6 +55,9 @@
<setting name="HotKeyShowHide" serializeAs="String">
<value>[CTRL]+[SHIFT]+O</value>
</setting>
<setting name="FullscreenMode" serializeAs="String">
<value>Standard</value>
</setting>
</OnTopReplica.Properties.Settings>
</userSettings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>