fune/browser/components/shell/moz.build
Ben Hearsum ad43698e49 Bug 1750991: Automatically create shortcut if it's not already present when pinning to the Windows Taskbar. r=mhowell
There's some general improvements to CreateShortcut here: writing them out to a log, setting the working directory, allowing the icon to be customized. To support the shortcuts log, I had to restrict how shortcut locations are specified to be a KNOWNFOLDERID -- I couldn't think of any other way to make sure we accurately record them. Notably, this code has been unused since the Site Specific Browsing work was backed out - so there's no existing callers to worry about breaking.

This patch also enhances the pin to taskbar code to automatically create a shortcut if none exist (this is how we'll want things to work for the Private Browsing shortcuts, and it seemed like a generally useful thing to do).

Differential Revision: https://phabricator.services.mozilla.com/D138197
2022-03-17 16:33:34 +00:00

92 lines
2.1 KiB
Python

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# 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/.
# For BinaryPath::GetLong for Windows
LOCAL_INCLUDES += ["/xpcom/build"]
BROWSER_CHROME_MANIFESTS += ["test/browser.ini"]
XPCSHELL_TESTS_MANIFESTS += ["test/unit/xpcshell.ini"]
JAR_MANIFESTS += ["jar.mn"]
XPIDL_SOURCES += [
"nsIShellService.idl",
]
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa":
XPIDL_SOURCES += [
"nsIMacShellService.idl",
]
SOURCES += [
"nsMacShellService.cpp",
]
LOCAL_INCLUDES += [
# For CocoaFileUtils
"/xpcom/io"
]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
XPIDL_SOURCES += [
"nsIGNOMEShellService.idl",
]
SOURCES += [
"nsGNOMEShellService.cpp",
]
if CONFIG["MOZ_ENABLE_DBUS"]:
SOURCES += [
"nsGNOMEShellDBusHelper.cpp",
"nsGNOMEShellSearchProvider.cpp",
]
include("/ipc/chromium/chromium-config.mozbuild")
elif CONFIG["OS_ARCH"] == "WINNT":
XPIDL_SOURCES += [
"nsIWindowsShellService.idl",
]
SOURCES += [
"nsWindowsShellService.cpp",
"WindowsDefaultBrowser.cpp",
"WindowsUserChoice.cpp",
]
LOCAL_INCLUDES += [
"../../../other-licenses/nsis/Contrib/CityHash/cityhash",
"/toolkit/xre",
]
OS_LIBS += [
"bcrypt",
"crypt32",
"propsys",
]
XPIDL_MODULE = "shellservice"
if SOURCES:
FINAL_LIBRARY = "browsercomps"
EXTRA_JS_MODULES += [
"HeadlessShell.jsm",
"ScreenshotChild.jsm",
"ShellService.jsm",
]
for var in (
"MOZ_APP_DISPLAYNAME",
"MOZ_APP_NAME",
"MOZ_APP_VERSION",
"MOZ_DEFAULT_BROWSER_AGENT",
):
DEFINES[var] = '"%s"' % CONFIG[var]
if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]
if CONFIG["MOZ_ENABLE_DBUS"]:
CXXFLAGS += CONFIG["MOZ_DBUS_GLIB_CFLAGS"]
with Files("**"):
BUG_COMPONENT = ("Firefox", "Shell Integration")