- Nov 16, 2023
-
-
Many fonts have issues with their vertical metrics. they are used to influence the height of ascenders and depth of descenders. Gecko uses it to calculate the line height (font height + ascender + descender), however because of that idiosyncratic behavior across multiple operating systems, it can be used to identify the user's OS. The solution proposed in the patch uses a default factor to be multiplied with the font size, simulating the concept of ascender and descender. This way all operating systems will have the same line height.
-
Pier Angelo Vendrame authored
System fonts are an enormous fingerprinting vector. Even with font allow lists and with our custom configuration on Linux, which counter metrics measurements, getComputedStyle leaks several details. This patch counters both these kinds of attacks.
-
- Oct 26, 2023
-
-
Masayuki Nakano authored
Bug 1855345 - Make `AutoCopyListener` ignore any selection changes caused by Selection API r=karlt,smaug, a=dsmith Even though there is a reasonable usabe like bug 1567160, we should ensure that `AutoCopyListener` never update clipboard when the selection change is caused by a Selection API call. Differential Revision: https://phabricator.services.mozilla.com/D191585
-
- Oct 28, 2023
-
-
Daniel Holbert authored
This patch doesn't change behavior; it just removes some redundant checks. (Note that the tight-scoping around nsAutoMicroTask/ReduceAnimations is important for the RAII object to be torn down at the intended time; but it doesn't need its own if-check.) Original Revision: https://phabricator.services.mozilla.com/D191911 Differential Revision: https://phabricator.services.mozilla.com/D191987
-
Daniel Holbert authored
This patch doesn't change behavior. This is a bit gross, but it helps us make better use of the backtrace to figure out what's going on in a given crash report. Original Revision: https://phabricator.services.mozilla.com/D191909 Differential Revision: https://phabricator.services.mozilla.com/D191986
-
Daniel Holbert authored
Bug 1861259 part 1: Refactor out a helper function for loop body in nsRefreshDriver::Tick. a=diannaS This doesn't affect behavior; it's just a pure refactoring, moving code from being inline to being in a helper function. Original Revision: https://phabricator.services.mozilla.com/D191908 Differential Revision: https://phabricator.services.mozilla.com/D191985
-
Jamie Nicol authored
These telemetry probes have long since expired, so remove them. This avoids taking unnecessary timestamps in these functions, which we have seen can be expensive on certain devices. Original Revision: https://phabricator.services.mozilla.com/D185007 Differential Revision: https://phabricator.services.mozilla.com/D192116
-
- Oct 12, 2023
-
-
Sean Feng authored
Bug 1856497 - Allow user input events to bypass the delay handling check if this is a non-visible document r=smaug, a=dmeehan Differential Revision: https://phabricator.services.mozilla.com/D190133
-
- Oct 11, 2023
-
-
Sean Feng authored
Bug 1856514 - Make sure nsRefreshDriver will tick enough times for user input handling r=smaug, a=dmeehan Differential Revision: https://phabricator.services.mozilla.com/D190108
-
- Sep 05, 2023
-
-
Sean Feng authored
Differential Revision: https://phabricator.services.mozilla.com/D186053
-
Sean Feng authored
In some edge cases, we may start handling user input events that are not supposed to be handled by the current document. This patch introduces some delay to handle user input events. Differential Revision: https://phabricator.services.mozilla.com/D180976
-
- Sep 08, 2023
-
-
Emilio Cobos Álvarez authored
As expected because the NS_ASSERTION was removed in the patch.
-
- Sep 18, 2023
-
-
Shane Hughes authored
Make the errors more visible in viewsource/XMLPrettyPrint by adding a semitransparent red background and switching from a dotted underline to a wavy underline. Both styles were chosen for consistency with the devtools debugger's error styles. Same background color and same underline appearance. Differential Revision: https://phabricator.services.mozilla.com/D188284
-
- Oct 02, 2023
-
-
Emilio Cobos Álvarez authored
-
- Aug 03, 2023
-
-
Timothy Nikkel authored
Bug 1809492. Clear pointer to nsTreeBodyFrame on XULTreeElement after any possible calls that can set it. r=emilio, a=RyanVM Differential Revision: https://phabricator.services.mozilla.com/D184318
-
- Jul 23, 2023
-
-
Andrew Osmond authored
Bug 1837070 - Ensure we flush OffscreenCanvas when the display list is recreated. r=lsalzman, a=RyanVM When we recreate the display list, e.g. after tabbing away, we need to ensure we flush the OffscreenCanvas because our resource handles will be invalidated. This requires the OffscreenCanvasDisplayHelper to know which OffscreenCanvas it belongs to, and a worker reference if necessary to do the dispatching for the flush. Otherwise we would require the canvas to be updated manually by the web application to repaint. Differential Revision: https://phabricator.services.mozilla.com/D184324
-
- Sep 05, 2023
-
-
Emilio Cobos Álvarez authored
The caller can already run script, it's just that other script-running functions are already marked as _BOUNDARY (incorrectly). Will fix properly in a follow-up bug. MANUAL PUSH: Bustage fix CLOSED TREE
-
Emilio Cobos Álvarez authored
Bug 1843700 - Hide popups synchronously if needed, even if already hiding async. r=NeilDeakin a=pascalc Differential Revision: https://phabricator.services.mozilla.com/D186126
-
- Jul 27, 2023
-
-
Robert Longson authored
Differential Revision: https://phabricator.services.mozilla.com/D184410
-
Ryan VanderMeulen authored
Differential Revision: https://phabricator.services.mozilla.com/D184848
-
- Jul 14, 2023
-
-
Emilio Cobos Álvarez authored
Just like we rollup menus. This is needed because tooltips otherwise get hidden on mousedown and don't flush the view manager. This matches the similar hunk for GTK in bug 1569439. Differential Revision: https://phabricator.services.mozilla.com/D183489
-
- Jul 12, 2023
-
-
Emilio Cobos Álvarez authored
ThinArc is way more complex than it needs to be, and miri complains about various things when using the selectors crate with it. This doesn't fully fix miri, but it gets much closer. ThinArc becomes just an alias for Arc<HeaderSlice<>>. This allows to simplify the bindings to ArcSlice too, since now the existing Arc<> code can just be used. Differential Revision: https://phabricator.services.mozilla.com/D183011
-
- Jul 18, 2023
-
-
Timothy Nikkel authored
Bug 1843847. Clear nsDisplayListBuilder::mCurrentContainerASR at the end of a paint. r=mstange, a=dsmith Differential Revision: https://phabricator.services.mozilla.com/D183741
-
- Jul 13, 2023
-
-
David Shin authored
Bug 1843086: Line participants use block start ascent, instead of not-yet stored baseline. r=emilio, a=RyanVM Differential Revision: https://phabricator.services.mozilla.com/D183432
-
- Jul 10, 2023
-
-
Timothy Nikkel authored
Bug 1842325. Ensure that WebRenderLayerManager::mTarget is always cleared after a transaction. r=gfx-reviewers,lsalzman, a=dsmith The scope exit in WebRenderLayerManager::EndTransactionWithoutLayer isn't necessary because there are no early returns in that function, but I added it just in case an early return is added in the future. The assert in nsDisplayList::PaintRoot currently holds because of how the current code is, but these changes will mean EndEmptyTransaction will handle that case as far as clearing mTarget is concerned. Differential Revision: https://phabricator.services.mozilla.com/D183069
-
- Jul 04, 2023
-
-
Robert Longson authored
Differential Revision: https://phabricator.services.mozilla.com/D182618
-
- Jun 30, 2023
-
-
Masayuki Nakano authored
Bug 1840804 - Make `TextEditor::OnBlur` stop finalizing `Selection` if new element already gets focus r=m_kato, a=dsmith Before bug 1770874, `EditorBase::OnBlur` checked that for both `TextEditor` and `HTMLEditor`. However, accidentally, I removed the check from `TextEditor`. Therefore, a call of `EditorBase::FinalizeSelection()` will hide the caret even after another editor gets focus. Therefore, this patch just take it back into `TextEditor::OnBlur`. Note that I don't think the design mode handling is required there because `TextEditor`s shouldn't be created in the design mode document. Differential Revision: https://phabricator.services.mozilla.com/D182468
-
- Jun 28, 2023
-
-
Masayuki Nakano authored
Bug 1840700 - Make `Selection::AddRangeAndSelectFramesAndNotifyListenersInternal()` update interline position even if it does nothing r=jjaschke, a=dsmith It always set to "start of next line" when new range was added. However, after bug 1815802, it does nothing when adding range is one of its ranges. Therefore, if interline position is set to "end of line" by our internal code, like editor, `getSelection().addRange(getSelection().getRangeAt(0))` keeps the last interline position. Differential Revision: https://phabricator.services.mozilla.com/D182300
-
David Shin authored
Was introduced in bug 1831148, regresses the behaviour fixed by bug 1419225. Differential Revision: https://phabricator.services.mozilla.com/D182346
-
- Jun 20, 2023
-
-
Emilio Cobos Álvarez authored
This actually fixes the bug. The issue is that we end up with nsITreeView.setTree(null) then nsITreeView.setTree(<tree>). This code deals with the first call: https://searchfox.org/mozilla-central/rev/c936f47f3a629ae49a4d528d3366bf29f2d4e4a7/browser/components/places/content/treeView.js#1651 But the later call doesn't restore the state properly and a bunch of nodes end up unparented. That might be worth fixing on its own... This is probably a long/forever-standing bug that was uncovered by different amount of reflow calls. Depends on D181379 Differential Revision: https://phabricator.services.mozilla.com/D181380
-
- Jun 14, 2023
-
-
donal meehan authored
-
donal meehan authored
Backed out changeset 47f0f49b4036 (bug 1834786) from beta, the regressor (bug 1834081) is being backed out
-
- Jun 07, 2023
-
-
Nika Layzell authored
Bug 1826206 - Require nsISerialEventTarget for RetargetDeliveryTo, r=necko-reviewers,valentin, a=dmeehan This avoids potential issues where multiple OnDataAvailable callbacks or similar could theoretically be called concurrently on different StreamTransportService threads when targeting the STS - these cases will now target a TaskQueue on the STS instead, structurally ensuring serial execution. Differential Revision: https://phabricator.services.mozilla.com/D179984
-
- Jun 09, 2023
-
-
Emilio Cobos Álvarez authored
Bug 1836670 - Use NonNull in cssparser::CowRcStr. r=layout-reviewers,glandium,dlrobertson, a=dmeehan This prevents the compiler from misoptimizing this code due to undefined behavior. Upstream PR: https://github.com/servo/rust-cssparser/pull/345 Differential Revision: https://phabricator.services.mozilla.com/D179921
-
- Jun 04, 2023
-
-
Emilio Cobos Álvarez authored
The test changes from the previous patch uncover an issue on shippable builds, see referenced bug. MANUAL PUSH: Orange fix CLOSED TREE
-
Emilio Cobos Álvarez authored
See https://github.com/w3c/csswg-drafts/issues/7961#issuecomment-1549874958 In general I agree with Tab that media blocks should parse the same regardless of whether they are nested. We should add a test that covers this to WPT, but for now tweak the local reftest. MANUAL PUSH: Trivial orange fix CLOSED TREE
-
Emilio Cobos Álvarez authored
Bug 1835066 - Tweak test_parser_diagnostics_unprintables.html to keep testing unexpected token errors. r=dholbert Without nesting, the parser error is the unexpected token error, emitted from cssparser. With nesting enabled these behave the same as other strings outside of a block (so an "unexpected end of input" error instead). Tweak the test a bit to keep testing what this test wants to test (that unexpected token errors are escaped). Differential Revision: https://phabricator.services.mozilla.com/D179830
-
- Jun 03, 2023
-
-
Stanca Serban authored
Backed out changeset 7bc8c25b2935 (bug 1833244) Backed out changeset 4576af83a4ec (bug 1833244) Backed out changeset 90a5bbba7b9c (bug 1833244)
-
Jonathan Watt authored
Bug 1833244 p3. Implement sheet orientation switching/rotation for `page-orientation`. r=AlaskanEmily,dholbert Where supported (print preview and print-to-PDF), this implements changing the orientation and/or rotation of print sheets, as appropriate, in response to CSS `page-orientation`. When supported we: - in the single page-per-sheet case, rotate the sheet in order to implement any `page-orientation` rotation on the sheet. Rotating the sheet is necessary so that the pages in the PDF files that we output are correct. - in the multiple pages-per-sheet case, we already rotate individual pages in their grid cell. This change keeps such pages rotated, as appropriate, but augments that behavior by switching the orientation of the sheet (based on the first page on the sheet) if necessary to best place the page to make maximum use of the space. Depends on D179423 Differential Revision: https://phabricator.services.mozilla.com/D179448
-
Jonathan Watt authored
OS print drivers/devices know nothing about page dimensions unless we tell them. Previously, the physical page dimensions (including orientation) have always been the same, so communicating their dimensions once at the start of a print has been enough. In preparation for supporting different "physical" page dimensions (in the immediate future only different page orientations) when we save to PDF, we need to have the infrastructure to pass dimensions through on a page-by-page basis. This patch adds that. None of the PrintTarget subclasses do anything with this extra information yet, but in a follow-up patch PrintTargetPDF will use this information to create PDFs with mixed page orientations. Differential Revision: https://phabricator.services.mozilla.com/D179423
-