f1b26c
# HG changeset patch
f1b26c
# Parent  46ea866ca3acb8bb5e1709ceb799b9c94f591dec
f1b26c
Problem description: Tab-titles that are too long to fit into a tab get faded out.
f1b26c
                     On big endian this is broken and instead of fading out, the 
f1b26c
                     tab gets white and the font transparent, leading to an unreadable
f1b26c
                     tab-title
f1b26c
Solution: This is not a real solution, but a hack. The real solution would have been
f1b26c
          to byte-swap the correct buffer, but I could not find it.
f1b26c
          So the next best thing is to deactivate the fading-effect. Now all tab-titles
f1b26c
          are readable, albeit not as pretty to look at as they could be. 
f1b26c
Side-effects: I have not yet found an unwanted side-effect.
f1b26c
f1b26c
diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
f1b26c
--- a/gfx/2d/DrawTargetSkia.cpp	Tue Oct 22 12:27:22 2019 +0200
f1b26c
+++ b/gfx/2d/DrawTargetSkia.cpp	Thu Oct 31 09:11:56 2019 +0100
f1b26c
@@ -1861,6 +1861,14 @@
f1b26c
       SkCanvas::kPreserveLCDText_SaveLayerFlag |
f1b26c
           (aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
f1b26c
 
f1b26c
+#if MOZ_BIG_ENDIAN
f1b26c
+  // Pushing a layer where an aMask is defined produces wrong output.
f1b26c
+  // We _should_ endian swap the data, but I couldn't find a workable way to do so
f1b26c
+  // Therefore I deactivate those layers in the meantime.
f1b26c
+  // The result is: Tab-titles that are longer than the available space should be faded out.
f1b26c
+  //                The fading doesn't work, so we deactivate the fading-effect here.
f1b26c
+  if (!aMask)
f1b26c
+#endif
f1b26c
   mCanvas->saveLayer(saveRec);
f1b26c
 
f1b26c
   SetPermitSubpixelAA(aOpaque);