Update App.axaml.cs (#9421)

* Update App.axaml.cs

* Update App.axaml.cs

* Create MacOSAppHelper.cs

* Update App.axaml.cs

Removed unused macOS activation policy methods and constants.

* Update and rename MacOSAppHelper.cs to MacAppUtils.cs

* Update App.axaml.cs
This commit is contained in:
JieXu
2026-05-31 17:57:59 +08:00
committed by GitHub
parent 5140954b37
commit 54a3388c99
2 changed files with 51 additions and 0 deletions
@@ -0,0 +1,27 @@
using System.Runtime.InteropServices;
namespace v2rayN.Desktop.Common;
internal static class MacAppUtils
{
private const string LibObjC = "/usr/lib/libobjc.dylib";
private const nint ActivationPolicyAccessory = 1;
public static void SetActivationPolicyAccessory()
=> objc_msgSend(
objc_msgSend(objc_getClass("NSApplication"), sel_registerName("sharedApplication")),
sel_registerName("setActivationPolicy:"),
ActivationPolicyAccessory);
[DllImport(LibObjC)]
private static extern nint objc_getClass(string name);
[DllImport(LibObjC)]
private static extern nint sel_registerName(string name);
[DllImport(LibObjC, EntryPoint = "objc_msgSend")]
private static extern nint objc_msgSend(nint receiver, nint selector);
[DllImport(LibObjC, EntryPoint = "objc_msgSend")]
private static extern void objc_msgSend(nint receiver, nint selector, nint argument);
}