mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 17:56:51 +13:00
Merge pull request #3358 from sylveon/hand
Fix crash when opening screen capture form
This commit is contained in:
commit
0783dbc877
1 changed files with 22 additions and 9 deletions
|
@ -24,7 +24,6 @@ You should have received a copy of the GNU General Public License
|
|||
#endregion License Information (GPL v3)
|
||||
|
||||
using Microsoft.Win32;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using ShareX.HelpersLib.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -42,6 +41,7 @@ You should have received a copy of the GNU General Public License
|
|||
using System.Runtime.Serialization;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using System.Security.Cryptography;
|
||||
using System.Security.Permissions;
|
||||
using System.Security.Principal;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
|
@ -69,13 +69,25 @@ public static class Helpers
|
|||
|
||||
public static readonly Version OSVersion = Environment.OSVersion.Version;
|
||||
|
||||
public static Cursor[] CursorList = new Cursor[] {
|
||||
Cursors.AppStarting, Cursors.Arrow, Cursors.Cross, Cursors.Default, Cursors.Hand, Cursors.Help,
|
||||
Cursors.HSplit, Cursors.IBeam, Cursors.No, Cursors.NoMove2D, Cursors.NoMoveHoriz, Cursors.NoMoveVert,
|
||||
Cursors.PanEast, Cursors.PanNE, Cursors.PanNorth, Cursors.PanNW, Cursors.PanSE, Cursors.PanSouth,
|
||||
Cursors.PanSW, Cursors.PanWest, Cursors.SizeAll, Cursors.SizeNESW, Cursors.SizeNS, Cursors.SizeNWSE,
|
||||
Cursors.SizeWE, Cursors.UpArrow, Cursors.VSplit, Cursors.WaitCursor
|
||||
};
|
||||
private static Cursor[] _cursorList;
|
||||
public static Cursor[] CursorList
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_cursorList == null)
|
||||
{
|
||||
_cursorList = new Cursor[] {
|
||||
Cursors.AppStarting, Cursors.Arrow, Cursors.Cross, Cursors.Default, Cursors.Hand, Cursors.Help,
|
||||
Cursors.HSplit, Cursors.IBeam, Cursors.No, Cursors.NoMove2D, Cursors.NoMoveHoriz, Cursors.NoMoveVert,
|
||||
Cursors.PanEast, Cursors.PanNE, Cursors.PanNorth, Cursors.PanNW, Cursors.PanSE, Cursors.PanSouth,
|
||||
Cursors.PanSW, Cursors.PanWest, Cursors.SizeAll, Cursors.SizeNESW, Cursors.SizeNS, Cursors.SizeNWSE,
|
||||
Cursors.SizeWE, Cursors.UpArrow, Cursors.VSplit, Cursors.WaitCursor
|
||||
};
|
||||
}
|
||||
|
||||
return _cursorList;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>Get file name extension without dot.</summary>
|
||||
public static string GetFilenameExtension(string filePath)
|
||||
|
@ -1268,13 +1280,14 @@ public static string NumberToLetters(int num)
|
|||
return result;
|
||||
}
|
||||
|
||||
[ReflectionPermission(SecurityAction.Assert, MemberAccess = true)]
|
||||
public static bool TryFixHandCursor()
|
||||
{
|
||||
try
|
||||
{
|
||||
// https://referencesource.microsoft.com/#System.Windows.Forms/winforms/Managed/System/WinForms/Cursors.cs,423
|
||||
typeof(Cursors).GetField("hand", BindingFlags.NonPublic | BindingFlags.Static)
|
||||
?.SetValue(null, new Cursor(NativeMethods.LoadCursor(IntPtr.Zero, NativeConstants.IDC_HAND)));
|
||||
.SetValue(null, new Cursor(NativeMethods.LoadCursor(IntPtr.Zero, NativeConstants.IDC_HAND)));
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue