1/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 *
3 * This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7#include "nsISupports.idl"
8
9interface mozIDOMWindowProxy;
10interface imgIContainer;
11
12[scriptable, builtinclass, uuid(aa8a0ecf-96a1-418c-b80e-f24ae18bbedc)]
13interface nsIWindowsUIUtils : nsISupports
14{
15  readonly attribute long systemSmallIconSize;
16  readonly attribute long systemLargeIconSize;
17
18  void setWindowIcon(in mozIDOMWindowProxy aWindow, in imgIContainer aSmallIcon, in imgIContainer aLargeIcon);
19
20  void setWindowIconFromExe(in mozIDOMWindowProxy aWindow, in AString aExe, in unsigned short aIndex);
21
22  void setWindowIconNoData(in mozIDOMWindowProxy aWindow);
23
24  /**
25   * Whether the OS is currently in tablet mode. Always false on
26   * non-Windows and on versions of Windows before win10
27   */
28  readonly attribute boolean inTabletMode;
29
30  /**
31   * Share URL
32   */
33  void shareUrl(in AString shareTitle, in AString urlToShare);
34};
35