mirror of
https://github.com/ShareX/ShareX.git
synced 2024-07-04 22:21:23 +12:00
fixed #3838: If Windows in tablet mode then show close button in region capture toolbar
This commit is contained in:
parent
3992add566
commit
8c4b4d5c1e
|
@ -1364,5 +1364,22 @@ public static bool TryFixHandCursor()
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static bool IsTabletMode()
|
||||||
|
{
|
||||||
|
//int state = NativeMethods.GetSystemMetrics(SystemMetric.SM_CONVERTIBLESLATEMODE);
|
||||||
|
//return state == 0;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
int result = (int)Registry.GetValue(@"HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\ImmersiveShell", "TabletMode", 0);
|
||||||
|
return result > 0;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -599,7 +599,9 @@ public enum SystemMetric
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Windows XP (v5.1+) This system metric is used in a Terminal Services environment. Its value is nonzero if the current session is remotely controlled; zero otherwise
|
/// Windows XP (v5.1+) This system metric is used in a Terminal Services environment. Its value is nonzero if the current session is remotely controlled; zero otherwise
|
||||||
/// </summary>
|
/// </summary>
|
||||||
SM_REMOTECONTROL = 0x2001
|
SM_REMOTECONTROL = 0x2001,
|
||||||
|
SM_CONVERTIBLESLATEMODE = 0x2003,
|
||||||
|
SM_SYSTEMDOCKED = 0x2004
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -137,17 +137,17 @@ internal void CreateToolbar()
|
||||||
|
|
||||||
if (Form.Mode == RegionCaptureMode.TaskEditor)
|
if (Form.Mode == RegionCaptureMode.TaskEditor)
|
||||||
{
|
{
|
||||||
ToolStripButton tsbClose = new ToolStripButton(Resources.ShapeManager_CreateToolbar_ContinueTaskSpaceOrRightClick);
|
ToolStripButton tsbContinueTask = new ToolStripButton(Resources.ShapeManager_CreateToolbar_ContinueTaskSpaceOrRightClick);
|
||||||
tsbClose.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
tsbContinueTask.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
tsbClose.Image = Resources.control;
|
tsbContinueTask.Image = Resources.control;
|
||||||
tsbClose.Click += (sender, e) => Form.CloseWindow(RegionResult.AnnotateContinueTask);
|
tsbContinueTask.Click += (sender, e) => Form.CloseWindow(RegionResult.AnnotateContinueTask);
|
||||||
tsMain.Items.Add(tsbClose);
|
tsMain.Items.Add(tsbContinueTask);
|
||||||
|
|
||||||
ToolStripButton tsbCloseCancel = new ToolStripButton(Resources.ShapeManager_CreateToolbar_CancelTaskEsc);
|
ToolStripButton tsbCancelTask = new ToolStripButton(Resources.ShapeManager_CreateToolbar_CancelTaskEsc);
|
||||||
tsbCloseCancel.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
tsbCancelTask.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
tsbCloseCancel.Image = Resources.cross;
|
tsbCancelTask.Image = Resources.cross;
|
||||||
tsbCloseCancel.Click += (sender, e) => Form.CloseWindow(RegionResult.AnnotateCancelTask);
|
tsbCancelTask.Click += (sender, e) => Form.CloseWindow(RegionResult.AnnotateCancelTask);
|
||||||
tsMain.Items.Add(tsbCloseCancel);
|
tsMain.Items.Add(tsbCancelTask);
|
||||||
|
|
||||||
tsMain.Items.Add(new ToolStripSeparator());
|
tsMain.Items.Add(new ToolStripSeparator());
|
||||||
}
|
}
|
||||||
|
@ -186,6 +186,16 @@ internal void CreateToolbar()
|
||||||
|
|
||||||
#endregion Editor mode
|
#endregion Editor mode
|
||||||
}
|
}
|
||||||
|
else if (Helpers.IsTabletMode())
|
||||||
|
{
|
||||||
|
ToolStripButton tsbClose = new ToolStripButton("Close (Esc)");
|
||||||
|
tsbClose.DisplayStyle = ToolStripItemDisplayStyle.Image;
|
||||||
|
tsbClose.Image = Resources.cross;
|
||||||
|
tsbClose.Click += (sender, e) => Form.CloseWindow();
|
||||||
|
tsMain.Items.Add(tsbClose);
|
||||||
|
|
||||||
|
tsMain.Items.Add(new ToolStripSeparator());
|
||||||
|
}
|
||||||
|
|
||||||
#region Tools
|
#region Tools
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue