Граф коммитов

44356 Коммитов

Автор SHA1 Сообщение Дата
Jan-Erik Rediger 5cd8c5650a Bug 1812615 - Update to Glean v52.2.0, glean_parser 7.0.0 and UniFFI 0.23. r=chutten,markh,glandium,supply-chain-reviewers
The in-tree UniFFI bindings were regenerated with:

    ./mach uniffi generate

Differential Revision: https://phabricator.services.mozilla.com/D168060
2023-01-31 11:12:05 +00:00
Tom Schuster e1d65f08eb Bug 1811863 - Replace the remaining users of privacy_resistFingerprinting(). r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D168081
2023-01-30 21:37:04 +00:00
Glenn Watson fccecb89b3 Bug 1813514 - Add small amount of fuzziness to new reftest r=gfx-reviewers,jgilbert
There is some edge AA fuzziness due to the differences between
the test and reference. Fuzzing them doesn't affect the test
result as when the bug occurs the rendering difference is
dramatically different.

Differential Revision: https://phabricator.services.mozilla.com/D168306
2023-01-30 20:42:38 +00:00
Norisz Fay 7a9e3bbab8 Backed out changeset c2571e59e07b (bug 1811978) for causing multiple failures CLOSED TREE 2023-01-30 10:04:27 +02:00
Glenn Watson 8a92e5ca8e Bug 1811978 - Enable the new tiled rendering path, update test expectations r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D167630
2023-01-30 02:54:41 +00:00
Glenn Watson 24de73bc80 Bug 1808830 - Fix a panic from an invalid cast in euclid r=gfx-reviewers,jrmuizel
When the scale is very large, we need to adjust that before
doing the cast to integer units.

Differential Revision: https://phabricator.services.mozilla.com/D168027
2023-01-30 00:12:15 +00:00
Glenn Watson 3f7b25bf9c Bug 1800358 - Fix invalid scroll root selection in some cases. r=gfx-reviewers,jrmuizel
Reverts an optimization that can cause artifacts on some pages. We
need to do a deeper investigation at some point to find out why,
and then reenable the optimization.

Differential Revision: https://phabricator.services.mozilla.com/D168026
2023-01-29 23:57:40 +00:00
Glenn Watson 1e90b02453 Bug 1812341 - Fix 3d transforms bug with backface-visibility: hidden r=gfx-reviewers,jrmuizel
Revert the original changes from bug 1772049 for now. We don't
currently rely on that patch, having found a simpler way to
handle how that code interacts with the backdrop-filter code.

Differential Revision: https://phabricator.services.mozilla.com/D168015
2023-01-29 23:38:27 +00:00
Jonathan Kew b927eaab86 Bug 1724892 - Implement the font-synthesis-{weight,style,small-caps} longhand properties, and make font-synthesis into a shorthand. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D167480
2023-01-29 13:25:31 +00:00
Emilio Cobos Álvarez 604d8268b2 Bug 1813046 - Simplify scrollbar sizing code. r=spohl
This removes the capability of having differently-sized vertical and
horizontal scrollbars (which is only potentially used in windows, and in
practice almost-never used). For that case, we choose the larger of
vertical/horizontal scrollbar sizes.

This is in order to be able to realistically expose the scrollbar size
to CSS, see blocked bug.

We make RecomputeScrollbarParams the central place where each scrollbar
style decides its sizes, and make GetDPIRatioForScrollbarPart handle the
cocoa special-case of scaling to 1 or 2, but nothing else.

Differential Revision: https://phabricator.services.mozilla.com/D168080
2023-01-28 21:35:51 +00:00
Lee Salzman 5203daccb2 Bug 1812970 - Avoid using Skia's deprecated clip ops. r=jrmuizel
Skia upstream removed deprecated clip ops that could be used to replace
the clipping stack and bypass clips. We shouldn't really need to do this
anymore, as we can work around it just using public APIs.

The only SkCanvas operation that allows us to bypass clipping is
writePixels, which still allows us to implement CopySurface/putImageData.

Other instances where we were using the replace op for DrawTargetWebgl
layering support can just be worked around by creating a separate
DrawTargetSkia pointing to the same pixel data, but on which no clipping
or transforms are applied so that we can freely do drawing operations
on it to the base layer pixel data regardless of any user-applied clipping.

Differential Revision: https://phabricator.services.mozilla.com/D168039
2023-01-28 11:24:54 +00:00
sotaro d55f5ec846 Bug 1810097 - Support AHardwareBuffer of out-of-process WebGL on Android r=lsalzman,gfx-reviewers
Modify AHardwareBuffer implementation as to support gl::SharedSurface of out-of-process WebGL. And remove unused AHardwareBuffer implementation.

By limiting AHardwareBuffer only in GPU process, AHardwareBuffer implementation becomes simpler. We do not need to handle cross process AHardwareBuffer delivery and cross process android Fence delivery.

Differential Revision: https://phabricator.services.mozilla.com/D167911
2023-01-27 21:35:26 +00:00
Jonathan Kew 2d4285c3c9 Bug 1363454 - Create a pref to list icon font families that should be used even when use_document_fonts=0, overriding the browser's font prefs. r=emilio,dholbert
Some widely-used icon fonts use ligature rules to replace icon names such as "volume_up"
or "down_arrow" with icon glyphs. If the site is designed to use such a font, but the user
disables document fonts and we use our default Latin font instead, the underlying text will
be rendered instead of the intended icon.

To enable such fonts to continue to work, we provide a list of known ligature-icon fonts
and allow them to be used even when the document-fonts setting is disabled.

Differential Revision: https://phabricator.services.mozilla.com/D167923
2023-01-27 17:32:54 +00:00
Jonathan Kew e9adaa9c22 Bug 1812676 - Improve font-style:oblique mapping to 'slnt' variation. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D167989
2023-01-27 13:32:19 +00:00
Jeff Muizelaar 3a46da3d80 Bug 1803375. Use different coordinates when running on AMD. r=lsalzman,jgilbert
This updates the version wpf-gpu-raster which adds support for
GPUs/drivers that use truncation instead of rounding when converting
vertices to fixed point.

It also adds the GL vendor to InitContextResult so that we can detect
AMD on macOS and tell wpf-gpu-raster that truncation is going to happen.

Differential Revision: https://phabricator.services.mozilla.com/D167503
2023-01-27 01:45:17 +00:00
Razvan Cojocaru bdbdd444c8 Bug 1812396 - Make BasePoint::X() and Y() return Coord. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D167950
2023-01-27 00:22:28 +00:00
Glenn Watson b42594e681 Bug 1811977 - Add a new tiled primitive rendering path to webrender r=gfx-reviewers,nical
This patch adds most of the underlying infrastructure for a new
tiled (previously: segmented) rendering path to webrender. It is
initially used only by simple (non-masked) rectangles. Follow
up patches will extend this first to all rectangles and then
porting other primitives to use this new rendering path.

The new primitive is encoded in the command buffer structure,
which allows efficiently encoding arbitrary sets of commands
to be read by the batching code. The batching code for this
primitive is much simpler, and should be consistent and shared
when other primitives are ported to use this path.

Tiling is handled during the prepare pass per-primitive. It can
support edge AA tiles, different regions for clip-mask corners
(to be added in a follow up), and uniform tiling for the inner
section of the primitive (e.g. for tiled image masks).

It adds specific support for edge anti-aliasing to be considered
as part of the tiling configuration for a primitive. This both
improves performance of rotated but otherwise opaque primitives
and allows additional functionality we don't currently support
(such as applying AA along one edge of a 2d but subpixel aligned
primitive). Since SWGL provides native AA support, the patches
take account of that, and avoid the vertex shader work and extra
edge primitives when SWGL is enabled.

Follow up patches will:
 - Add clip-mask support to new rendering path
 - Port other primitives to new rendering path
 - Add SWGL shader fast-paths where profiling indicates it makes sense to
 - Remove old segment / mask rendering paths once no longer used

Other minor changes included as part of this patch:
 - Pack TransformPaletteId in 24 bits instead of 32, for better instance struct packing
 - Support prepare pass appending multiple command buffer instructions per primitive

Differential Revision: https://phabricator.services.mozilla.com/D167629
2023-01-26 20:55:32 +00:00
Jamie Nicol 33a176e4f3 Bug 1810693 - Disable robust buffer access on Adreno 620 devices. r=gfx-reviewers,nical
A long time ago we blocked this on Adreno 630 due to causing strange
shader linking errors. We have recently discovered that this can also
affect Adreno 620 devices too.

Differential Revision: https://phabricator.services.mozilla.com/D167941
2023-01-26 14:31:11 +00:00
Emilio Cobos Álvarez 6195707dcf Bug 1809430 - Make some tests account for smaller default window size on macOS. r=botond
Before these patches we were adding the titlebar height even though we
were not rendering it.

This made an apz mochitest with hardcoded heights to fail on macOS.

It also perturbed browser_html_scroll_restoration.js in a way such as
the scroll position after a resize is rounded in a different direction,
but that is harmless.

Depends on D166431

Differential Revision: https://phabricator.services.mozilla.com/D167027
2023-01-26 11:19:16 +00:00
Razvan Cojocaru d8e9d2a141 Bug 1746126 - Allow controlling zoom-to-focused-input behaviour using `touch-action`. r=botond
Rename AllowedTouchBehavior::DOUBLE_TAP_ZOOM to ANIMATING_ZOOM, and
CompositorHitTestFlags::eTouchActionDoubleTapZoomDisabled to
eTouchActionAnimatingZoomDisabled while at it.

Differential Revision: https://phabricator.services.mozilla.com/D167522
2023-01-26 01:07:58 +00:00
Hiroyuki Ikezoe 63b11934d6 Bug 1811871 - Check collapsed attribute rather than computed opacity value to tell whether which navigation ison is currently visible. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D167740
2023-01-25 21:03:55 +00:00
Erich Gubler eec73ccfa8 Bug 1812260: build(snap): re-apply forgotten `cmath` include in ANGLE codegen (sorry!) r=jgilbert,gfx-reviewers,nical
Re-apply D156577, which was forgotten in our recent rebase of ANGLE (orig. performed at 06d250c819ee
and 94699211d97b).

Differential Revision: https://phabricator.services.mozilla.com/D167815
2023-01-25 19:45:10 +00:00
Emilio Cobos Álvarez af31750cc0 Bug 1775062 - Fix various using statements to use properly qualified names. r=nika,necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D167710
2023-01-25 10:52:10 +00:00
Jamie Nicol 5c4015fd4f Bug 1811929 - Fix JNI crash caused by passing incorrect jobject type. r=gfx-reviewers,nical
The function ANativeWindow_fromSurface() takes a jobject that is
supposed to be a Surface. Prior to bug 1706656 GeckoSurface was a
subclass of Surface, meaning we passed the correct type. However,
GeckoSurface no longer derives from Surface meaning we hit this JNI
crash.

To fix this, call GeckoSurface->GetSurface() to get the underlying
Surface object.

Note that this code path is only active if the user has modified the
pref gfx.use-surfacetexture-textures. So although the volume is high,
it appears to be limited to a small number of users.

Differential Revision: https://phabricator.services.mozilla.com/D167659
2023-01-24 15:31:31 +00:00
Jonathan Kew b9dbd7a04b Bug 1803154 - Back out changeset c1b0ce76a51b (bug 1801512) because it seems to have made things worse for a number of users. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D167615
2023-01-24 10:03:49 +00:00
Nicolas Silva 03eaaeceaf Bug 1811284 - Update wgpu to 24a904256e225b20b11fb30f914ef53212a2909e. r=webgpu-reviewers,ErichDonGubler,jimb
Differential Revision: https://phabricator.services.mozilla.com/D167276
2023-01-24 09:24:03 +00:00
sotaro 53393b26d4 Bug 1811160 - Disable out-of-process WebGL and accelerated canvas when GPU process does not exists on android r=gfx-reviewers,lsalzman
On Android, GPU process exists by default. When GPU process does not exist, an error should disable GPU process.

On Android, WebGL handling process could easily crash. The crash could trigger disable GPU process. Current out-of-process WebGL implementation creates WebGLParent in parent process. Then a crash in parent process could be triggered by WebGL. Then it seems better to disable out-of-process WebGL when GPU process does not exist.

And it seems also better to disable accelerated canvas, since it uses WebGL for acceleration.

Differential Revision: https://phabricator.services.mozilla.com/D167512
2023-01-24 06:05:13 +00:00
Emilio Cobos Álvarez 9e530f224a Bug 1811834 - Clean up nsWidgetInitData. r=cmartin,geckoview-reviewers,calu
Move it to the mozilla::widget namespace.

Use enum classes for transparency, popup type, popup level, etc.

Mostly automated with sed, but there were a few manual changes required
as well in windows code because they relied on Atomic<TransparencyMode>
working (which now doesn't because TransparencyMode is 1 byte instead of
4 bytes).

Differential Revision: https://phabricator.services.mozilla.com/D167537
2023-01-23 23:58:41 +00:00
Csoregi Natalia f822f99642 Backed out 6 changesets (bug 1799258) for failures on gfx.color_management.display_profile. CLOSED TREE
Backed out changeset 22351f36b74b (bug 1799258)
Backed out changeset 9bbbe3ed2794 (bug 1799258)
Backed out changeset e05c809f58d0 (bug 1799258)
Backed out changeset 791eeb52f034 (bug 1799258)
Backed out changeset 353ef4721bba (bug 1799258)
Backed out changeset b5157d950aa7 (bug 1799258)
2023-01-24 02:08:51 +02:00
Kelsey Gilbert 3a068f509a Bug 1799258 - Support outByIn.size()<2 in SampleOutByIn. r=bradwerth
This makes it easier to apply transform functions, even when they are
not defined/present.

Differential Revision: https://phabricator.services.mozilla.com/D167472
2023-01-23 22:13:18 +00:00
Kelsey Gilbert d27ed44f80 Bug 1799258 - No-op equal tfs rather than inverting. r=bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D167471
2023-01-23 22:13:17 +00:00
Kelsey Gilbert 9e2d016bd4 Bug 1799258 - Do color-management on Windows+DComp via IDCompositionFilterEffects. r=sotaro
+ Add gfx.color_management.rec709_gamma_as_srgb:true. :'(

In particular, rec709(16/255) -> srgb(31/255). Even though it's
technically correct, it's practically-speaking incorrect, since that's
not what Chrome does, nor what the web expected for years and years.

In practice, basically everyone expects gamma to just be completely
ignored.

What people expect:
* Pretend gamut is srgb(==rec709), but stretch this naively for the
  display. If you have a display-p3-gamut display, srgb:0.5 expects to
  be displayed as display:0.5, which will be display-p3:0.5 to the eyes.
* Pretend all content gammas (TFs) are srgb(!=rec790), and then bitcast this
  naively for the display. E.g. rec709(16/255) should
  display the same as srgb(16/255), not srgb(31/255). (Note: display-p3
  uses srgb gamma) But if your display has e.g. gamma=3.0, don't
  convert or compensate.

This is a formalization of what you get when you spend decades ignoring
color management, and people build things based on behavior-in-practice,
not behavior-in-theory.

Also:
+ gfx.color_management.native_srgb:true for Windows, so we don't use the
  display color profile, which no one else does.
+ Add rec2020_gamma_as_rec709, so we have a path towards maybe having
  rec2020 use its correct transfer function, rather than srgb (like
  rec709).

Differential Revision: https://phabricator.services.mozilla.com/D161857
2023-01-23 22:13:17 +00:00
Kelsey Gilbert 70f8fd53cc Bug 1799258 - Add prereq Colorspaces stuff, including generic gamma->linear LUT inversion approximation. r=gfx-reviewers,bradwerth
Differential Revision: https://phabricator.services.mozilla.com/D163664
2023-01-23 22:13:16 +00:00
Kelsey Gilbert 4d0c2f5f61 Bug 1799258 - [qcms] Add query for profile data and lut tables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D163663
2023-01-23 22:13:16 +00:00
Razvan Cojocaru 82845f5773 No bug - Remove superfluous semicolon. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D167587
2023-01-23 19:56:01 +00:00
Mark Banner 60852a03b7 Bug 1811797 - Make Troubleshoot.snapshot an async function, rather than using a callback. r=mossop,perftest-reviewers,sparky
Differential Revision: https://phabricator.services.mozilla.com/D167516
2023-01-23 18:09:02 +00:00
Hiroyuki Ikezoe c5eeb9f4fc Bug 1811403 - Respect "apz.disable_for_scroll_linked_effects" pref whether to set HasScrollLinkedEffect flag. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D167337
2023-01-22 21:09:40 +00:00
Chris H-C af3328afcc Bug 1765921 - Rename `fog` crate to `firefox-on-glean` r=TravisLong,supply-chain-reviewers
This matches the empty-and-published-to-crates.io crate, which should allow for
easier optional dependencies in Rust.

Differential Revision: https://phabricator.services.mozilla.com/D165317
2023-01-20 23:14:03 +00:00
Emilio Cobos Álvarez 90e1d8d837 Bug 1809126 - Remove moz-fonttable protocol. r=jfkthame,necko-reviewers
We only use it to generate a dummy URI for SVG-in-Opentype documents. We
don't really need the URIs to be unique or anything in practice.

I noticed this code while looking at the load flags set up for
bug 1809006.

Differential Revision: https://phabricator.services.mozilla.com/D166291
2023-01-20 18:41:16 +00:00
Jonathan Kew f17f8c8ec4 Bug 1811471 - Merge Hiragana and Katakana scripts for text-shaping purposes, to allow kerning across both alphabets. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D167402
2023-01-20 18:26:29 +00:00
Nicolas Silva db956b65c9 Bug 1810495 - Update wgpu to fac4731288117d951d0944d96cf0b00fa006dd6c. r=webgpu-reviewers,teoxoy
Differential Revision: https://phabricator.services.mozilla.com/D166916
2023-01-20 15:39:41 +00:00
Jan-Erik Rediger 012cbbbda2 Bug 1808586 - Upgrade to Glean v52.0.1 r=chutten,supply-chain-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D167247
2023-01-20 12:58:07 +00:00
Butkovits Atila d9180d2428 Backed out 2 changesets (bug 1811218, bug 1808586) for causing build bustages complaining about Cargo and Glean. CLOSED TREE
Backed out changeset 94f6ca4f4103 (bug 1808586)
Backed out changeset 046b4eafd1b3 (bug 1811218)
2023-01-20 12:57:03 +02:00
Jan-Erik Rediger 2fab98bc22 Bug 1808586 - Upgrade to Glean v52.0.1 r=chutten,supply-chain-reviewers
Depends on D167245

Differential Revision: https://phabricator.services.mozilla.com/D167247
2023-01-20 09:28:30 +00:00
Butkovits Atila 6970213e8e Backed out 2 changesets (bug 1811218, bug 1808586) for causing build bustages. CLOSED TREE
Backed out changeset 076e5dd4ec05 (bug 1808586)
Backed out changeset 46676e77e0b8 (bug 1811218)
2023-01-20 12:15:42 +02:00
Jan-Erik Rediger f394193fc2 Bug 1808586 - Upgrade to Glean v52.0.1 r=chutten,supply-chain-reviewers
Depends on D167245

Differential Revision: https://phabricator.services.mozilla.com/D167247
2023-01-20 09:28:30 +00:00
Erich Gubler df566e3d3d Bug 1753349 (9/9): chore: update ANGLE to our fork's `firefox-111` branch r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D162655
2023-01-19 21:41:15 +00:00
Erich Gubler c49956c1f2 Bug 1753349 (8/9): build(gfx): update ANGLE vendoring config. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D164254
2023-01-19 21:41:15 +00:00
Hiroyuki Ikezoe 73dd945ce0 Bug 1810819 - Add NativePanHandlerForHeadless. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D167111
2023-01-19 21:07:44 +00:00
Marian-Vasile Laza ea060cc229 Backed out changeset b4dba80235dc (bug 1765921) for causing WR bustages. 2023-01-19 22:17:14 +02:00