          nil]);
    }
    return validAttributesForMarkedText_.get();
-@@ -3436,7 +3458,12 @@ extern NSString *NSTextInputReplacementRangeAttributeName;
+@@ -3433,6 +3455,10 @@ extern NSString *NSTextInputReplacementRangeAttributeName;
  }
  
  - (BOOL)isOpaque {
--  return opaque_;
 +  bool wantsTransparent = ui::GpuSwitchingManager::UseTransparent() ||
 +                          (self.window && ![self.window isOpaque]);
 +  if (wantsTransparent)
 +    return NO;
-+  else
-+    return opaque_;
+   return opaque_;
  }
  
- // "-webkit-app-region: drag | no-drag" is implemented on Mac by excluding

 
   // Command key combinations are sent via performKeyEquivalent rather than
   // keyDown:. We just forward this on and if WebCore doesn't want to handle
@@ -2740,6 +2755,9 @@ void RenderWidgetHostViewMac::OnDisplayMetricsChanged(
 // move) for the given event. Customize here to be more selective about which
 // key presses to autohide on.
 + (BOOL)shouldAutohideCursorForEvent:(NSEvent*)event {

 // These are not documented, so use only after checking -respondsToSelector:.
 @interface NSApplication (UndocumentedSpeechMethods)
 - (void)speakString:(NSString*)string;
@@ -530,9 +536,11 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget,
   // Paint this view host with |background_color_| when there is no content
   // ready to draw.
   background_layer_.reset([[CALayer alloc] init]);
