OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/public/test/layouttest_support.h" | 5 #include "content/public/test/layouttest_support.h" |
6 | 6 |
7 #include "base/callback.h" | 7 #include "base/callback.h" |
8 #include "base/lazy_instance.h" | 8 #include "base/lazy_instance.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "components/test_runner/test_common.h" | 10 #include "components/test_runner/test_common.h" |
(...skipping 19 matching lines...) Expand all Loading... | |
30 #include "third_party/WebKit/public/platform/WebBatteryStatus.h" | 30 #include "third_party/WebKit/public/platform/WebBatteryStatus.h" |
31 #include "third_party/WebKit/public/platform/WebGamepads.h" | 31 #include "third_party/WebKit/public/platform/WebGamepads.h" |
32 #include "third_party/WebKit/public/platform/modules/device_orientation/WebDevic eMotionData.h" | 32 #include "third_party/WebKit/public/platform/modules/device_orientation/WebDevic eMotionData.h" |
33 #include "third_party/WebKit/public/platform/modules/device_orientation/WebDevic eOrientationData.h" | 33 #include "third_party/WebKit/public/platform/modules/device_orientation/WebDevic eOrientationData.h" |
34 #include "third_party/WebKit/public/web/WebHistoryItem.h" | 34 #include "third_party/WebKit/public/web/WebHistoryItem.h" |
35 #include "third_party/WebKit/public/web/WebView.h" | 35 #include "third_party/WebKit/public/web/WebView.h" |
36 | 36 |
37 #if defined(OS_MACOSX) | 37 #if defined(OS_MACOSX) |
38 #include "content/browser/frame_host/popup_menu_helper_mac.h" | 38 #include "content/browser/frame_host/popup_menu_helper_mac.h" |
39 #elif defined(OS_WIN) | 39 #elif defined(OS_WIN) |
40 #include "content/common/font_warmup_win.h" | |
41 #include "third_party/WebKit/public/web/win/WebFontRendering.h" | 40 #include "third_party/WebKit/public/web/win/WebFontRendering.h" |
42 #include "third_party/skia/include/ports/SkFontMgr.h" | 41 #include "third_party/skia/include/ports/SkFontMgr.h" |
42 #include "third_party/skia/include/ports/SkTypeface_win.h" | |
43 #include "ui/gfx/win/direct_write.h" | 43 #include "ui/gfx/win/direct_write.h" |
44 #endif | 44 #endif |
45 | 45 |
46 using blink::WebBatteryStatus; | 46 using blink::WebBatteryStatus; |
47 using blink::WebDeviceMotionData; | 47 using blink::WebDeviceMotionData; |
48 using blink::WebDeviceOrientationData; | 48 using blink::WebDeviceOrientationData; |
49 using blink::WebGamepad; | 49 using blink::WebGamepad; |
50 using blink::WebGamepads; | 50 using blink::WebGamepads; |
51 using blink::WebRect; | 51 using blink::WebRect; |
52 using blink::WebSize; | 52 using blink::WebSize; |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
84 typedef test_runner::WebFrameTestProxy< | 84 typedef test_runner::WebFrameTestProxy< |
85 RenderFrameImpl, const RenderFrameImpl::CreateParams&> FrameProxy; | 85 RenderFrameImpl, const RenderFrameImpl::CreateParams&> FrameProxy; |
86 | 86 |
87 FrameProxy* render_frame_proxy = new FrameProxy(params); | 87 FrameProxy* render_frame_proxy = new FrameProxy(params); |
88 render_frame_proxy->set_base_proxy(GetWebTestProxyBase(params.render_view)); | 88 render_frame_proxy->set_base_proxy(GetWebTestProxyBase(params.render_view)); |
89 | 89 |
90 return render_frame_proxy; | 90 return render_frame_proxy; |
91 } | 91 } |
92 | 92 |
93 #if defined(OS_WIN) | 93 #if defined(OS_WIN) |
94 void DoPreSandboxWarmupForTypeface(SkTypeface* typeface) { | |
ananta
2015/12/09 23:14:28
Why do we need this now?
Ilya Kulshin
2015/12/15 00:05:57
I thought it was needed at some point, but looks l
| |
95 SkPaint paint_warmup; | |
96 paint_warmup.setTypeface(typeface); | |
97 wchar_t glyph = L'S'; | |
98 paint_warmup.measureText(&glyph, sizeof(glyph)); | |
99 } | |
100 | |
94 // DirectWrite only has access to %WINDIR%\Fonts by default. For developer | 101 // DirectWrite only has access to %WINDIR%\Fonts by default. For developer |
95 // side-loading, support kRegisterFontFiles to allow access to additional fonts. | 102 // side-loading, support kRegisterFontFiles to allow access to additional fonts. |
96 void RegisterSideloadedTypefaces(SkFontMgr* fontmgr) { | 103 void RegisterSideloadedTypefaces(SkFontMgr* fontmgr) { |
97 RenderThreadImpl::current()->EnsureWebKitInitialized(); | 104 RenderThreadImpl::current()->EnsureWebKitInitialized(); |
98 std::vector<std::string> files = switches::GetSideloadFontFiles(); | 105 std::vector<std::string> files = switches::GetSideloadFontFiles(); |
99 for (std::vector<std::string>::const_iterator i(files.begin()); | 106 for (std::vector<std::string>::const_iterator i(files.begin()); |
100 i != files.end(); | 107 i != files.end(); |
101 ++i) { | 108 ++i) { |
102 SkTypeface* typeface = fontmgr->createFromFile(i->c_str()); | 109 SkTypeface* typeface = fontmgr->createFromFile(i->c_str()); |
103 DoPreSandboxWarmupForTypeface(typeface); | 110 DoPreSandboxWarmupForTypeface(typeface); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
165 RenderThreadImpl::current() | 172 RenderThreadImpl::current() |
166 ->blink_platform_impl() | 173 ->blink_platform_impl() |
167 ->MockBatteryStatusChangedForTesting(status); | 174 ->MockBatteryStatusChangedForTesting(status); |
168 } | 175 } |
169 | 176 |
170 void EnableRendererLayoutTestMode() { | 177 void EnableRendererLayoutTestMode() { |
171 RenderThreadImpl::current()->set_layout_test_mode(true); | 178 RenderThreadImpl::current()->set_layout_test_mode(true); |
172 | 179 |
173 #if defined(OS_WIN) | 180 #if defined(OS_WIN) |
174 if (gfx::win::ShouldUseDirectWrite()) | 181 if (gfx::win::ShouldUseDirectWrite()) |
175 RegisterSideloadedTypefaces(GetPreSandboxWarmupFontMgr()); | 182 RegisterSideloadedTypefaces(SkFontMgr_New_DirectWrite()); |
176 #endif | 183 #endif |
177 } | 184 } |
178 | 185 |
179 void EnableBrowserLayoutTestMode() { | 186 void EnableBrowserLayoutTestMode() { |
180 #if defined(OS_MACOSX) | 187 #if defined(OS_MACOSX) |
181 ImageTransportSurface::SetAllowOSMesaForTesting(true); | 188 ImageTransportSurface::SetAllowOSMesaForTesting(true); |
182 PopupMenuHelper::DontShowPopupMenuForTesting(); | 189 PopupMenuHelper::DontShowPopupMenuForTesting(); |
183 #endif | 190 #endif |
184 RenderWidgetHostImpl::DisableResizeAckCheckForTesting(); | 191 RenderWidgetHostImpl::DisableResizeAckCheckForTesting(); |
185 } | 192 } |
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
451 result.append( | 458 result.append( |
452 DumpHistoryItem(entry->root_history_node(), | 459 DumpHistoryItem(entry->root_history_node(), |
453 8, | 460 8, |
454 index == current_index)); | 461 index == current_index)); |
455 } | 462 } |
456 result.append("===============================================\n"); | 463 result.append("===============================================\n"); |
457 return result; | 464 return result; |
458 } | 465 } |
459 | 466 |
460 } // namespace content | 467 } // namespace content |
OLD | NEW |