mozilla-bmo1504834-part4.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Wed, 19 Feb 2020 22:51:20 +0100
branchfirefox73
changeset 1121 004e4b1efb26
parent 1114 572ec48f3fe8
child 1122 a9cd24eaa361
permissions -rw-r--r--
Firefox 73.0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1114
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     1
# HG changeset patch
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     2
# Parent  46ea866ca3acb8bb5e1709ceb799b9c94f591dec
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     3
Problem description: Tab-titles that are too long to fit into a tab get faded out.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     4
                     On big endian this is broken and instead of fading out, the 
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     5
                     tab gets white and the font transparent, leading to an unreadable
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     6
                     tab-title
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     7
Solution: This is not a real solution, but a hack. The real solution would have been
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     8
          to byte-swap the correct buffer, but I could not find it.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     9
          So the next best thing is to deactivate the fading-effect. Now all tab-titles
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    10
          are readable, albeit not as pretty to look at as they could be. 
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    11
Side-effects: I have not yet found an unwanted side-effect.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    12
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    13
diff -r 46ea866ca3ac -r 6ef20eee3f8f gfx/2d/DrawTargetSkia.cpp
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    14
--- a/gfx/2d/DrawTargetSkia.cpp	Tue Oct 22 12:27:22 2019 +0200
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    15
+++ b/gfx/2d/DrawTargetSkia.cpp	Thu Oct 31 09:11:56 2019 +0100
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    16
@@ -1861,6 +1861,14 @@
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    17
       SkCanvas::kPreserveLCDText_SaveLayerFlag |
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    18
           (aCopyBackground ? SkCanvas::kInitWithPrevious_SaveLayerFlag : 0));
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    19
 
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    20
+#if MOZ_BIG_ENDIAN
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    21
+  // Pushing a layer where an aMask is defined produces wrong output.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    22
+  // We _should_ endian swap the data, but I couldn't find a workable way to do so
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    23
+  // Therefore I deactivate those layers in the meantime.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    24
+  // The result is: Tab-titles that are longer than the available space should be faded out.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    25
+  //                The fading doesn't work, so we deactivate the fading-effect here.
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    26
+  if (!aMask)
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    27
+#endif
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    28
   mCanvas->saveLayer(saveRec);
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    29
 
572ec48f3fe8 Firefox 71.0b11
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    30
   SetPermitSubpixelAA(aOpaque);