Backed out changeset 8151f4102646 (bug 1249640)
authorSebastian Hengst <archaeopteryx@coole-files.de>
Wed, 24 Feb 2016 19:01:50 +0100
changeset 285347 0c971e22e81cc388eb28cbcb4359ef53ca4cdc0a
parent 285346 bf721b828cce2ee13b55c7cf5654651848ca67f7
child 285348 901a3b7519705faa99cb22e5069692a83b918035
push id72333
push userarchaeopteryx@coole-files.de
push dateWed, 24 Feb 2016 18:02:27 +0000
treeherdermozilla-inbound@80baf2babce0 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
bugs1249640
milestone47.0a1
backs out8151f41026468ff79efe10fc0e0e8bcfe0cf78f8
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Backed out changeset 8151f4102646 (bug 1249640)
gfx/thebes/gfxPlatformMac.cpp
gfx/thebes/gfxPlatformMac.h
widget/cocoa/GfxInfo.mm
--- a/gfx/thebes/gfxPlatformMac.cpp
+++ b/gfx/thebes/gfxPlatformMac.cpp
@@ -422,16 +422,24 @@ gfxPlatformMac::ReadAntiAliasingThreshol
         }
         CFRelease(prefValue);
     }
 
     return threshold;
 }
 
 bool
+gfxPlatformMac::UseAcceleratedSkiaCanvas()
+{
+  // Lion or later is required
+  // Bug 1249659 - Lion has some gfx issues so disabled on lion and earlier
+  return nsCocoaFeatures::OnMountainLionOrLater() && gfxPlatform::UseAcceleratedSkiaCanvas();
+}
+
+bool
 gfxPlatformMac::UseProgressivePaint()
 {
   // Progressive painting requires cross-process mutexes, which don't work so
   // well on OS X 10.6 so we disable there.
   return nsCocoaFeatures::OnLionOrLater() && gfxPlatform::UseProgressivePaint();
 }
 
 bool
--- a/gfx/thebes/gfxPlatformMac.h
+++ b/gfx/thebes/gfxPlatformMac.h
@@ -85,16 +85,18 @@ public:
 
     bool RequiresAcceleratedGLContextForCompositorOGL() const override {
       // On OS X in a VM, unaccelerated CompositorOGL shows black flashes, so we
       // require accelerated GL for CompositorOGL but allow unaccelerated GL for
       // BasicCompositor.
       return true;
     }
 
+    virtual bool UseAcceleratedSkiaCanvas() override;
+
     virtual bool UseProgressivePaint() override;
     virtual already_AddRefed<mozilla::gfx::VsyncSource> CreateHardwareVsyncSource() override;
 
     // lower threshold on font anti-aliasing
     uint32_t GetAntiAliasingThreshold() { return mFontAntiAliasingThreshold; }
 
 protected:
     bool AccelerateLayersByDefault() override;
--- a/widget/cocoa/GfxInfo.mm
+++ b/widget/cocoa/GfxInfo.mm
@@ -343,20 +343,16 @@ GfxInfo::GetFeatureStatusImpl(int32_t aF
       // Blacklist all ATI cards on OSX, except for
       // 0x6760 and 0x9488
       if (mAdapterVendorID.Equals(GfxDriverInfo::GetDeviceVendor(VendorATI), nsCaseInsensitiveStringComparator()) && 
           (mAdapterDeviceID.LowerCaseEqualsLiteral("0x6760") ||
            mAdapterDeviceID.LowerCaseEqualsLiteral("0x9488"))) {
         *aStatus = nsIGfxInfo::FEATURE_STATUS_OK;
         return NS_OK;
       }
-    } else if (aFeature == nsIGfxInfo::FEATURE_CANVAS2D_ACCELERATION) {
-      // See bug 1249659
-      *aStatus = (os > DRIVER_OS_OS_X_10_7) ? nsIGfxInfo::FEATURE_STATUS_OK : nsIGfxInfo::FEATURE_BLOCKED_OS_VERSION;
-      return NS_OK;
     }
   }
 
   return GfxInfoBase::GetFeatureStatusImpl(aFeature, aStatus, aSuggestedDriverVersion, aDriverInfo, &os);
 }
 
 nsresult
 GfxInfo::FindMonitors(JSContext* aCx, JS::HandleObject aOutArray)