forked from mirrors/gecko-dev
This is adding in the new Windows 11 only version of taskbar pinning. For the new pinning to work, we need to use limited access feature tokens. Those are going to be made private and aren't included with this change. This change will compile, and will work if built against the correct limited access feature tokens, as specified in developer local machine config files, but for every other build, the new taskbar pinning won't work and will fall back to the old methods. I will implement the try / release building machines using the secret limited access feature tokens in a follow-up diff. Differential Revision: https://phabricator.services.mozilla.com/D205004
34 lines
939 B
C
34 lines
939 B
C
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
/**
|
|
* This file exists to keep the Windows 11 Taskbar Pinning API
|
|
* related code as self-contained as possible.
|
|
*/
|
|
|
|
#ifndef SHELL_WINDOWS11TASKBARPINNING_H__
|
|
#define SHELL_WINDOWS11TASKBARPINNING_H__
|
|
|
|
#include "nsString.h"
|
|
#include <wrl.h>
|
|
|
|
enum class Win11PinToTaskBarResultStatus {
|
|
Failed,
|
|
NotCurrentlyAllowed,
|
|
AlreadyPinned,
|
|
Success,
|
|
NotSupported,
|
|
};
|
|
|
|
struct Win11PinToTaskBarResult {
|
|
HRESULT errorCode;
|
|
Win11PinToTaskBarResultStatus result;
|
|
};
|
|
|
|
Win11PinToTaskBarResult PinCurrentAppToTaskbarWin11(
|
|
bool aCheckOnly, const nsAString& aAppUserModelId,
|
|
nsAutoString aShortcutPath);
|
|
|
|
#endif // SHELL_WINDOWS11TASKBARPINNING_H__
|