Commit graph

174 commits

Author SHA1 Message Date
Moonchild
753251e54c Issue #1053 - Part 3a: Remove Android conditionals from /gfx 2021-01-01 10:01:09 +08:00
Brian Smith
e4030ad075 Issue #1690 - Part 1: Fix MacOS version detection above 10.15.
Changes based on Mozilla bug 1616404 but supporting back to 10.7.
2020-12-02 09:57:28 +08:00
Moonchild
3cac4d852d [gfx][Skia] Hold mutex while accessing shared SkImage data. 2020-11-19 21:11:56 +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
538b420319 Issue #1656 - Part 4: Manual cleanup 2020-09-25 22:04:20 +08:00
Moonchild
30df895eb2 Issue #1656 - Part 3: Nuke more vim config lines in the tree.
Another S&R run with some smarter matching.
2020-09-25 22:04:17 +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
5f85ec0cd8 Improve dll loading on Windows. 2020-07-31 08:08:08 +08:00
Moonchild
a13f638d23 [printing] Fix build bustage with --disable-printing 2020-05-23 06:57:02 +08:00
adeshkp
51c19f2e77 Issue #80 - Include gfx/Logging.h in NativeFontResourceMac.cpp 2020-05-23 06:51:13 +08:00
Gaming4JC
099b822652 Issue #80 - Include gfxEnv.h in gfx/gl/GLLibraryEGL.cpp 2020-05-23 06:50:48 +08:00
Moonchild
f51dd277a3 Issue #80 - Fix up gfx/ipc and gfx/src for Linux.
This removes an unused Telemetry enum
2020-05-23 06:50:42 +08:00
Moonchild
b8d9e7b8c0 Issue #80- De-unify gfx/layers
Excludes layers/ipc/CompositorBridgeParent and CrossProcessCompositorBridgeParent
because the latter purposely uses functions implemented in the former.
See also code comment in CrossProcessCompositorBridgeParent.cpp

Note: likely dead code for us anyway; likely not worth investing in to solve.
2020-05-23 06:50:13 +08:00
Moonchild
cdd925c155 Issue #80 - De-unify gfx/ycbcr 2020-05-23 06:50:10 +08:00
Moonchild
aec749447a Issue #80 - De-unify gfx/src 2020-05-23 06:50:04 +08:00
Moonchild
b22c360506 Issue #80 - De-unify gfx/skia and stop using dangerous opts 2020-05-23 06:48:44 +08:00
Moonchild
5a3a186912 Issue #80 - De-unify gfx/ots 2020-05-23 06:48:41 +08:00
Moonchild
8458063b23 Issue #80 - De-unify gfx/ipc 2020-05-23 06:48:37 +08:00
Moonchild
5f9275bc92 Issue #80 - De-unify gfx/harfbuzz 2020-05-23 06:48:33 +08:00
Moonchild
6678c91396 Issue # 80 - Fix up gfx/2d/DataSurfaceHelpers
De-unified build requires <string.h> instead of <cstring> to
prevent stdlib confusion.
2020-05-23 06:48:31 +08:00
Moonchild
3bd4d91630 Issue #80 - de-unify and fix up gfx/graphite2
With de-unified building we have to re-apply the fix-up
for <cstdio>, and additionally the same for <cstring>
to prevent the compiler picking the wrong versions of
standard functions.
2020-05-23 06:48:28 +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
d25a16be88 Issue #80 - De-unify gfx/gl 2020-05-23 06:48:15 +08:00
Moonchild
67131bce6e Issue #80 - De-unify gfx/config 2020-05-23 06:48:12 +08:00
Moonchild
c9c0bd68dd Issue #80 - De-unify gfx/cairo 2020-05-23 06:48:09 +08:00
Moonchild
18ae7ae02c Issue #80 - De-unify gfx/2d 2020-05-23 06:48:06 +08:00
Moonchild
94ae8488f4 Issue #80 - De-unify gfx/thebes 2020-05-23 06:48:03 +08:00
Moonchild
b2a716b2f1 Issue #457 - Silence some superfluous compiler warnings in cairo 2020-05-16 06:49:22 +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
62a46687d6 [gfx] Put Skia-specific CTOR init behind Skia-conditional. 2020-02-22 07:05:25 +08:00
sotaro
088c5a329d [Layers] Clear WrappingTextureSourceYCbCrBasic::mTexture correctly 2020-02-14 22:46:03 +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
305537e8d6 Issue #1354 - Fix typo 2020-01-24 09:29:06 +08:00
wolfbeast
9d76eb5791 Issue #1354 - Clear the current context when MakeCurrent() fails. 2020-01-24 09:29:04 +08:00
wolfbeast
9f7f1d457f Issue #1354 - Don't allow glsl[130,400] unless we have gpu_shader5
- Teach GLContext about gpu_shader5
- Downgrade shader language version if gpu_shader5 support isn't found.
2020-01-17 09:19:01 +08:00
wolfbeast
5b8610f989 Issue #1354 - Cherry-pick ANGLE update for broken drivers that support
required indexing but not the extensions.
2020-01-17 09:18:59 +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
207b043e1c Issue #1288 - Part 4: Update the OpenType Sanitizer component to 8.0.0 2019-11-15 14:24:00 +08:00
wolfbeast
82d70c6ae2 Issue #1274 - Part 5: Misc fixes and version update. 2019-11-08 20:26:28 +08:00
wolfbeast
fd38014a63 Issue #1274 - Part 3: Update libpixman licensing 2019-11-08 20:25:17 +08:00
wolfbeast
bc89f33a85 Issue #1274 - Part 1: Adopt the cairo version as our own.
- Move header licensing from tri-license to MPL 2.0. MPL-compatible
  other licensing has been retained where originally present.
- Remove individual superseded licensing terms.
- Remove patches, outdated readmes & incomplete patch summaries.
- Remove incomplete cairo release notes (only went up to 1.6.4 anyway).
- Rewrite COPYING to indicate the current state of the library in tree.
2019-11-08 20:24:51 +08:00
Markus Stange
cb6b60ce61 Correctly return zero vertices if clipping plane 0 or 2 clip away the
entire polygon.

This fixes a bug that was introduced three years ago in BZ bug 1268854.
What happened was that the final pass over the polygon assumed that the
current polygon was living in plane[0]. But due to the double buffering,
the "current" polygon alternates between plane[0] and plane[1].
The bug had also introduced an early exit so that we could hit the final
pass at a time where the current, now empty, polygon was in plane[1]. So
we would incorrectly treat all 32 points in plane[0] as part of the
final polygon.

This bug was responsible for intermittently unreasonable numbers in
CompositorOGL's fill rate / overdraw overlay.

This fixes a regression caused by the fix for CVE-2016-5252.
2019-09-06 23:49:19 +08:00
wolfbeast
d6ceb39e25 Revert "Correctly return zero vertices if clipping plane 0 or 2 clip away the"
This reverts commit 09a8b2f19689b679b1268a3004ec5e3f37b9732a.
2019-09-06 23:49:17 +08:00
wolfbeast
de215d77fc Correctly return zero vertices if clipping plane 0 or 2 clip away the
entire polygon.

This fixes a regression caused by the fix for CVE-2016-5252
2019-09-06 23:48:46 +08:00