diff -r 90e3d0cf8567 -r 4c6576f9cf04 mozilla-bmo1504834-part4.patch --- 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