Commit graph

56 commits

Author SHA1 Message Date
Moonchild
612a363977 Don't use gfxXlibSurface in GLContextGLX. 2022-09-01 10:20:38 +08:00
Job Bautista
275ea2bcf5 Issue #326 - Part 1a: Update character property table generator script for Unicode 9, and adjust APIs to fit the new identifier-type property model
Backported from Mozilla bug 1281448.
2022-06-23 08:54:37 +08:00
Moonchild
afbfbcb1e1 Issue #1914 - Implement white-space: break-spaces
This also simplifies GetCSSWhitespaceToCompressionMode (FFS with the function
names, Mozilla!) to be less fragile.
2022-06-13 09:10:57 +08:00
Brian Smith
d18524ab7e Issue #1905 - Part 2b - Fix crash on startup due to inability to load system font with newer SDKs. Fix based on Mozilla Bug 1672842. 2022-06-06 08:57:19 +08:00
trav90
c782076add Issue #457 - Remove the constructor from gfxShapedText::CompressedGlyph and make it a trivial class
Also provide a couple of convenience "factory" methods to create simple and complex glyph values.
2022-05-31 09:13:12 +08:00
Brian Smith
13fcc4a046 Issue #1829 - Revert "Issue #1751" 2022-05-04 09:40:24 +08:00
Moonchild
8d800b1cb0 Issue #21 - Remove Telemetry plumbing and fix build.
Note this won't give working applications. Requires FE changes and
additional js module changes (next part).
2022-04-28 10:25:48 +08:00
Moonchild
d4eac725fd Issue #1877 - Resolve RELEASE_OR_BETA conditionals. 2022-04-21 21:46:47 +08:00
Moonchild
35164e2860 Issue #3039 - Increase the MAX_FONT_SIZE limit applied in cairo_ft_font to match the gfxFont size limit.
Also adds synching comments just to be sure.
2022-03-22 22:52:59 +08:00
Moonchild
517a6b90a3 Issue #3039 - Extend cairo API with an explicit font_get_hint_metrics function.
This extension allows us to get font hint metrics without having to create and
destroy cairo font options structs. Since this is used in loops, this will
improve performance, especially in documents which have many text segments.
2022-03-22 22:51:39 +08:00
Moonchild
ccf9e5f54b Issue #1751 -- Remove XP_MACOSX conditionals and support files from /gfx 2021-05-05 10:27:35 +08:00
Moonchild
348c6604be Issue #1053 - Remove MOZ_WIDGET_ANDROID and IDB_MOBILE 2021-03-12 08:59:50 +08:00
Moonchild
1feafdc819 Issue #1053 - Remove mobile-specific graphics "optimizations" (=compromises) 2021-03-11 10:13:55 +08:00
Moonchild
6f8365a077 Issue #1665 - Take overflow-wrap into account when calculating min-content intrinsic size. 2020-10-09 20:59:59 +08:00
Moonchild
d5919942ff Issue #1656 - Part 8: Devtools and misc. 2020-09-25 22:06:55 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00
Moonchild
8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Moonchild
a13f638d23 [printing] Fix build bustage with --disable-printing 2020-05-23 06:57:02 +08:00
Moonchild
21dcaa3b59 Issue #80 - Fix deps in gfxFont-Impl.h 2020-05-23 06:48:25 +08:00
Moonchild
9e45084e77 Issue #80 - Split out GetShapedWord template function 2020-05-23 06:48:21 +08:00
Moonchild
cd9055ddce Issue #80 - Fix gfx/thebes Windows conditional 2020-05-23 06:48:18 +08:00
Moonchild
94ae8488f4 Issue #80 - De-unify gfx/thebes 2020-05-23 06:48:03 +08:00
Moonchild
c61d3aa365 Issue #1450 - Remove NVidia 3D-Vision utils
Legacy, unmaintained and untested D3D9 stereo
output behind a hidden pref that nobody ever uses... :P
'nuf said. Resolves #1450
2020-05-09 06:55:14 +08:00
wolfbeast
9896dd74fb Issue #1360 - Enable acceleration by default on all known-good platforms. 2020-01-31 07:42:30 +08:00
wolfbeast
a085fa5430 Issue #1360 - Part 1: Simplify layers acceleration prefs.
This gets rid of platform-dependent hard-coded defaults, but keeps
build-time blocking if there is no GL provider (in which case layers
acceleration almost certainly won't work because it needs a GL
compositor and would likely crash without)

New prefs are
- layers.acceleration.enabled to enable HWA
- layers.acceleration.force to force it enabled (requires .enabled to be
  set as well)

This is the platform part of this issue. The rest will be front-end work
(Preference UI integration and pref migration)
2020-01-31 07:42:02 +08:00
wolfbeast
f24dcfdaa4 Enable layers acceleration by default on GTK platforms.
"Why is this still `blocked by default for platform`.. Everyone on Linux
forces it on anyway once they are aware of it." -- Tobin

Tag #1319
2019-12-21 07:12:55 +08:00
wolfbeast
e266a1fc59 Issue #1288 - Part 5: Pass graphite fonts through OTS.
Since the updated OTS supports proper checking of graphite fonts we no
longer need to rely of harfbuzz for them.
2019-11-15 14:24:02 +08:00
wolfbeast
0343460b3a Issue #438: Add an IsRectilinear helper method to gfxMatrix. 2019-08-17 13:32:12 +08:00
Gaming4JC
838eb9a504 Issue #1101 - Support gzip-compressed SVGs in OpenType+SVG fonts 2019-05-24 21:57:15 +08:00
Mihai Moldovan
75971a4c80 When using XRENDER, create Xlib-based offscreen image surfaces.
Mozilla tried to enable XRENDER support with backends other than Cairo
in 286348:e13aaaaf1962 /
https://hg.mozilla.org/mozilla-central/rev/e13aaaaf1962 - at least until
they decided to completely remove XRENDER support.

The change looked innocent enough, but actually turned out to do exactly
the opposite: it forcefully enabled image offscreen surfaces with GTK2
when it was previously disabled (since
gfxPrefs::UseImageOffscreenSurfaces() will always return true) and, by
extension, disabled the XRENDER-based functionality by creating a
non-Xlib surface.

Interestingly, a previously enabled double buffering check was also
disabled by this, but since the comment for this was diverging with the
code, that behavior just sounds like yet another bug.

Instead of disabling image offscreen surfaces (at least when using the
GTK2 backend), let's force the creation of Xlib-based image surfaces
when XRENDER support is enabled. This will let UXP use the more
common/modern code paths, but also make scrolling much faster again. Too
fast scrolling may induce tearing (if not smoothed), but on the other
hand performs much better in remote computing contexts.

As an added benefit, GTK3-based builds should roughly behave the same
way. Further tests with the GTK3-backend enabled will be required in the
future.
2019-05-17 22:16:26 +08:00
wolfbeast
78d61fd2b1 Issue #187: Remove solaris conditional code. 2019-04-04 20:26:26 +08:00
adeshkp
aea50f182f Telemetry: Remove stubs and related code 2019-02-16 00:24:04 +08:00
wolfbeast
f3de54e835 Clear weak pointers in FT2 font list shutdown observers. 2019-02-16 00:21:22 +08:00
wolfbeast
9b1124ccbd Remove VR hardware support.
This resolves #881
2019-02-16 00:20:27 +08:00
Leorize
f67b2f0342 gfx: add pref for enabling APZ without e10s 2019-02-16 00:14:21 +08:00
wolfbeast
ad782894c8 Remove all C++ telemetry autotimers 2019-02-16 00:12:34 +08:00
wolfbeast
8c8145e620 Remove all C++ Telemetry Accumulation calls.
This creates a number of stubs and leaves some surrounding code that may be irrelevant (eg. recorded time stamps, status variables).
Stub resolution/removal should be a follow-up to this.
2019-02-16 00:12:32 +08:00
wolfbeast
ca5c2ba100 Add pref to control CanOptimizeToImageLayer for large downscale factors.
This resolves #626
2019-02-16 00:08:44 +08:00
janekptacijarabaci
98546534b0 Bug 604026 - Sync event loops in workers should be created only if compatible with the worker shutdown status 2019-02-16 00:07:43 +08:00
wolfbeast
da75ad73e0 Rework gfxFontUtils::MapCharToGlyphFormat4 to be more robust. DiD 2019-02-16 00:07:10 +08:00
Nicolas Silva
1974d5079a Bug 1464039 - Only reject qcms transform with invalid grid size if the transform function uses the grid size. r=Bas a=jcristau 2019-02-16 00:07:04 +08:00
wolfbeast
1a823f5ad6 Remove SPS profiler.
- Conditionals and code blocks. (MOZ_ENABLE_PROFILER_SPS)
- Stub out several profiler-only functions.
2019-02-15 23:58:37 +08:00
wolfbeast
121456f05a Remove gfxCrashReporterUtils.
Tag #20.
2019-02-15 23:58:22 +08:00
wolfbeast
719ac1bc38 Remove MOZ_B2G leftovers and some dead B2G-only components. 2019-02-15 23:57:05 +08:00
wolfbeast
1aa30f609c Font fallback should detect emoji range for color emoji font. 2019-02-15 23:56:49 +08:00
wolfbeast
826e420144 Fix build bustage
Fix nsAtom->nsIAtom and FindAndAddFamilies()
2019-02-15 23:56:47 +08:00
wolfbeast
0022f326a5 Use font.name-list.emoji preference for emoji presenration. 2019-02-15 23:56:44 +08:00
wolfbeast
cbc1d586e1 Issue #325 Part 3: Remove support for using legacy Gecko normalization in gfxHarfBuzzShaper. 2019-02-15 23:55:59 +08:00
trav90
354ae7ebff Fix Twemoji GTK build bustage
Followup to b4e843a.
2019-02-15 23:40:35 +08:00
wolfbeast
2775c84cbf Change embedded emoji font from EmojiOne to Twemoji. 2019-02-15 23:40:02 +08:00