Commit Graph

918 Commits

Author SHA1 Message Date
Ben Hearsum
12054dc4f1 Bug 1799527: update installer taskbar pinning documentation r=bytesized
Differential Revision: https://phabricator.services.mozilla.com/D161512
2022-11-08 14:05:40 +00:00
Rob Lemley
ab15ddb202 Bug 1799202 - Wrap use of $AddPrivateBrowsingSC with !ifdef in shared installer code. r=bhearsum
Private browsing doesn't make sense for Thunderbird. Wrap the use of
$AddPrivateBrowsingSC to avoid breaking the installer build.

Differential Revision: https://phabricator.services.mozilla.com/D161340
2022-11-04 20:37:34 +00:00
Ben Hearsum
04589ee2d2 Bug 1798743: add option to disable private browsing shortcut creation in the installer r=bytesized
This exists primarily to ensure that Enterprise installs can disable it (who also may disable private browsing by policy).

Differential Revision: https://phabricator.services.mozilla.com/D161207
2022-11-04 12:46:10 +00:00
Ben Hearsum
0808cf0277 Bug 1795093: bump stub installer timeout values r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D159291
2022-10-13 18:52:41 +00:00
Ben Hearsum
acc230a67b Bug 1794017: create a private browsing shortcut at install time r=bytesized,fluent-reviewers,flod
This is the same as the original patch, except for the added localization notes around the necessarily duplicated strings.

Differential Revision: https://phabricator.services.mozilla.com/D158800
2022-10-11 14:02:57 +00:00
Ben Hearsum
baac430f2a Bug 1748504: Show app name in Windows Start Menu tiles for MSIX distributions r=nrishel
I'm not certainly if it's possible to actually pin with all 3 of these logos (it may depend on Windows settings but also other aspects of our manifest?) -- but it should be harmless and futureproof to specify this option for all of them.

Differential Revision: https://phabricator.services.mozilla.com/D158510
2022-10-03 19:56:16 +00:00
Ben Hearsum
2f8dfb7913 Bug 1790809: stop creating private browsing shortcuts in the installer r=bytesized
It's important that this shortcut exists to avoid https://bugzilla.mozilla.org/show_bug.cgi?id=1762994. We were creating it in the installer to avoid first run I/O, with a fallback at runtime to catch zip builds and updates. Due to some of this code being in the installer and some of it in the browser, we ended up with two different strings. Unfortunately, this has resulted in a bug where we sometimes create two private shortcuts. This happens in at least two cases:
1) A localization has only translated one of those strings -- in which case we get an en-US string and a localized string
2) A localization has translated the strings differently -- in which case we get two localized, but slightly different, stings

Since the installer creation of the shortcut is an optimization, and the first run I/O is now on a background thread anyways, let's just get rid of the installer shortcut rather than trying to come up with a more complex fix for this.

Differential Revision: https://phabricator.services.mozilla.com/D157348
2022-09-14 19:25:16 +00:00
Nicholas Rishel
140b0f02a3 Bug 1789390 - Remove scheduled and Action Center notifications during uninstall. r=nalexander
Non-MSIX notifications are not removed when Firefox is uninstalled. To handled this we've added a new `uninstall` background task and extended `nsIWindowsAlertService` to deregister notifications on uninstall.

Differential Revision: https://phabricator.services.mozilla.com/D156625
2022-09-14 00:42:43 +00:00
Iulian Moraru
f8926a3448 Backed out 2 changesets (bug 1789390) for causing bc failures regarding unreferenced file on BackgroundTask_uninstall.jsm. CLOSED TREE
Backed out changeset 4cec525d92f4 (bug 1789390)
Backed out changeset 6fcec3502cb2 (bug 1789390)
2022-09-13 13:20:20 +03:00
Nicholas Rishel
7ff5d79899 Bug 1789390 - Remove scheduled and Action Center notifications during uninstall. r=nalexander
Non-MSIX notifications are not removed when Firefox is uninstalled. To handled this we've added a new `uninstall` background task and extended `nsIWindowsAlertService` to deregister notifications on uninstall.

Differential Revision: https://phabricator.services.mozilla.com/D156625
2022-09-13 06:09:30 +00:00
Ben Hearsum
531390412b Bug 1782295: Enable Private Browsing shortcut creation by default r=bytesized
Because we're enabling window separation by default we also need to enable shortcut creation in the installer to minimize the possibility of users hitting https://bugzilla.mozilla.org/show_bug.cgi?id=1762994.

Differential Revision: https://phabricator.services.mozilla.com/D155599
2022-09-08 13:09:11 +00:00
Cristian Tuns
eb9e313a06 Backed out 3 changesets (bug 1782295) for causing Assertion failures on nsDirectoryService.cpp CLOSED TREE
Backed out changeset b332385ffca4 (bug 1782295)
Backed out changeset 8c36812a12dc (bug 1782295)
Backed out changeset 8016b1f25509 (bug 1782295)
2022-08-26 11:50:40 -04:00
Ben Hearsum
eff010a92f Bug 1782295: Enable Private Browsing shortcut creation by default r=bytesized
Because we're enabling window separation by default we also need to enable shortcut creation in the installer to minimize the possibility of users hitting https://bugzilla.mozilla.org/show_bug.cgi?id=1762994.

Differential Revision: https://phabricator.services.mozilla.com/D155599
2022-08-26 14:50:15 +00:00
Nicholas Rishel
dcd0b54e2a Bug 1782818 - Use COM notification server for toast notifications in MSIX packages. r=nalexander,Jamie
This converges Windows native notification behavior across all installers to use the COM notification server.

This also fixes an issue where interacting with an MSIX notification opened a new window with new tabs correlated to the toast notification launch arguments. MSIX by default calls the application sending a notification with the provided launch arugments, which was an problem as we use launch arguments in the COM server to reconstruct the origin of a notification.

Differential Revision: https://phabricator.services.mozilla.com/D153538
2022-08-04 21:46:15 +00:00
Ben Hearsum
8b2aa4c0eb Bug 1761291: use private browsing wrapper as target for Private Browsing shortcuts r=mhowell
This ensure the shortcuts will use the correct Visual Elements on the off chance they get pinned to the Start Menu.

Differential Revision: https://phabricator.services.mozilla.com/D151539
2022-08-03 13:49:05 +00:00
Nick Alexander
0052def849 Bug 1774082 - Make installer and uninstaller add/remove Toast Notification to/from registry. r=bhearsum,nrishel
Differential Revision: https://phabricator.services.mozilla.com/D152145
2022-08-02 19:40:38 +00:00
Iulian Moraru
c4ef492a26 Backed out 6 changesets (bug 1774083, bug 1774082) for causing xpcshell failures. CLOSED TREE
Backed out changeset 4056bc743e25 (bug 1774083)
Backed out changeset ad20680728cc (bug 1774083)
Backed out changeset 173c4519227f (bug 1774083)
Backed out changeset 54beca69e971 (bug 1774083)
Backed out changeset 1d9d80c75d9d (bug 1774082)
Backed out changeset 7b03aa4c49d1 (bug 1774082)
2022-08-02 02:46:47 +03:00
Nick Alexander
f8bd3c73a9 Bug 1774082 - Make installer and uninstaller add/remove Toast Notification to/from registry. r=bhearsum,nrishel
Differential Revision: https://phabricator.services.mozilla.com/D152145
2022-08-01 21:38:05 +00:00
Butkovits Atila
6fb2f0d42a Backed out 2 changesets (bug 1774082) for causing failure at test_windows_alert_service.js. CLOSED TREE
Backed out changeset a9553786b2ee (bug 1774082)
Backed out changeset da2ad41a6d10 (bug 1774082)
2022-08-01 01:40:13 +03:00
Nick Alexander
5e64346e20 Bug 1774082 - Make installer and uninstaller add/remove Toast Notification to/from registry. r=bhearsum,nrishel
Differential Revision: https://phabricator.services.mozilla.com/D152145
2022-07-31 21:59:30 +00:00
Ben Hearsum
2d3e1f4c06 Bug 1778463: Firefox is pinned to the taskbar even though the "On my taskbar" checkbox is unchecked r=mhowell
The problem here ended up being that we lose the value of `AddTaskBarSC` once ExecCodeSegement is called -- which we do anytime we try to set ourselves as the default if the installer was run elevated.

Differential Revision: https://phabricator.services.mozilla.com/D151291
2022-07-11 12:09:06 +00:00
Ben Hearsum
ed5dd1f203 Bug 1778706: Fix typo in postSigningData removal in uninstaller r=bytesized
This file never has an extension.

Differential Revision: https://phabricator.services.mozilla.com/D151371
2022-07-08 16:51:28 +00:00
Ben Hearsum
44d9a530e3 Bug 1771951: Add UI to the installer for opting out of Taskbar shortcut creation r=nalexander,flod
This includes some minor updates to the desktop and Start Menu strings from Content Design as well.

I also removed the now-useless quicklaunch option (which was only used pre-Windows 7).

Differential Revision: https://phabricator.services.mozilla.com/D148289
2022-06-27 16:40:34 +00:00
Ben Hearsum
61f736d38b Bug 1771951: add pin to taskbar support in the installer on Windows 10 & 11 r=mhowell
This patch starts pinning Firefox to the Taskbar by default on all supported Windows versions. The main addition here is a port of our existing taskbar pinning code for modern Windows 10 & 11 versions to an NSIS plugin (compiled version also included).

After discussion with a few stakeholders, we also decided that we will never pin during an update on Windows 10 or 11. (Arguably we could stop on Windows 7 & 8 as well - but I don't really see any harm in carrying forward our pre-existing behaviour there.) With this in mind, I dropped all the second pinning attempt code (which was only ever enabled for Windows 10).

Differential Revision: https://phabricator.services.mozilla.com/D148288
2022-06-27 16:31:36 +00:00
Cristian Tuns
438e10123e Backed out 2 changesets (bug 1771951) for causing build bustages on makensis.mk CLOSED TREE
Backed out changeset d5dc93904754 (bug 1771951)
Backed out changeset 9651db4a6e3f (bug 1771951)
2022-06-27 12:10:17 -04:00
Ben Hearsum
98474c8cf6 Bug 1771951: Add UI to the installer for opting out of Taskbar shortcut creation r=nalexander,flod
This includes some minor updates to the desktop and Start Menu strings from Content Design as well.

I also removed the now-useless quicklaunch option (which was only used pre-Windows 7).

Differential Revision: https://phabricator.services.mozilla.com/D148289
2022-06-27 15:52:25 +00:00
Ben Hearsum
426b43c8c3 Bug 1771951: add pin to taskbar support in the installer on Windows 10 & 11 r=mhowell
This patch starts pinning Firefox to the Taskbar by default on all supported Windows versions. The main addition here is a port of our existing taskbar pinning code for modern Windows 10 & 11 versions to an NSIS plugin (compiled version also included).

After discussion with a few stakeholders, we also decided that we will never pin during an update on Windows 10 or 11. (Arguably we could stop on Windows 7 & 8 as well - but I don't really see any harm in carrying forward our pre-existing behaviour there.) With this in mind, I dropped all the second pinning attempt code (which was only ever enabled for Windows 10).

Differential Revision: https://phabricator.services.mozilla.com/D148288
2022-06-27 15:52:24 +00:00
smolnar
14540b8f53 Merge mozilla-central to autoland. a=merge 2022-06-23 18:59:00 +03:00
Ben Hearsum
03c5d6d051 Bug 1762994: ensure a Private Browsing shortcut exists as early as possible r=mhowell,fluent-reviewers
This fixes a bug where pinning a Private Browsing window to Taskbar with the windows context menu item pins regular Firefox instead. This happens because Windows cannot find an appropriate shortcut (presumably by looking for one with the right AUMID), and ends up creating its own instead -- with almost entirely incorrect metadata.

With this, we'll be creating one at a few points (if it doesn't already exist):
* Installer - for new installs
* Post-Update - to make sure we get one when people update to the first version where we pref this on
* Startup idle - for zip installs, and to handle any other possible case where the shortcut doesn't exist

Until we enable separation of Private Windows by default I've pref'ed off this behaviour (otherwise a user may pin the shortcut to the Taskbar, but the app will launch into a different icon).

Differential Revision: https://phabricator.services.mozilla.com/D147702
2022-06-23 15:15:42 +00:00
smolnar
c2405f3e49 Backed out 2 changesets (bug 1771951) for causing bug 1776170. CLOSED TREE
Backed out changeset 3a789d06604f (bug 1771951)
Backed out changeset 59eac90984cb (bug 1771951)
2022-06-23 15:14:20 +03:00
Ben Hearsum
6f86c2f210 Bug 1771951: Add UI to the installer for opting out of Taskbar shortcut creation r=nalexander,flod
This includes some minor updates to the desktop and Start Menu strings from Content Design as well.

I also removed the now-useless quicklaunch option (which was only used pre-Windows 7).

Differential Revision: https://phabricator.services.mozilla.com/D148289
2022-06-22 14:19:51 +00:00
Ben Hearsum
787beefb48 Bug 1771951: add pin to taskbar support in the installer on Windows 10 & 11 r=mhowell
This patch starts pinning Firefox to the Taskbar by default on all supported Windows versions. The main addition here is a port of our existing taskbar pinning code for modern Windows 10 & 11 versions to an NSIS plugin (compiled version also included).

After discussion with a few stakeholders, we also decided that we will never pin during an update on Windows 10 or 11. (Arguably we could stop on Windows 7 & 8 as well - but I don't really see any harm in carrying forward our pre-existing behaviour there.) With this in mind, I dropped all the second pinning attempt code (which was only ever enabled for Windows 10).

Differential Revision: https://phabricator.services.mozilla.com/D148288
2022-06-22 14:19:50 +00:00
Ben Hearsum
bbfdf38c8b Bug 1616355: attribution postSigningData should be per installation r=nalexander
about:newtab#asrouter actually depends on the ability to be able to write to postSigningData at the moment, so this will break that in any circumstance where the running Firefox cannot write to the installation directory. This code is only used for dev & qa testing though, and I've been told this is OK (and we may change how it works to avoid writing the file at all).

Differential Revision: https://phabricator.services.mozilla.com/D144167
2022-05-03 20:04:28 +00:00
Nick Alexander
5c5236b92c Bug 1763824 - Always add/update FirefoxPDF-* ProgID in Windows PostUpdate. r=mhowell,bhearsum
This was simply an oversight on my part: I didn't appreciate that
freshly introduced ProgIDs need to be added or updated unconditionally
in PostUpdate.

I've tested this by copying the fresh `helper.exe` into an existing
installation directory, running `uninstall\helper.exe /PostUpdate`
manually, verifying the expected ProgIDs exist in HKCR, and then
verifying that "Make default" within Firefox succeeds.

At some point we should do the same for `FirefoxHTML-*` and
`FirefoxURL-*`, but this patch should be uplifted to Beta 100 and I
don't want to introduce additional risk.

Differential Revision: https://phabricator.services.mozilla.com/D143661
2022-04-14 21:12:39 +00:00
Nick Alexander
230c89fc1f Bug 1761389 - Add and use new PDF-specific document icon on Windows. r=bhearsum
The new icon is not channel-specific, but I've kept it in branding
since it's possible that we'll distinguish in the future.

Differential Revision: https://phabricator.services.mozilla.com/D142396
2022-04-01 20:29:18 +00:00
Nick Alexander
15e42e7551 Bug 1761389 - Pre: Use defines rather than inline numerals for icon indices. r=bhearsum
Differential Revision: https://phabricator.services.mozilla.com/D142395
2022-04-01 20:29:18 +00:00
Marian-Vasile Laza
70619acb53 Backed out changeset cd0595cee3e0 (bug 1762100) for breaking msi repacks (bug 1762172). 2022-03-30 11:16:28 -07:00
Nick Alexander
d20ab15ff9 Bug 1762100 - Part 4: Make MSIX have PDF-specific document description. r=bhearsum
In addition, this makes the other file associations have a non-default
description, like "Firefox HTML Document", which agrees (at least for
Release and Beta) with what the installer arranges.  (The Windows
default description is otherwise "HTML Document", "PDF Document",
etc.)

Differential Revision: https://phabricator.services.mozilla.com/D142304
2022-03-30 03:42:00 +00:00
Nick Alexander
da773545fd Bug 1762100 - Part 2: Add and use FirefoxPDF-... file association. r=bhearsum
This is simply the mechanics of s/FirefoxHTML-.../FirefoxPDF-.../.  We
need this to alter the description ("Firefox PDF Document") and, in
subsequent commits, the display icon.

Generally I tried to keep alphabetical ordering: FirefoxHTML-...,
FirefoxPDF-..., FirefoxURL-...; and I generally tried to use the '-'
suffix to disambiguate the older FirefoxHTML from the newer suffixed
FirefoxHTML-... form.

Differential Revision: https://phabricator.services.mozilla.com/D142302
2022-03-30 03:41:59 +00:00
Ben Hearsum
b59153d71a Bug 1750987: Uninstaller support for Private Browsing enhancements. r=nalexander,mhowell
The most notable part of this is the rework of DeleteShortcuts to handle the new shortcuts logs in %PROGRAMDATA%.

Also of note is what we're not handling these new shortcuts in UpdateShortcutAppModelIDs/UpdateShortcutsBranding. As far as I can tell, these are one-off fixes to handle old shortcuts. Because we know that the new shortcut creation code will set from the start -- so there's no need to. This means that there's nothing to do during install or post-update.

Differential Revision: https://phabricator.services.mozilla.com/D139884
2022-03-21 16:35:41 +00:00
Sylvestre Ledru
aa55fd2be8 Bug 1753413 - fx doc: Remove whitespaces, trailing lines & windows CR r=andi,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D137741
2022-02-03 18:34:58 +00:00
Mike Hommey
76be04dd25 Bug 1747181 - Remove LegalTrademarks from Windows installer. r=dnazer
There are a number of things that make this definition undesirable:
- It assumes MOZ_OFFICIAL_BRANDING means the product is under a
  trademark owned by MoFo, which while currently accurate, complicates
  things for making the nightly branding an official branding of
  the mozilla-central repo (as per bug 1427472), as "Nightly" is not a
  trademark.
- Presumably, downstreams may want something similar, but the string
  itself assumes the brand is always under a trademark owned by MoFo,
  which is not the case for forks.
- The string actually doesn't appear in the installer that people
  download and might look at. It appears in the installer executable
  that is temporarily extracted to disk from a compressed archive
  contained in the actual installer, which itself doesn't include this
  string or other strings from the same .nsi file.

Differential Revision: https://phabricator.services.mozilla.com/D134472
2022-01-20 01:55:04 +00:00
Ben Hearsum
836891154c Bug 1745437: Add an app execution alias for MSIX packages. r=nalexander
This allows MSIX-installed Firefox to be launched through Win+r and Powershell (and probably other places). This feels deceptively simple - but it appears to work.

Differential Revision: https://phabricator.services.mozilla.com/D135638
2022-01-12 15:42:04 +00:00
Ben Hearsum
1e7aeda5c7 No bug: remove dead installer code around Metro tiles. r=bytesized
This code used to eventually take some action (`RegisterStartMenuTile`) on Windows 8, but that was removed in https://hg.mozilla.org/mozilla-central/rev/bf1d0c9242d9 making this effectiely a no-op.

Differential Revision: https://phabricator.services.mozilla.com/D135065
2022-01-04 18:10:36 +00:00
Nick Alexander
43a36b7a80 Bug 1243603 - Telemetry for when Windows invokes Firefox to handle a registered file type or protocol. r=Gijs
The `-osint` flag is used as the signal that Windows is invoking
Firefox to handle a file type or protocol.  The `-osint` flag was
introduced in order to mitigate security breaches due to poor argument
quoting (by consumers invoking Firefox); to use it for this new
purpose, it must be preserved for downstream consumers to react to.
Alternately, some marker of the flag could be maintained.  Since the
flag needs to transit through the launcher process, I've elected to
simply not strip it as we validate command lines, and to accommodate
it further downstream.  (It looks like Thunderbird already
accommodates `-osint`: see
https://searchfox.org/comm-central/rev/3e8f926de9ea09945b237177eb6d489c70318f0e/mail/components/MessengerContentHandler.jsm#568.)

The telemetry in this patch achieves two purposes.  The first is to
count the number of times Firefox is invoked to handle a registered
file type or protocol: for this, a new keyed uint scalar was added.
File types start with a ".", just like on Windows; protocols
(equivalently, the schemes used to identify them) do not start with a
".".

The second is to identify times when Firefox is launched (i.e., it was
not already running) to handle a registered file type or protocol.

This generalizes the existing `os.environment.launch_method`,
introducing `os.environment.launched_to_handle` and
`os.environment.invoked_to_handle` string scalars, which record the
file type or protocol.

The command line state `STATE_INITIAL_LAUNCH` is used to discriminate
launching from invoking.

Differential Revision: https://phabricator.services.mozilla.com/D132288
2021-12-11 00:00:55 +00:00
Kirk Steuber
05b8ed4977 Bug 1732435 - r=nalexander
Depends on D127895

Differential Revision: https://phabricator.services.mozilla.com/D127896
2021-12-08 19:13:01 +00:00
Butkovits Atila
4884ea2b17 Backed out 5 changesets (bug 1732435) for causing bustages at nsXREDirProvider.cpp. CLOSED TREE
Backed out changeset db0701b309ad (bug 1732435)
Backed out changeset 22a583f191e2 (bug 1732435)
Backed out changeset b37ed631436f (bug 1732435)
Backed out changeset 8a734e8a313b (bug 1732435)
Backed out changeset 9cb78a88ffde (bug 1732435)
2021-12-08 20:10:57 +02:00
Kirk Steuber
7f294bc81d Bug 1732435 - r=nalexander
Depends on D127895

Differential Revision: https://phabricator.services.mozilla.com/D127896
2021-12-08 17:43:18 +00:00
Sandor Molnar
840d89e7a6 Backed out 5 changesets (bug 1732435) for causing build bustages in toolkit/xre/nsXREDirProvider.cpp CLOSED TREE
Backed out changeset 14947028770e (bug 1732435)
Backed out changeset 99d43bb37d9e (bug 1732435)
Backed out changeset 6af39bb5d079 (bug 1732435)
Backed out changeset 0c48fcbb4a1a (bug 1732435)
Backed out changeset aaa7386b1c23 (bug 1732435)
2021-12-08 03:23:35 +02:00
Kirk Steuber
5c9b26d615 Bug 1732435 - r=nalexander
Depends on D127895

Differential Revision: https://phabricator.services.mozilla.com/D127896
2021-12-07 20:43:36 +00:00