Skip to content

Commit ce7c123

Browse files
committed
Simplifed patch
1 parent d1647c2 commit ce7c123

1 file changed

Lines changed: 12 additions & 17 deletions

File tree

patches/ext_SkTypeface_win_dw.patch

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,18 @@
11
diff --git a/src/ports/SkTypeface_win_dw.cpp b/src/ports/SkTypeface_win_dw.cpp
2-
index b9d69ab303204b68f97a1cae3bafbb1f77f0ac67..e434abba3b0c75dff4a48600e34c91ac6e9d766a 100644
2+
index b9d69ab303..36e8422f4f 100644
33
--- a/src/ports/SkTypeface_win_dw.cpp
44
+++ b/src/ports/SkTypeface_win_dw.cpp
5-
@@ -543,6 +543,12 @@ std::unique_ptr<SkScalerContext> DWriteFontTypeface::onCreateScalerContext(
5+
@@ -543,6 +543,18 @@ std::unique_ptr<SkScalerContext> DWriteFontTypeface::onCreateScalerContext(
66
sk_ref_sp(const_cast<DWriteFontTypeface*>(this)), effects, desc);
77
}
88

9-
+static std::atomic<int> gUseSystemRenderingParams{-1};
9+
+static std::atomic<int> gUseSystemRenderingParams{
10+
+#if defined(SK_FONT_HOST_USE_SYSTEM_SETTINGS)
11+
+ 1
12+
+#else
13+
+ 0
14+
+#endif
15+
+};
1016
+
1117
+extern "C" void DWriteTypeface_UseSystemRenderingParams(int value) {
1218
+ gUseSystemRenderingParams.store(value);
@@ -15,14 +21,11 @@ index b9d69ab303204b68f97a1cae3bafbb1f77f0ac67..e434abba3b0c75dff4a48600e34c91ac
1521
void DWriteFontTypeface::onFilterRec(SkScalerContextRec* rec) const {
1622
if (rec->fFlags & SkScalerContext::kLCD_Vertical_Flag) {
1723
rec->fMaskFormat = SkMask::kA8_Format;
18-
@@ -561,19 +567,31 @@ void DWriteFontTypeface::onFilterRec(SkScalerContextRec* rec) const {
24+
@@ -561,19 +573,19 @@ void DWriteFontTypeface::onFilterRec(SkScalerContextRec* rec) const {
1925
}
2026
rec->setHinting(h);
2127

22-
+ int setting = gUseSystemRenderingParams.load();
23-
+ bool useSystem;
24-
+ if (setting == -1) {
25-
#if defined(SK_FONT_HOST_USE_SYSTEM_SETTINGS)
28+
-#if defined(SK_FONT_HOST_USE_SYSTEM_SETTINGS)
2629
- IDWriteFactory* factory = sk_get_dwrite_factory();
2730
- if (factory != nullptr) {
2831
- SkTScopedComPtr<IDWriteRenderingParams> defaultRenderingParams;
@@ -32,15 +35,7 @@ index b9d69ab303204b68f97a1cae3bafbb1f77f0ac67..e434abba3b0c75dff4a48600e34c91ac
3235
- rec->setPaintGamma(gamma);
3336
-
3437
- rec->setContrast(defaultRenderingParams->GetEnhancedContrast());
35-
+ useSystem = true;
36-
+#else
37-
+ useSystem = false;
38-
+#endif
39-
+ } else {
40-
+ useSystem = (setting == 1);
41-
+ }
42-
+
43-
+ if (useSystem) {
38+
+ if (gUseSystemRenderingParams.load() == 1) {
4439
+ IDWriteFactory* factory = sk_get_dwrite_factory();
4540
+ if (factory != nullptr) {
4641
+ SkTScopedComPtr<IDWriteRenderingParams> defaultRenderingParams;

0 commit comments

Comments
 (0)