Commit Graph

910518 Commits

Author SHA1 Message Date
Emilio Cobos Álvarez
fdf102338e Bug 1887552 - Simplify caret visibility code. r=sefeng,geckoview-reviewers
Make the "is hidden due to non-collapsed selection" use the regular
caret-hiding mechanism, so that we make sure nsCaret and paint are
consistent on their caret visibility.

As part of this simplification:

 * Remove LookAndFeel::IntID::ShowCaretDuringSelection, it's 0 on all
   platforms.

 * Remove nsCaret::IsMenuPopupHidingCaret. Is really broken as per the
   comments (it assumes single-process mode, doesn't deal with shadow
   dom, and it's not like it's particularly useful anyways since the
   menu popup could be semi-transparent or what not).

Differential Revision: https://phabricator.services.mozilla.com/D205557
2024-03-26 10:53:17 +00:00
Iulian Moraru
fe0bd44b98 Backed out changeset a293e6927cab (bug 1882344) for causing multiple failures. CLOSED TREE 2024-03-26 13:41:00 +02:00
Vincent Hilla
8c3aacb46c Bug 1882344 - Have Document instead of WakeLockJS release locks on loss of activity. r=edgar,dom-core
Differential Revision: https://phabricator.services.mozilla.com/D202853
2024-03-26 10:00:45 +00:00
rahulsainani
01aebe7044 Bug 1887613 - Fix toolbar container and tab strip behaviour when find in page in launched r=android-reviewers,007
Differential Revision: https://phabricator.services.mozilla.com/D205558
2024-03-26 09:59:30 +00:00
Gregory Pappas
cd1b500b07 Bug 1887611 - Implement URL.parse() r=webidl,emilio,necko-reviewers,kershaw
Spec - https://url.spec.whatwg.org/#dom-url-parse
Tests - 0f550ab9f5

Also, update URL.canParse() to use UTF8String

Differential Revision: https://phabricator.services.mozilla.com/D205560
2024-03-26 09:53:30 +00:00
Jonathan Kew
eb573ab92e Bug 1808813 - Ensure font loaders are cancelled properly if we refresh the font list. r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D205376
2024-03-26 09:44:38 +00:00
Jens Stutte
191adb0eb4 Bug 1848765 - Use nsTArray<>::StableSort for nsDisplayList::Sort. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D205605
2024-03-26 09:43:46 +00:00
Paul Adenot
291d65e213 Bug 1882518 - Print the PID when an assertion fails or MOZ_CRASH is reached in debug. r=gsvelto,glandium
Differential Revision: https://phabricator.services.mozilla.com/D202937
2024-03-26 09:42:11 +00:00
Emilio Cobos Álvarez
853cf5c495 Bug 1870380 - Don't use handled hints for table captions. r=tnikkel,layout-reviewers
Table captions have a similar issue as column spanners, where their
parent might not be the in the subtree of the style frame of its
ancestors. In particular, a repaint posted to a table that
doesn't cause a repaint in the table wrapper might not cause a repaint
of its captions.

Handle table captions like we treat out of flows and spanners, and add
more comments around this set-up.

Differential Revision: https://phabricator.services.mozilla.com/D205504
2024-03-26 09:17:06 +00:00
Emilio Cobos Álvarez
ff6647e085 Bug 1887539 - Fix nsRangeFrame::UpdateForValueChange after bug 1740580. r=dholbert
In bug 1740580 I updated these functions to take the content size, but
forgot to update two existing callers.

Differential Revision: https://phabricator.services.mozilla.com/D205549
2024-03-26 09:16:21 +00:00
Emilio Cobos Álvarez
3ad4e2a42e Bug 1887539 - Simplify PiP scrubber css rules. r=pip-reviewers,niklas
No behavior change, just a drive-by clean-up.

The position: relative stuff does nothing, because of this:

 *  https://searchfox.org/mozilla-central/rev/0e9ea50a999420d93df0e4e27094952af48dd3b8/layout/style/res/forms.css#826

Differential Revision: https://phabricator.services.mozilla.com/D205548
2024-03-26 09:16:20 +00:00
Emilio Cobos Álvarez
f0d6e74e25 Bug 1887263 - Add a wpt test for an invalid path that other browsers incorrectly allow. r=longsonr
Commas are only valid between pairs of numbers as per the SVG spec.

Differential Revision: https://phabricator.services.mozilla.com/D205568
2024-03-26 09:14:16 +00:00
Julian Descottes
ace4791a60 Bug 1882260 - [wdspec] Add test for addIntercept contexts argument with frames r=webdriver-reviewers,Sasha
Depends on D205459

Differential Revision: https://phabricator.services.mozilla.com/D205460
2024-03-26 09:03:01 +00:00
Julian Descottes
6195a992e4 Bug 1882260 - [bidi] Add support for contexts argument to network.addIntercept command r=webdriver-reviewers,Sasha
Differential Revision: https://phabricator.services.mozilla.com/D205459
2024-03-26 09:03:00 +00:00
Alexandre Poirot
75eac94c94 Bug 1866814 - [devtools] Wait for the location to be updated in browser_command_line_urls.js. r=devtools-reviewers,nchevobbe
This tweak helps run the test many times in a row with --run-until-failure.

Differential Revision: https://phabricator.services.mozilla.com/D204871
2024-03-26 08:30:10 +00:00
Alexandre Poirot
9af6d021f5 Bug 1866814 - [devtools] Test against the right tab in browser_command_line_urls.js. r=devtools-reviewers,nchevobbe
The test wasn't selected the newly created tab and was trying to open devtools
on the blank tab.

Differential Revision: https://phabricator.services.mozilla.com/D204652
2024-03-26 08:30:10 +00:00
Alexandre Poirot
40ad6a2dc0 Bug 1789981 - [devtools] Convert last DevTools JSM to ESM. r=devtools-reviewers,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D202438
2024-03-26 08:29:22 +00:00
Alexandre Poirot
d10de08d0d Bug 1827382 - [devtools] Migrate tracer from JSM to ESM. r=devtools-reviewers,nchevobbe
Differential Revision: https://phabricator.services.mozilla.com/D202437
2024-03-26 08:29:21 +00:00
Andreas Pehrson
522fd9ad0a Bug 1601251 - Prohibit copies and moves on Maybe<T> where such operations are prohibited on T. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D205077
2024-03-26 08:00:56 +00:00
Peter Van der Beken
7298d91b7f Bug 1875028 - With Fission enabled "onbeforeunload" prompts are automatically accepted for cross-origin navigations. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D204880
2024-03-26 07:42:58 +00:00
Peter Van der Beken
501ed13532 Bug 1881936 - Crash in [@ mozilla::dom::WebIDLGlobalNameHash::ResolveForSystemGlobal]. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D204227
2024-03-26 07:36:02 +00:00
Eden Chuang
fd5b902f9f Bug 1879272 - Clear Worker thread event queue in WorkerPrivate::RunLoopNevenRan and WorkerThread::SetWorker(nullptr). r=asuth
There is two situatoins cause pending events in the worker thread after Worker status changes to "Dead."

1. The WorkerPrivate::DoRunLoop is never executed.
This is the case where the worker initialization on the worker thread fails. And then WorkerPrivate::RunLoopNeverRan() would be called for handling these fail cases. However, WorkerPrivate::mPreStartRunnables had already dispatched when WorkerPrivate::SetWorkerPrivateInWorkerThread() is called, so when the moment executing WorkerPrivate::RunLoopNeverRan(), mPreStartRunnables must in the worker thread already. CompileScriptRunnable is one of these runnable.

2. Worker enters into DoRunLoop(). The WorkerThread can be held as nsIThread or nsIEventTarget by

nsCOMPtr<nsIThread> thread = NS_GetCurrentThread()
thread->Dispatch(myRunnable);

We don't block these runnable dispatchings after the worker's status changes to "Dead" because some objects, such as cycle_collector, need to complete their shutdown after the worker's shutdown. So ExternalWrappedRunnables(wrapped here) shows up in the dispatching stack when we hit the assertion. The original runnable is from everywhere and is related to Worker.

To fix case 1, the patch wants to handle the pending events in WorkerPrivate::RunLoopNevenRan() correctly. So, call ProcessPendingEvents if needed.
To fix case 2, we process the pending events before setting WorkerThread::mWorkerPrivate as nullptr. I think this is a correct time point because I think any other shutdown jobs should be finished before we detach the WorkerPrivate from the Worker thread.

Differential Revision: https://phabricator.services.mozilla.com/D203551
2024-03-26 07:33:36 +00:00
Jens Stutte
4473d4b7b9 Bug 1887697 - Avoid nsTArray<>::Sort to use ElementAt with bounds check while sorting. r=xpcom-reviewers,nika
We are aware of the fact that std::sort does no bounds checks at all and
can be derailed by bad comparators, but we assume we will catch bad
comparators with tests in DEBUG builds and can go for full speed here.

Differential Revision: https://phabricator.services.mozilla.com/D205604
2024-03-26 07:14:29 +00:00
Mozilla Releng Treescript
984819a8e4 no bug - Bumping Firefox l10n changesets r=release a=l10n-bump DONTBUILD CLOSED TREE
lv -> 64a08907e7ee69c4a7935e75d012ecafd3c79744
tr -> 86f6e77753237d57b3f7c684564ce003dec65013
2024-03-26 07:03:04 +00:00
Henri Sivonen
fb2ad9ca71 Bug 1887597 - Add Unicode-3.0 as an allowed third-party SPDX license identifier. r=glandium,dnazer
Differential Revision: https://phabricator.services.mozilla.com/D205540
2024-03-26 06:17:13 +00:00
Paul Bone
c9a81070e3 Bug 1878806 - pt 2. Add about:memory entries for fresh and madvised pages r=mccr8,glandium
Differential Revision: https://phabricator.services.mozilla.com/D200750
2024-03-26 05:06:15 +00:00
Paul Bone
4440259d29 Bug 1878806 - pt 1. Move mozjemalloc stats into their own tree r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D200749
2024-03-26 05:06:15 +00:00
andrej
8dd22727e8 Bug 1867837 - Remove chromium specific code from raptor, CI and locally. r=perftest-reviewers,kshampur
As chromium is no longer used and chromium as release is replacing it, we are removing all references to it to not confuse people

Differential Revision: https://phabricator.services.mozilla.com/D204821
2024-03-26 04:40:03 +00:00
Mike Hommey
3583f8462a Bug 1886318 - Add missing header for EBUSY on mingw. r=media-playback-reviewers,karlt
Differential Revision: https://phabricator.services.mozilla.com/D205669
2024-03-26 04:38:30 +00:00
James Teh
bf353f3ed5 Bug 1886709 part 2: Implement the UIA Invoke pattern. r=nlapre
Differential Revision: https://phabricator.services.mozilla.com/D205432
2024-03-26 04:25:41 +00:00
James Teh
116d79df30 Bug 1886709 part 1: Teach the test harness how to listen for generic UIA automation events and get UIA control pattern interfaces. r=nlapre
Differential Revision: https://phabricator.services.mozilla.com/D205431
2024-03-26 04:25:41 +00:00
Kelsey Gilbert
086f47b85e Bug 1886845 - Default to ./mach build --priority idle, down from --priority low. r=firefox-build-system-reviewers,glandium
It's natural for the system to be less responsive when saturated by an
all-cores workload like compilation.

However, we can use process priority to downgrade our saturating workloads,
so that normal system operation has higher relative priority.

I tested once (totally scientific!) and got a build time for
`./mach build --priority idle` not-worse-than for
`./mach build --priority low` (the current default).

```
[clobber; configure]
PS C:\dev\mozilla\gecko7> ./mach build --priority idle
[...]
To view a profile of the build, run |mach resource-usage|.
 7:59.70 Your build was successful!

[clobber; configure]
PS C:\dev\mozilla\gecko7> ./mach build
[...]
To view a profile of the build, run |mach resource-usage|.
 8:10.34 Your build was successful!
```

I don't generally expect builds to be faster when asking for lower priority,
but if it happens too for free, that's cool too.
But the main goal here is improved system responsiveness.

Differential Revision: https://phabricator.services.mozilla.com/D205374
2024-03-26 04:01:50 +00:00
Razvan Cojocaru
86d85b5eaf Bug 1887515 - Remove the apz.drag.initial.enabled pref. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D205544
2024-03-26 03:56:42 +00:00
James Teh
6a3e14495b Bug 1887590: static_cast when returning in uiaRawElmProvider::get_ProviderOptions. r=nlapre
Per the IDL, this method returns enum ProviderOptions.
Strictly speaking, that's not correct because this is actually a bit field combining values from the enum, rather than returning only a single value from the enum.
It seems some compilers are more strict about this and thus fail with an error like: assigning to 'enum ProviderOptions' from incompatible type 'int'
To work around this, static_cast the value before returning it.

Differential Revision: https://phabricator.services.mozilla.com/D205667
2024-03-26 03:36:57 +00:00
Ting-Yu Lin
a32338de71 Bug 1648947 - Force table-cells to use 'vertical-align:top' in printing. r=dholbert
When printing tables, if a table row group is split across the page boundary,
its table-cell descendants with `vertical-align:baseline|middle|bottom|` do not
align as expected and there might be data loss. Currently, we reflow the table
row frames first, and then call DidResize() [1] to move table cells to their
vertical-align positions via BlockDirAlignChild() [2] . This is fine if the
table is in gallery mode or can fit in one page, but it doesn't work if it is
across the page boundary.

To fix this properly, we need to rewrite the table fragmentation code so that
the a table cell is reflowed in its aligned position with a correct constrained
available bsize. In the meantime, this patch works around the data loss by
forcing table-cells to use `vertical-align:top`. This is a hack, but it also
matches Google Chrome's current behavior. I feel this is a good interim solution
to improve our printing quality.

[1] https://searchfox.org/mozilla-central/rev/2537e5eaafaab9a7ef6be5cfc8e9b1e2c747fdfd/layout/tables/nsTableRowGroupFrame.cpp#1119-1125
[2] https://searchfox.org/mozilla-central/rev/2537e5eaafaab9a7ef6be5cfc8e9b1e2c747fdfd/layout/tables/nsTableRowFrame.cpp#370-372

Differential Revision: https://phabricator.services.mozilla.com/D205538
2024-03-26 02:41:07 +00:00
James Teow
4cacb18e20 Bug 1887233 - Don't count non-sponsored components as visible ads - r=scunnane
Differential Revision: https://phabricator.services.mozilla.com/D205570
2024-03-26 01:57:31 +00:00
alwu
c560dfa1f4 Bug 1868482 - part3 : ensure HDCP2.2 compatible would be vaild when the flag contains 'CapabilitesFlag::NeedHDCPCheck'. r=jolin
Differential Revision: https://phabricator.services.mozilla.com/D205394
2024-03-26 01:28:30 +00:00
alwu
e4cc9a1487 Bug 1868482 - part2 : cached capabilities in the MFCDM process. r=jolin
We should always keep cached capabilities in the MFCDM process so that
we won't need to regenerate capabilities when asking that from different
content processes.

Differential Revision: https://phabricator.services.mozilla.com/D205393
2024-03-26 01:28:29 +00:00
alwu
d52eb4afef Bug 1868482 - part1 : add 'isHardwareDecryption' on MFCDMCapabilitiesIPDL. r=jolin
Differential Revision: https://phabricator.services.mozilla.com/D205392
2024-03-26 01:28:29 +00:00
Cristian Tuns
e4e07dfd07 Backed out changeset a695fb3d1edd (bug 1881821) for causing dt failures in browser_markup_screenshot_node_about_page.js CLOSED TREE 2024-03-25 21:23:57 -04:00
Joshua Marshall
ee03bbaeef Bug 1855699 - Disable WorkerRef instrumentation to cut down on intermittent noise. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D205052
2024-03-26 00:57:56 +00:00
Mozilla Releng Treescript
d88b6029a0 no bug - Import translations from android-l10n r=release a=l10n CLOSED TREE 2024-03-26 00:18:24 +00:00
Jules Simplicio
93d186f3b1 Bug 1881821 - Clean up tokens files ahead of JSON source of truth setup r=desktop-theme-reviewers,reusable-components-reviewers,hjones,dao,mstriemer
Changed
* `--color-background-*` are now part of the group of `--background-color` tokens
* `--box-background-color` is now part of the group of `--background-color` tokens as `--background-color-box`
* `--color-canvas` is now part of the group of `--background-color` tokens as `--background-color-canvas`
* `--border-interactive-*` are now part of the group of `--border-color` tokens and consequently now start with `--border-color`
* `--color-error-outline` is now an outline-specific token as `--outline-color-error`
* Comment headings were cleaned up as to follow the existing standard
* Better documentation behind the difference of "Base", "Application", and "Component" tiers in the design tokens documentation
* Tokens files are alphabetized

Removed
* `--outline-color-error` had duplicates in both high contrast mode media queries, so its value under `forced-colors` was removed
* "Base" and "Application" headings in tokens files were removed in order to lean in on the alphabetical order organization of token groups and promote a cleaner file and less confusion
* Documentation was edited down to not incude any guidance that we don't adhere to
* Remove duplicate interactive border color high contrast mode tokens in `tokens-brand.css` in favor of `tokens-shared.css`
* Remove `--button-border-color-primary` duplicate in `tokens-brand.css`
* Remove duplicate `--button-text-color` in `tokens-shared.css`

Differential Revision: https://phabricator.services.mozilla.com/D202767
2024-03-26 00:04:25 +00:00
Mike Hommey
5f3cb60001 Bug 1881383 - Remove VS 2019 toolchain. r=firefox-build-system-reviewers,sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D202368
2024-03-26 00:02:34 +00:00
Steve Fink
3261ef021d Bug 1879918 - Whole cell buffer tracing is no longer order-dependent between strings and non-strings r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D205143
2024-03-25 23:36:16 +00:00
Steve Fink
33c87443b9 Bug 1879918 - Move NON_DEDUP_BIT to bit 15 to free up a bit r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D204836
2024-03-25 23:36:16 +00:00
Steve Fink
a12e130f8d Bug 1879918 - Remove some uses of the nondeduplicatable bit r=jandem,jonco
Differential Revision: https://phabricator.services.mozilla.com/D204835
2024-03-25 23:36:15 +00:00
Steve Fink
749705ae99 Bug 1879918 - Allow tenured dependent strings of nursery base strings. r=jandem,jonco
When tracing strings in the whole cell buffer, track all tenured dependent -> nursery string edges for later sweeping, and update the characters pointer if the base string's chars move out of the nursery.

Differential Revision: https://phabricator.services.mozilla.com/D203865
2024-03-25 23:36:15 +00:00
Michael Hughes
64fe1d816e Bug 1884785 - Expose the path to the os default application to privileged extensions r=Gijs,necko-reviewers
Added in some code to expose the path to the os default application. Tested via tests on Windows. Mac and Linux will use the nsMIMEInfoImpl which will supply the functionality for them and be tested with the auto-tests.

Differential Revision: https://phabricator.services.mozilla.com/D204306
2024-03-25 23:19:17 +00:00
Michael Hughes
e66ab7ac30 Bug 1884265 - Expose pretty ApplicationName from the registry to file handlers r=nrishel,nalexander,necko-reviewers,barret,valentin
Some code to exercise this in the browser console:

```
{
  const printNames = async (appList) => {
    let buffer = "Start:\n";

    for (let index = 0; index < appList4.length; index++) {
      let app = appList4.queryElementAt(index, Ci.nsILocalHandlerApp);
      buffer += app.executable.leafName;
      buffer += "\n";
    }

    buffer += "\n";

    for (let index = 0; index < appList4.length; index++) {
      let app = appList4.queryElementAt(index, Ci.nsILocalHandlerApp);
      let prettyName = await app.prettyNameAsync();
      buffer += prettyName;
      buffer += "\n";
    }

    buffer += "\n";

    for (let index = 0; index < appList4.length; index++) {
      let app = appList4.queryElementAt(index, Ci.nsILocalHandlerApp);
      buffer += app.executable.displayName;
      buffer += "\n";
    }

    buffer += "\n";

    for (let index = 0; index < appList4.length; index++) {
      let app = appList4.queryElementAt(index, Ci.nsILocalHandlerApp);
      if (AppConstants.platform == "win") {
      	let file = app.executable;
        if (file instanceof Ci.nsILocalFileWin) {
          try {
          	buffer += file.getVersionInfoField("FileDescription");
          } catch (e) {
          }
        }
      }
      buffer += "\n";
    }

    buffer += "\nEnd\n";

    console.log(buffer);
  };

  const lazy4 = {};

  XPCOMUtils.defineLazyServiceGetters(lazy4, {
    gMIMEService: ["@mozilla.org/mime;1", "nsIMIMEService"],
  });

  let mimeInfo4 = lazy4.gMIMEService.getFromTypeAndExtension("text/html", "html");

  if (mimeInfo4.hasDefaultHandler) {
    console.log(`HasDefaultHandler = true`);
    console.log(`Description = ${mimeInfo4.defaultDescription}`);
  } else {
    console.log(`HasDefaultHandler = false`);
  }

  let appList4 = mimeInfo4.possibleLocalHandlers || [];
  console.log("appList4 = ");
  console.log(JSON.stringify(appList4));

  printNames(appList4);
}
```

That produces output that can be seen in a pretty form here:
https://docs.google.com/spreadsheets/d/1OvtrZgMlPMJO4Wgu6wwAYvm89orj9HdS_tsDxYn7yrA/edit#gid=0

This does not fix-up things so that all calls to getName() on the LocalHandlerApp are switched to prettyNameAsync. That work is tracked here: https://bugzilla.mozilla.org/show_bug.cgi?id=1884267

Differential Revision: https://phabricator.services.mozilla.com/D203876
2024-03-25 23:19:17 +00:00