mozilla-bmo1504834-part4.patch
branchfirefox102
changeset 1175 4c6576f9cf04
parent 1174 90e3d0cf8567
child 1176 f871aac89885
--- a/mozilla-bmo1504834-part4.patch	Sun Jun 12 16:05:04 2022 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-# HG changeset patch
-# Parent  883d2c7fec80b9714ccfefa461a02f5b09e3ee09
-Problem description: Tab-titles that are too long to fit into a tab get faded out.
-                     On big endian this is broken and instead of fading out, the
-                     tab gets white and the font transparent, leading to an unreadable
-                     tab-title
-Solution: This is not a real solution, but a hack. The real solution would have been
-          to byte-swap the correct buffer, but I could not find it.
-          So the next best thing is to deactivate the fading-effect. Now all tab-titles
-          are readable, albeit not as pretty to look at as they could be.
-Side-effects: I have not yet found an unwanted side-effect.
-
-diff --git a/gfx/2d/DrawTargetSkia.cpp b/gfx/2d/DrawTargetSkia.cpp
---- a/gfx/2d/DrawTargetSkia.cpp
-+++ b/gfx/2d/DrawTargetSkia.cpp
-@@ -1856,16 +1856,24 @@ void DrawTargetSkia::PushLayerWithBlend(
-   }
- 
-   SkCanvas::SaveLayerRec saveRec(
-       aBounds.IsEmpty() ? nullptr : &bounds, &paint, nullptr, clipImage.get(),
-       &clipMatrix,
-       SkCanvas::kPreserveLCDText_SaveLayerFlag |
-           (aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
- 
-+#if MOZ_BIG_ENDIAN()
-+  // Pushing a layer where an aMask is defined produces wrong output.
-+  // We _should_ endian swap the data, but I couldn't find a workable way to do so
-+  // Therefore I deactivate those layers in the meantime.
-+  // The result is: Tab-titles that are longer than the available space should be faded out.
-+  //                The fading doesn't work, so we deactivate the fading-effect here.
-+  if (!aMask)
-+#endif
-   mCanvas->saveLayer(saveRec);
- 
-   SetPermitSubpixelAA(aOpaque);
- 
- #ifdef MOZ_WIDGET_COCOA
-   CGContextRelease(mCG);
-   mCG = nullptr;
- #endif