Commit Graph

2677 Commits

Author SHA1 Message Date
Mark Banner
55b80efd43 Bug 1804661 - Convert browser/components/BrowserContentHandler.jsm to an ES module. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D164205
2022-12-12 14:59:18 +00:00
Ben Hearsum
fae388668f Bug 1804113: stop implicitly pinning to taskbar r=bytesized
Two parts here:
1) Remove the code that does implicit pinning entirely (this will disable it on Windows 7 as well, which I think is probably the right thing to do at this point).
2) Fix the installer to set a proper default for AddTaskbarSC

Differential Revision: https://phabricator.services.mozilla.com/D164096
2022-12-07 19:30:05 +00:00
Gabriel Bustamante
929a011067 Bug 1799233 - Add tasks to repack Firefox nightly builds into Debian Packages r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D161743
2022-12-05 21:10:07 +00:00
Cristian Tuns
3ef28fd16c Backed out changeset 93a99f808df6 (bug 1799233) for causing endless exceptions 2022-12-01 18:39:18 -05:00
Gabriel Bustamante
4da6f3c01b Bug 1799233 - Add tasks to repack Firefox nightly builds into Debian Packages r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D161743
2022-12-01 21:26:53 +00:00
Ben Hearsum
5f2524b908 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
153a4d3d76 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
ee3af9b1ba 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
Marco Bonardo
2da3fbed82 Bug 1795901 - Stop persisting attributes for the bookmark properties dialog, r=dao,emilio
From quite some time the vast moajority of instances of this dialog are non
resizable, and persisting attributes is now creating problems with the new flex
layout.
Thus, this patch is removing attributes persistence and the dialog duplication
whose only intent was to persist different attributes depending on the dialog
contents.
As a compromise due to not being able to resize the dialog, we increase the
dialog min-width.

Differential Revision: https://phabricator.services.mozilla.com/D160486
2022-11-03 08:31:47 +00:00
Kagami Sascha Rosylight
fac20df060 Bug 1796085 - Part 1: Define MOZ_BACKGROUNDTASKS macro globally r=smaug,necko-reviewers,application-update-reviewers,nalexander,valentin
There are 10+ separate macro definition for this, we can do it globally instead.

Differential Revision: https://phabricator.services.mozilla.com/D156911
2022-10-19 12:04:08 +00:00
Ben Hearsum
161e59945e 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
d3ca5130e4 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
cccfb405a5 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
47eded26b0 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
9454695dd9 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
d07f446854 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
f203d491e0 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
915bc53106 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
cabdc5ed0b 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
ce8aefbbd4 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
John Bieling
24210e2c3a Bug 1764698 - Move LanguageDetector.jsm and related files to toolkit. r=robwu
Differential Revision: https://phabricator.services.mozilla.com/D151606
2022-08-23 05:59:55 +00:00
Nick Alexander
98a5c8dac8 Bug 1782837 - Add MOZ_NOTIFICATION_SERVER; don't build notification server under MinGW. r=firefox-build-system-reviewers,glandium
Differential Revision: https://phabricator.services.mozilla.com/D154467
2022-08-18 16:31:09 +00:00
Nicholas Rishel
6e432b193e 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
c7cfad2069 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
Ben Hearsum
4cc0c36830 Bug 1761291: create wrapper to launch Firefox in Private Browsing mode r=rkraesig,glandium
This allows us to fix a bug where when our current Private Browsing shortcuts are pinned to the Start Menu, they use the regular Firefox Visual Elements (which is the non-Private Browsing logo). I tried to make this as minimal and braindead as possible.

Differential Revision: https://phabricator.services.mozilla.com/D151538
2022-08-03 13:49:04 +00:00
Nicholas Rishel
94c7867e54 Bug 1774083 - Part 1: Add notificationserver.dll COM Server to handle Window's toast notifications. r=nalexander
This implements a COM Server and returns objects implementing INotificationActivationCallback. This allows Firefox notifications to be acted upon even after the main process exits.

COM objects require a (normally static) CLSID in the registry to be identified by other apps. To prevent CLSID duplication between parallel installs and portable/development builds, this implementation inspects the registry when a COM object CLSID is requested, and returns an object if the CLSID's InprocServer32 key matches the path of the DLL.

Differential Revision: https://phabricator.services.mozilla.com/D149182
2022-08-02 19:40:39 +00:00
Nick Alexander
49ce4aba64 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
5820ae4560 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
Nicholas Rishel
97ac4311fd Bug 1774083 - Part 1: Add notificationserver.dll COM Server to handle Window's toast notifications. r=nalexander
This implements a COM Server and returns objects implementing INotificationActivationCallback. This allows Firefox notifications to be acted upon even after the main process exits.

COM objects require a (normally static) CLSID in the registry to be identified by other apps. To prevent CLSID duplication between parallel installs and portable/development builds, this implementation inspects the registry when a COM object CLSID is requested, and returns an object if the CLSID's InprocServer32 key matches the path of the DLL.

Differential Revision: https://phabricator.services.mozilla.com/D149182
2022-08-01 21:38:06 +00:00
Nick Alexander
d00fde0e7a 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
2d3fe7f943 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
590ff33177 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
Nick Alexander
1968f60af5 Bug 1776514 - Allow background tasks to enable Nimbus and Firefox Messaging System. r=barret,bytesized
This commit does several things:

1.  It configures a new Nimbus feature and corresponding message group
    `backgroundTaskMessage`.

2.  It configures `Firefox Messaging Experiments` to use the new
    Nimbus feature in background tasks.  The existing Remote Settings
    collection `nimbus-desktop-experiments` continues to be used.

    These configurations are achieved by setting preferences in
    `backgroundtasks_browser.js`, which is applied on top of
    `firefox.js` prefs by the preference service.  These preferences
    apply to every background task.

3.  It implements functions for enabling Nimbus and the Firefox
    Messaging System (and Messaging Experiments) that can be used by
    arbitrary background tasks.

    It is assumed (but not enforced here) that such tasks will use
    non-ephemeral (persistent) profiles, so that Remote Settings
    incremental sync, Nimbus bucketing, and Messaging System message
    limits, function as expected.

4.  It adds a new `message` background task specifically for testing
    background task messages.  Invoke the testing task with command
    lines like `firefox --backgroundtask message ...`.

    To ease testing, the framework accepts `--url about:studies?...`
    arguments from the Experimenter Web UI to explicitly opt-in to
    specific experiment branches.

    This task is complicated because it is intended both for QA to
    manually invoke, but also to be used by automated tests.

Eventually the existing `backgroundupdate` task will use the new
functions, just as the testing `message` task does.

Differential Revision: https://phabricator.services.mozilla.com/D150521
2022-07-22 04:42:13 +00:00
Butkovits Atila
8aa56f17be Backed out changeset e6ad35220e23 (bug 1776514) for causing failures at browser_all_files_referenced.js. CLOSED TREE 2022-07-22 07:06:35 +03:00
Nick Alexander
5cf7be7f97 Bug 1776514 - Allow background tasks to enable Nimbus and Firefox Messaging System. r=barret,bytesized
This commit does several things:

1.  It configures a new Nimbus feature and corresponding message group
    `backgroundTaskMessage`.

2.  It configures `Firefox Messaging Experiments` to use the new
    Nimbus feature in background tasks.  The existing Remote Settings
    collection `nimbus-desktop-experiments` continues to be used.

    These configurations are achieved by setting preferences in
    `backgroundtasks_browser.js`, which is applied on top of
    `firefox.js` prefs by the preference service.  These preferences
    apply to every background task.

3.  It implements functions for enabling Nimbus and the Firefox
    Messaging System (and Messaging Experiments) that can be used by
    arbitrary background tasks.

    It is assumed (but not enforced here) that such tasks will use
    non-ephemeral (persistent) profiles, so that Remote Settings
    incremental sync, Nimbus bucketing, and Messaging System message
    limits, function as expected.

4.  It adds a new `message` background task specifically for testing
    background task messages.  Invoke the testing task with command
    lines like `firefox --backgroundtask message ...`.

    To ease testing, the framework accepts `--url about:studies?...`
    arguments from the Experimenter Web UI to explicitly opt-in to
    specific experiment branches.

    This task is complicated because it is intended both for QA to
    manually invoke, but also to be used by automated tests.

Eventually the existing `backgroundupdate` task will use the new
functions, just as the testing `message` task does.

Differential Revision: https://phabricator.services.mozilla.com/D150521
2022-07-22 03:16:43 +00:00
Butkovits Atila
2837e8698a Backed out changeset b083e38b2ed9 (bug 1776514) for causing failure at browser_all_files_referenced.js. CLOSED TREE 2022-07-22 01:49:04 +03:00
Nick Alexander
168102a659 Bug 1776514 - Allow background tasks to enable Nimbus and Firefox Messaging System. r=barret,bytesized
This commit does several things:

1.  It configures a new Nimbus feature and corresponding message group
    `backgroundTaskMessage`.

2.  It configures `Firefox Messaging Experiments` to use the new
    Nimbus feature in background tasks.  The existing Remote Settings
    collection `nimbus-desktop-experiments` continues to be used.

    These configurations are achieved by setting preferences in
    `backgroundtasks_browser.js`, which is applied on top of
    `firefox.js` prefs by the preference service.  These preferences
    apply to every background task.

3.  It implements functions for enabling Nimbus and the Firefox
    Messaging System (and Messaging Experiments) that can be used by
    arbitrary background tasks.

    It is assumed (but not enforced here) that such tasks will use
    non-ephemeral (persistent) profiles, so that Remote Settings
    incremental sync, Nimbus bucketing, and Messaging System message
    limits, function as expected.

4.  It adds a new `message` background task specifically for testing
    background task messages.  Invoke the testing task with command
    lines like `firefox --backgroundtask message ...`.

    To ease testing, the framework accepts `--url about:studies?...`
    arguments from the Experimenter Web UI to explicitly opt-in to
    specific experiment branches.

    This task is complicated because it is intended both for QA to
    manually invoke, but also to be used by automated tests.

Eventually the existing `backgroundupdate` task will use the new
functions, just as the testing `message` task does.

Differential Revision: https://phabricator.services.mozilla.com/D150521
2022-07-21 21:31:13 +00:00
Ben Hearsum
17a20bb87e 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
6b90a75cab 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
da13474f5b 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
0210e257d7 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
0ecf2c627a 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
c04f7cfc9b 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
7b7e16ab55 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
5095928f4d Merge mozilla-central to autoland. a=merge 2022-06-23 18:59:00 +03:00
Ben Hearsum
588bf8226f 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
45ecfdfaa2 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
Kris Maglione
23d4c575c6 Bug 1770237: Part 14 - Update URILoader parent handler service to use static component registration. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D148194
2022-06-22 20:31:36 +00:00
Kris Maglione
360a2f6d5c Bug 1770237: Part 8 - Remove legacy component registration for TestInterfaceJS. r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D148188
2022-06-22 20:31:34 +00:00
Kris Maglione
c4e585b525 Bug 1770237: Part 3 - Migrate StartupRecorder to static component registration. r=florian
Differential Revision: https://phabricator.services.mozilla.com/D148183
2022-06-22 20:31:32 +00:00