Backed out changeset 2450366cf7ca (bug 1891629) for causing win msix mochitest failures
[gecko.git] / widget / windows / WinTaskbar.h
bloba6c483a561efb071913f2d422189bf4b31fd07f4
1 /* vim: se cin sw=2 ts=2 et : */
2 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
8 #ifndef __WinTaskbar_h__
9 #define __WinTaskbar_h__
11 #include <windows.h>
12 #include <shobjidl.h>
13 #undef LogSeverity // SetupAPI.h #defines this as DWORD
14 #include "nsIWinTaskbar.h"
15 #include "mozilla/Attributes.h"
17 namespace mozilla {
18 namespace widget {
20 class WinTaskbar final : public nsIWinTaskbar {
21 ~WinTaskbar();
23 public:
24 WinTaskbar();
26 NS_DECL_THREADSAFE_ISUPPORTS
27 NS_DECL_NSIWINTASKBAR
29 static bool GenerateAppUserModelID(nsAString& aAppUserModelId,
30 bool aPrivateBrowsing = false);
31 // Registers the global app user model id for the instance.
32 // See comments in WinTaskbar.cpp for more information.
33 static bool RegisterAppUserModelID();
34 static bool GetAppUserModelID(nsAString& aDefaultGroupId,
35 bool aPrivateBrowsing = false);
37 private:
38 bool Initialize();
40 ITaskbarList4* mTaskbar;
43 } // namespace widget
44 } // namespace mozilla
46 #endif /* __WinTaskbar_h__ */