gecko-dev/gfx/thebes
Robert Mader f691c9ecf9 Bug 1718569 - Implement custom FBO management, r=jgilbert,gfx-reviewers
Instead of using the Wayland EGL platform. The later is very convenient
but has several limitations. Managing FBOs allows to make our code more
similar to that of MacOS as well as the Wayland software backend.

Most importantly, it will allow us to cleanly implement partial damage
by giving us direct acces to previously submitted buffers, allowing us
to blit back from them, similar like in
`NativeLayerCA::HandlePartialUpdate`.
There are several other fields where more control over buffers will
come in handy, too many to describe them here in detail.

Note: we still use individual buffer pools for each tile. However, this
change brings everything into place to allow us to change to a more
`SurfacePoolCA`-style shared pool. That will reduce GPU-memory usage.

Includes some minor cleanups here and there.

Depends on D119013

Differential Revision: https://phabricator.services.mozilla.com/D118925
2021-07-13 13:44:12 +00:00
..
CJKCompatSVS.cpp
D3D11Checks.cpp Bug 1686616 - make GfxInfo use Components instead of Services. r=kmag 2021-02-18 13:26:29 +00:00
D3D11Checks.h
DeviceManagerDx.cpp Bug 1541472 - Remove Advanced Layers, since it's disabled everywhere now. r=jrmuizel 2021-02-10 02:04:41 +00:00
DeviceManagerDx.h Bug 1541472 - Remove Advanced Layers, since it's disabled everywhere now. r=jrmuizel 2021-02-10 02:04:41 +00:00
DisplayConfigWindows.cpp Bug 1665764 - Expose in about:support hardware stretching support and scaling status. r=kats 2020-09-18 15:56:12 +00:00
DisplayConfigWindows.h Bug 1665764 - Expose in about:support hardware stretching support and scaling status. r=kats 2020-09-18 15:56:12 +00:00
DrawMode.h
PrintTarget.cpp Bug 739096 - Remove support for CGLayer-backed cairo quartz surface. r=jrmuizel 2021-04-29 14:33:29 +00:00
PrintTarget.h Bug 1669740 - Cleanup some WrapAndRecord usage. r=aosmond 2020-10-21 15:09:22 +00:00
PrintTargetCG.h
PrintTargetCG.mm Bug 1692391 - Rename NS_OBJC_BEGIN/END_TRY_ABORT_BLOCK macros, replacing ABORT with IGNORE. These macros just log the exception and move on, without aborting. r=haik 2021-02-16 22:55:21 +00:00
PrintTargetPDF.cpp Bug 1615921 - Skip writing to pdf file if shutting down r=jwatt 2020-02-24 17:54:09 +00:00
PrintTargetPDF.h
PrintTargetPS.cpp Bug 1609996 - Remove mozilla::Swap in favor of std::swap. r=froydnj 2020-01-20 16:17:06 +00:00
PrintTargetPS.h
PrintTargetRecording.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=andi 2020-11-04 18:46:00 +00:00
PrintTargetRecording.h
PrintTargetSkPDF.cpp Bug 1611415 - Prefer using std::move over forget. r=froydnj 2020-02-13 14:38:48 +00:00
PrintTargetSkPDF.h Bug 1591996 - miscellaneous Gecko fixes for Skia m79 update. r=jrmuizel 2019-10-28 21:42:48 +00:00
PrintTargetThebes.cpp Bug 1669740 - Cleanup some WrapAndRecord usage. r=aosmond 2020-10-21 15:09:22 +00:00
PrintTargetThebes.h
PrintTargetWindows.cpp
PrintTargetWindows.h
SharedFontList-impl.h Bug 1664151 - Drop FC_CHARSET element from fontconfig patterns for TrueType/OpenType fonts, as we will read the cmap directly anyhow. r=lsalzman 2021-06-10 16:13:39 +00:00
SharedFontList.cpp Bug 1714282 - Handle bitmap font sizes in the shared font list on Linux. r=emilio 2021-06-06 20:30:14 +00:00
SharedFontList.h Bug 1714282 - Handle bitmap font sizes in the shared font list on Linux. r=emilio 2021-06-06 20:30:14 +00:00
SkMemoryReporter.cpp Bug 1519636 - Ride along: Move to the unix CR type r=Ehsan 2019-07-16 07:34:18 +00:00
SkMemoryReporter.h Bug 1613985 - Use default for equivalent-to-default constructors/destructors in gfx. r=jrmuizel 2020-03-04 15:39:20 +00:00
SoftwareVsyncSource.cpp Bug 1653737 - Add output time to VsyncEvent. r=nical 2020-07-18 05:34:35 +00:00
SoftwareVsyncSource.h Bug 1653737 - Add output time to VsyncEvent. r=nical 2020-07-18 05:34:35 +00:00
StandardFonts-linux.inc Bug 1619350 - patch 3 - Add lists of base system fonts for latest Ubuntu and Fedora versions. r=jwatt 2020-04-02 23:12:56 +00:00
StandardFonts-macos.inc Bug 1619350 - patch 2 - Add lists of standard Mac and Windows fonts, and set font-family visibility attributes accordingly in those platform font lists. r=jwatt 2020-04-02 01:38:21 +00:00
StandardFonts-win10.inc Bug 1654501 - Fix incorrectly sorted entries in the lists of standard Windows fonts. r=jwatt 2020-07-26 18:10:04 +00:00
ThebesRLBox.h Bug 1576052 - Use configuration/macro definition to selectively enable wasm sandbox for graphite r=froydnj 2019-12-19 22:17:13 +00:00
ThebesRLBoxTypes.h Bug 1576052 - Use configuration/macro definition to selectively enable wasm sandbox for graphite r=froydnj 2019-12-19 22:17:13 +00:00
VsyncSource.cpp Bug 1688086. Only dispatch a runnable to the main thread to notify it of vsync if there are main thread observers for it. r=mstange 2021-01-22 17:16:47 +00:00
VsyncSource.h Bug 1688086. Only dispatch a runnable to the main thread to notify it of vsync if there are main thread observers for it. r=mstange 2021-01-22 17:16:47 +00:00
XlibDisplay.cpp Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert 2021-07-06 07:42:42 +00:00
XlibDisplay.h Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert 2021-07-06 07:42:42 +00:00
cairo-xlib-utils.h
d3dkmtQueryStatistics.h
genLanguageTagList.pl
gencjkcisvs.py Bug 1654103: Standardize on Black for Python code in `mozilla-central`. 2020-10-26 18:34:53 +00:00
gfx2DGlue.h Bug 1678062 - Remove unnecessary includes. r=andi 2020-11-23 16:12:02 +00:00
gfxASurface.cpp Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi 2020-09-23 15:17:15 +00:00
gfxASurface.h
gfxAlphaRecovery.cpp
gfxAlphaRecovery.h
gfxAlphaRecoverySSE2.cpp Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
gfxAndroidPlatform.cpp Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxAndroidPlatform.h Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxBaseSharedMemorySurface.cpp
gfxBaseSharedMemorySurface.h
gfxBlur.cpp Bug 1691913 - Rename nsBaseHashtable::Put to InsertOrUpdate. r=xpcom-reviewers,necko-reviewers,jgilbert,dragana,nika 2021-02-26 09:11:46 +00:00
gfxBlur.h Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
gfxColor.h Bug 1594425 - Part 2. Switch image decoders to use SurfaceFormat::OS_RGBA. r=tnikkel 2019-11-12 18:22:33 +00:00
gfxContext.cpp Bug 1691589 - Reduce reliance on GeckoProfiler.h when only labels (and maybe markers) are needed - r=necko-reviewers,geckoview-reviewers,sg,agi,florian 2021-02-16 04:44:19 +00:00
gfxContext.h Bug 1626570 - Improve handling of copying arrays in gfx/thebes. r=jrmuizel 2020-05-05 10:56:14 +00:00
gfxCoreTextShaper.cpp Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxCoreTextShaper.h Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxDWriteCommon.cpp
gfxDWriteCommon.h Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ r=Ehsan 2019-12-06 09:16:44 +00:00
gfxDWriteFontList.cpp Bug 1716433 - Create a pref to determine whether Windows font substitutes are applied always, or only as fallback for unavailable fonts. r=lsalzman 2021-06-15 16:44:24 +00:00
gfxDWriteFontList.h Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxDWriteFonts.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxDWriteFonts.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
gfxDrawable.cpp
gfxDrawable.h
gfxEnv.h Bug 1631039 - Remove WebRender's recording infrastructre. r=gw 2020-04-22 08:49:38 +00:00
gfxFT2FontBase.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxFT2FontBase.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
gfxFT2FontList.cpp Bug 1708285 - Pass default font settings from parent to child processes. r=jfkthame 2021-05-01 20:00:31 +00:00
gfxFT2FontList.h Bug 1708285 - Pass default font settings from parent to child processes. r=jfkthame 2021-05-01 20:00:31 +00:00
gfxFT2Fonts.cpp Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxFT2Fonts.h Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxFT2Utils.cpp
gfxFT2Utils.h Bug 1547063 - Use SharedFTFace locking instead of Cairo locking. r=jfkthame 2019-09-16 17:12:38 +00:00
gfxFailure.h
gfxFcPlatformFontList.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxFcPlatformFontList.h Bug 1711479 - Support various metrics (not only ex-height) as the basis for font-size-adjust calculations in the gfx font implementations. r=layout-reviewers,emilio 2021-06-14 12:32:37 +00:00
gfxFont.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxFont.h Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxFontConstants.h
gfxFontEntry.cpp Bug 1700534 - Coalesce RLBox wasmboxed libraries. r=firefox-build-system-reviewers,shravanrn,bholley,andi,mhentges 2021-06-22 05:31:33 +00:00
gfxFontEntry.h Bug 1706077 - Move setting of 'opsz' axis from nsFont into gfxFont initialization as it depends on data from both the style and the specific gfxFontEntry. r=layout-reviewers,emilio 2021-04-20 09:59:20 +00:00
gfxFontFeatures.cpp Bug 1653335 - Remove uses of MakeSpan in return statements. r=froydnj 2020-08-07 07:42:50 +00:00
gfxFontFeatures.h Bug 1660470 - Add missing include directives/forward declarations. r=nika 2020-11-23 16:21:38 +00:00
gfxFontInfoLoader.cpp Bug 1708768 - Make InitFontList safe to call off-main-thread on macOS, and run font-list initialization on a separate thread during startup. r=lsalzman 2021-05-18 11:10:43 +00:00
gfxFontInfoLoader.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
gfxFontMissingGlyphs.cpp Bug 1691309 - Manage image key lifetimes properly for the missing glyph atlas. r=jrmuizel 2021-02-08 00:15:01 +00:00
gfxFontMissingGlyphs.h
gfxFontPrefLangList.h
gfxFontSrcPrincipal.cpp Bug 1647732 - isolate font cache; r=baku,jfkthame,necko-reviewers 2020-07-10 10:28:40 +00:00
gfxFontSrcPrincipal.h Bug 1678062 - Remove unnecessary includes. r=andi 2020-11-23 16:12:02 +00:00
gfxFontSrcURI.cpp Bug 1641245 - Make string comparators not virtual. r=froydnj,necko-reviewers,geckoview-reviewers,jgilbert,agi,valentin 2020-05-27 18:11:12 +00:00
gfxFontSrcURI.h Bug 1683551 - Make `gfx` buildable outside of `unified-build` environment. r=sg,jgilbert 2021-01-04 14:20:17 +00:00
gfxFontUtils.cpp Bug 1371386 - Take account of requirements for emoji-style or text-style presentation during font selection & fallback. r=m_kato 2020-08-26 09:31:58 +00:00
gfxFontUtils.h Bug 1703534 - Avoid risk of misaligned access in gfxSparseBitSet::Union(const SharedBitSet&) due to unaligned Block records. r=lsalzman 2021-04-07 14:15:58 +00:00
gfxFontVariations.h Bug 1626570 - Improve handling of copying arrays in gfx/thebes. r=jrmuizel 2020-05-05 10:56:14 +00:00
gfxGDIFont.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxGDIFont.h Bug 1634281 - Use nsTHashMap instead of nsDataHashtable. r=xpcom-reviewers,necko-reviewers,jgilbert,nika,valentin 2021-03-10 10:47:47 +00:00
gfxGDIFontList.cpp Bug 1696162 - Add telemetry to record the startup-time cost of activating bundled fonts. r=lsalzman 2021-03-08 16:23:39 +00:00
gfxGDIFontList.h Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxGdkNativeRenderer.cpp
gfxGdkNativeRenderer.h
gfxGlyphExtents.cpp Bug 1547063 - Use FreeType metrics directly instead of querying Cairo. r=jfkthame 2019-09-16 17:15:10 +00:00
gfxGlyphExtents.h
gfxGradientCache.cpp Bug 1697344 p1: Make GradientCache thread safe. r=jrmuizel 2021-03-29 12:12:20 +00:00
gfxGradientCache.h Bug 1697344 p1: Make GradientCache thread safe. r=jrmuizel 2021-03-29 12:12:20 +00:00
gfxGraphiteShaper.cpp Bug 708901 - Migrate to nsTHashSet in gfx/thebes. r=jfkthame,jrmuizel 2021-03-23 10:36:36 +00:00
gfxGraphiteShaper.h Bug 708901 - Migrate to nsTHashSet in gfx/thebes. r=jfkthame,jrmuizel 2021-03-23 10:36:36 +00:00
gfxHarfBuzzShaper.cpp Bug 1716029 - Shape numeric runs in Arabic or Hebrew with RTL buffer directionality, so that OpenType rules will process glyphs in logical order. r=lsalzman 2021-06-17 19:11:22 +00:00
gfxHarfBuzzShaper.h Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxImageSurface.cpp
gfxImageSurface.h
gfxLanguageTagList.cpp
gfxLineSegment.h Bug 1324591 - Jank if we are trying to composite area which is outside of the the partial prerender rect on non WebRender. r=botond,jrmuizel 2020-07-05 11:44:18 +00:00
gfxMacFont.cpp Bug 1716841 - Update font-size-adjust keywords to match CSSWG resolution in csswg-drafts/#6288. r=emilio 2021-07-07 11:58:40 +00:00
gfxMacFont.h Bug 1674340 - Separate out language from gfxFontStyle and pass it separately to shaping processes that need it. r=lsalzman 2020-11-13 13:15:39 +00:00
gfxMacPlatformFontList.h Bug 1708768 - Make InitFontList safe to call off-main-thread on macOS, and run font-list initialization on a separate thread during startup. r=lsalzman 2021-05-18 11:10:43 +00:00
gfxMacPlatformFontList.mm Bug 1708768 - Make InitFontList safe to call off-main-thread on macOS, and run font-list initialization on a separate thread during startup. r=lsalzman 2021-05-18 11:10:43 +00:00
gfxMathTable.cpp
gfxMathTable.h
gfxMatrix.h
gfxOTSUtils.h Bug 1640401 - allow unknown font types to sanitize for WR. r=jrmuizel 2020-05-23 23:56:41 +00:00
gfxPattern.cpp Bug 1618345 - Enforce proper color management by splitting gfx::Color into sRGBColor and DeviceColor types. r=jrmuizel 2020-03-09 14:16:17 +00:00
gfxPattern.h Bug 1519636 - Reformat recent changes to the Google coding style r=jgilbert 2020-04-05 13:34:58 +00:00
gfxPlatform.cpp Bug 1716045 - Unify font-family storage. r=mats,jfkthame 2021-06-18 19:35:50 +00:00
gfxPlatform.h Bug 1716045 - Unify font-family storage. r=mats,jfkthame 2021-06-18 19:35:50 +00:00
gfxPlatformFontList.cpp Bug 1714762 - patch 1 - Don't use asynchronous font fallback in the parent process, to avoid glitches in UI rendering. r=lsalzman 2021-06-14 17:09:21 +00:00
gfxPlatformFontList.h Bug 1716045 - Unify font-family storage. r=mats,jfkthame 2021-06-18 19:35:50 +00:00
gfxPlatformGtk.cpp Bug 1718569 - Implement custom FBO management, r=jgilbert,gfx-reviewers 2021-07-13 13:44:12 +00:00
gfxPlatformGtk.h Bug 1710958 [Linux] Delay DMABuf initialization when it's really needed, r=jhorak 2021-05-25 10:21:56 +00:00
gfxPlatformMac.cpp Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxPlatformMac.h Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxPoint.h
gfxQuad.h
gfxQuartzNativeDrawing.cpp
gfxQuartzNativeDrawing.h
gfxQuartzSurface.cpp Bug 739096 - Remove support for CGLayer-backed cairo quartz surface. r=jrmuizel 2021-04-29 14:33:29 +00:00
gfxQuartzSurface.h Bug 739096 - Merge some Mozilla extensions to cairo-quartz-surface. r=jrmuizel 2021-04-29 14:33:36 +00:00
gfxQuaternion.h
gfxRect.h
gfxSVGGlyphs.cpp Bug 1184468 - Use nsBaseHashtable::Values. r=xpcom-reviewers,nika 2021-03-24 17:56:49 +00:00
gfxSVGGlyphs.h Bug 1656117 - Reduce include dependencies on nsRefreshDriver.h. r=mstange 2020-08-04 21:17:50 +00:00
gfxScriptItemizer.cpp Bug 1638478 - Try to resolve Script=Common runs to a specific script for shaping purposes based on the ScriptExtensions property. r=jrmuizel 2020-05-19 14:30:20 +00:00
gfxScriptItemizer.h
gfxSharedImageSurface.h
gfxSkipChars.cpp
gfxSkipChars.h Bug 1654992 - Use std::move instead of SwapElements where possible. r=froydnj 2020-08-04 11:27:07 +00:00
gfxTextRun.cpp Bug 1717595 - Ensure we check the fontgroup's validity before using it to build a textrun or otherwise access its cached font instances. r=lsalzman 2021-06-25 10:14:17 +00:00
gfxTextRun.h Bug 1561868 - Give the RebuildFontList message a raised priority, so that it is processed ahead of Vsync. r=lsalzman 2021-06-25 20:12:14 +00:00
gfxTypes.h Bug 1671518 - Improve hardware stretching support to check all monitors and configurations. r=jrmuizel 2020-10-22 19:53:23 +00:00
gfxUserFontSet.cpp Bug 1703614 - Check for out-of-range source index when logging a font-load failure. r=emilio 2021-04-07 20:26:02 +00:00
gfxUserFontSet.h Bug 1694123 - Ensure user fonts with src:local() are refreshed after a font-list update, even if the local font lookup previously failed. r=jwatt 2021-04-06 16:23:17 +00:00
gfxUtils.cpp Bug 1707814 - Add pointer size check to RemoveShaderCacheFromDiskIfNecessary() r=jrmuizel,gfx-reviewers 2021-04-27 22:04:25 +00:00
gfxUtils.h Bug 1678487 - Make CMSMode an enum class. r=aosmond 2021-02-13 03:59:23 +00:00
gfxWindowsNativeDrawing.cpp Bug 1676299 - Removed the xMajor parameter from BaseMatrix::ScaleFactors() r=botond 2020-11-18 18:53:01 +00:00
gfxWindowsNativeDrawing.h Bug 1519636 - Automatically reformat recent changes using clang-format r=Ehsan 2020-01-21 09:51:27 +00:00
gfxWindowsPlatform.cpp Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxWindowsPlatform.h Bug 1708768 - Preliminary cleanup of gfxPlatformFontList creation/initialization code; no functional change. r=lsalzman 2021-05-18 11:10:42 +00:00
gfxWindowsSurface.cpp Bug 739096 - Merge some Mozilla additions for DirectWrite support. r=jrmuizel 2021-04-29 14:33:36 +00:00
gfxWindowsSurface.h Bug 739096 - Merge some Mozilla additions for DirectWrite support. r=jrmuizel 2021-04-29 14:33:36 +00:00
gfxXlibNativeRenderer.cpp
gfxXlibNativeRenderer.h
gfxXlibSurface.cpp Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert 2021-07-06 07:42:42 +00:00
gfxXlibSurface.h Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert 2021-07-06 07:42:42 +00:00
moz.build Bug 1635451 - Allow GLX to work in headless content processes. r=jgilbert 2021-07-06 07:42:42 +00:00
nsIFontLoadCompleteCallback.idl Bug 1490792 - Part 4: Perform OpenType sanitization OMT. r=jfkthame 2019-06-06 19:08:52 +00:00