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