mirror of
https://github.com/greenshot/greenshot
synced 2025-08-20 13:33:27 -07:00
Made notifications work again, activation doesn't work yet due to missing ToastActivatorCLSID on the shortcut.
This commit is contained in:
parent
a29f6faa27
commit
f206046010
11 changed files with 392 additions and 269 deletions
53
GreenshotWin10Plugin/Native/DesktopBridgeHelpers.cs
Normal file
53
GreenshotWin10Plugin/Native/DesktopBridgeHelpers.cs
Normal file
|
@ -0,0 +1,53 @@
|
|||
// ******************************************************************
|
||||
// Copyright (c) Microsoft. All rights reserved.
|
||||
// This code is licensed under the MIT License (MIT).
|
||||
// THE CODE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
||||
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
|
||||
// THE CODE OR THE USE OR OTHER DEALINGS IN THE CODE.
|
||||
// ******************************************************************
|
||||
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
using GreenshotPlugin.Core;
|
||||
|
||||
namespace GreenshotWin10Plugin.Native
|
||||
{
|
||||
/// <summary>
|
||||
/// Code from https://github.com/qmatteoq/DesktopBridgeHelpers/edit/master/DesktopBridge.Helpers/Helpers.cs
|
||||
/// </summary>
|
||||
public static class DesktopBridgeHelpers
|
||||
{
|
||||
const long AppModelErrorNoPackage = 15700L;
|
||||
|
||||
[DllImport("kernel32.dll", CharSet = CharSet.Unicode, SetLastError = true)]
|
||||
static extern int GetCurrentPackageFullName(ref int packageFullNameLength, StringBuilder packageFullName);
|
||||
|
||||
private static bool? _isRunningAsUwp;
|
||||
public static bool IsRunningAsUwp()
|
||||
{
|
||||
if (_isRunningAsUwp != null) return _isRunningAsUwp.Value;
|
||||
|
||||
if (WindowsVersion.IsWindows7OrLower)
|
||||
{
|
||||
_isRunningAsUwp = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
int length = 0;
|
||||
StringBuilder sb = new StringBuilder(0);
|
||||
GetCurrentPackageFullName(ref length, sb);
|
||||
|
||||
sb = new StringBuilder(length);
|
||||
int result = GetCurrentPackageFullName(ref length, sb);
|
||||
|
||||
_isRunningAsUwp = result != AppModelErrorNoPackage;
|
||||
}
|
||||
|
||||
return _isRunningAsUwp.Value;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue