summaryrefslogtreecommitdiffstats
path: root/content/shell/renderer/test_runner/WebTestThemeEngineMac.h
diff options
context:
space:
mode:
Diffstat (limited to 'content/shell/renderer/test_runner/WebTestThemeEngineMac.h')
-rw-r--r--content/shell/renderer/test_runner/WebTestThemeEngineMac.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/content/shell/renderer/test_runner/WebTestThemeEngineMac.h b/content/shell/renderer/test_runner/WebTestThemeEngineMac.h
new file mode 100644
index 0000000..f51d128
--- /dev/null
+++ b/content/shell/renderer/test_runner/WebTestThemeEngineMac.h
@@ -0,0 +1,45 @@
+// Copyright 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// This implements the WebThemeEngine API in such a way that we match the Mac
+// port rendering more than usual Chromium path, thus allowing us to share
+// more pixel baselines.
+
+#ifndef WebTestThemeEngineMac_h
+#define WebTestThemeEngineMac_h
+
+#include "third_party/WebKit/public/platform/WebNonCopyable.h"
+#include "third_party/WebKit/public/platform/mac/WebThemeEngine.h"
+
+namespace WebTestRunner {
+
+class WebTestThemeEngineMac : public blink::WebThemeEngine, public blink::WebNonCopyable {
+public:
+ virtual ~WebTestThemeEngineMac() { }
+
+ virtual void paintScrollbarThumb(
+ blink::WebCanvas*,
+ blink::WebThemeEngine::State,
+ blink::WebThemeEngine::Size,
+ const blink::WebRect&,
+ const blink::WebThemeEngine::ScrollbarInfo&);
+
+private:
+ virtual void paintHIThemeScrollbarThumb(
+ blink::WebCanvas*,
+ blink::WebThemeEngine::State,
+ blink::WebThemeEngine::Size,
+ const blink::WebRect&,
+ const blink::WebThemeEngine::ScrollbarInfo&);
+ virtual void paintNSScrollerScrollbarThumb(
+ blink::WebCanvas*,
+ blink::WebThemeEngine::State,
+ blink::WebThemeEngine::Size,
+ const blink::WebRect&,
+ const blink::WebThemeEngine::ScrollbarInfo&);
+};
+
+}
+
+#endif // WebTestThemeEngineMac_h