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 "webkit/support/webkit_support.h" | 5 #include "webkit/support/webkit_support.h" |
6 | 6 |
7 #include "base/at_exit.h" | 7 #include "base/at_exit.h" |
8 #include "base/base64.h" | 8 #include "base/base64.h" |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
248 basePath = basePath.Append(FILE_PATH_LITERAL("third_party/WebKit")); | 248 basePath = basePath.Append(FILE_PATH_LITERAL("third_party/WebKit")); |
249 } else if (file_util::PathExists( | 249 } else if (file_util::PathExists( |
250 basePath.Append(FILE_PATH_LITERAL("chromium")))) { | 250 basePath.Append(FILE_PATH_LITERAL("chromium")))) { |
251 // We're in a WebKit-only checkout on Windows. | 251 // We're in a WebKit-only checkout on Windows. |
252 basePath = basePath.Append(FILE_PATH_LITERAL("../..")); | 252 basePath = basePath.Append(FILE_PATH_LITERAL("../..")); |
253 } else if (file_util::PathExists( | 253 } else if (file_util::PathExists( |
254 basePath.Append(FILE_PATH_LITERAL("webkit/support")))) { | 254 basePath.Append(FILE_PATH_LITERAL("webkit/support")))) { |
255 // We're in a WebKit-only/xcodebuild checkout on Mac | 255 // We're in a WebKit-only/xcodebuild checkout on Mac |
256 basePath = basePath.Append(FILE_PATH_LITERAL("../../..")); | 256 basePath = basePath.Append(FILE_PATH_LITERAL("../../..")); |
257 } | 257 } |
258 CHECK(file_util::AbsolutePath(&basePath)); | 258 basePath = base::MakeAbsoluteFilePath(basePath); |
| 259 CHECK(!basePath.empty()); |
259 // We're in a WebKit-only, make-build, so the DIR_SOURCE_ROOT is already the | 260 // We're in a WebKit-only, make-build, so the DIR_SOURCE_ROOT is already the |
260 // WebKit root. That, or we have no idea where we are. | 261 // WebKit root. That, or we have no idea where we are. |
261 return basePath; | 262 return basePath; |
262 } | 263 } |
263 | 264 |
264 class WebKitClientMessageLoopImpl | 265 class WebKitClientMessageLoopImpl |
265 : public WebDevToolsAgentClient::WebKitClientMessageLoop { | 266 : public WebDevToolsAgentClient::WebKitClientMessageLoop { |
266 public: | 267 public: |
267 WebKitClientMessageLoopImpl() : message_loop_(MessageLoop::current()) {} | 268 WebKitClientMessageLoopImpl() : message_loop_(MessageLoop::current()) {} |
268 virtual ~WebKitClientMessageLoopImpl() { | 269 virtual ~WebKitClientMessageLoopImpl() { |
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
566 FROM_HERE, | 567 FROM_HERE, |
567 base::Bind(&TaskAdaptor::Run, base::Owned(task)), | 568 base::Bind(&TaskAdaptor::Run, base::Owned(task)), |
568 base::TimeDelta::FromMilliseconds(delay_ms)); | 569 base::TimeDelta::FromMilliseconds(delay_ms)); |
569 } | 570 } |
570 | 571 |
571 // Wrappers for FilePath and file_util | 572 // Wrappers for FilePath and file_util |
572 | 573 |
573 WebString GetAbsoluteWebStringFromUTF8Path(const std::string& utf8_path) { | 574 WebString GetAbsoluteWebStringFromUTF8Path(const std::string& utf8_path) { |
574 #if defined(OS_WIN) | 575 #if defined(OS_WIN) |
575 base::FilePath path(UTF8ToWide(utf8_path)); | 576 base::FilePath path(UTF8ToWide(utf8_path)); |
576 file_util::AbsolutePath(&path); | 577 return WebString(base::MakeAbsoluteFilePath(path).value()); |
577 return WebString(path.value()); | |
578 #else | 578 #else |
579 base::FilePath path(base::SysWideToNativeMB(base::SysUTF8ToWide(utf8_path))); | 579 base::FilePath path(base::SysWideToNativeMB(base::SysUTF8ToWide(utf8_path))); |
580 #if defined(OS_ANDROID) | 580 #if defined(OS_ANDROID) |
581 if (WebKit::layoutTestMode()) { | 581 if (WebKit::layoutTestMode()) { |
582 // See comment of TestEnvironment::set_mock_current_directory(). | 582 // See comment of TestEnvironment::set_mock_current_directory(). |
583 if (!path.IsAbsolute()) { | 583 if (!path.IsAbsolute()) { |
584 // Not using FilePath::Append() because it can't handle '..' in path. | 584 // Not using FilePath::Append() because it can't handle '..' in path. |
585 DCHECK(test_environment); | 585 DCHECK(test_environment); |
586 GURL base_url = net::FilePathToFileURL( | 586 GURL base_url = net::FilePathToFileURL( |
587 test_environment->mock_current_directory() | 587 test_environment->mock_current_directory() |
588 .Append(FILE_PATH_LITERAL("foo"))); | 588 .Append(FILE_PATH_LITERAL("foo"))); |
589 net::FileURLToFilePath(base_url.Resolve(path.value()), &path); | 589 net::FileURLToFilePath(base_url.Resolve(path.value()), &path); |
590 } | 590 } |
591 } else { | 591 } else { |
592 file_util::AbsolutePath(&path); | 592 path = base::MakeAbsoluteFilePath(path); |
593 } | 593 } |
594 #else | 594 #else |
595 file_util::AbsolutePath(&path); | 595 path = base::MakeAbsoluteFilePath(path); |
596 #endif // else defined(OS_ANDROID) | 596 #endif // else defined(OS_ANDROID) |
597 return WideToUTF16(base::SysNativeMBToWide(path.value())); | 597 return WideToUTF16(base::SysNativeMBToWide(path.value())); |
598 #endif // else defined(OS_WIN) | 598 #endif // else defined(OS_WIN) |
599 } | 599 } |
600 | 600 |
601 WebURL CreateURLForPathOrURL(const std::string& path_or_url_in_nativemb) { | 601 WebURL CreateURLForPathOrURL(const std::string& path_or_url_in_nativemb) { |
602 // NativeMB to UTF-8 | 602 // NativeMB to UTF-8 |
603 std::wstring wide_path_or_url | 603 std::wstring wide_path_or_url |
604 = base::SysNativeMBToWide(path_or_url_in_nativemb); | 604 = base::SysNativeMBToWide(path_or_url_in_nativemb); |
605 std::string path_or_url_in_utf8 = WideToUTF8(wide_path_or_url); | 605 std::string path_or_url_in_utf8 = WideToUTF8(wide_path_or_url); |
606 | 606 |
607 GURL url(path_or_url_in_utf8); | 607 GURL url(path_or_url_in_utf8); |
608 if (url.is_valid() && url.has_scheme()) | 608 if (url.is_valid() && url.has_scheme()) |
609 return WebURL(url); | 609 return WebURL(url); |
610 #if defined(OS_WIN) | 610 #if defined(OS_WIN) |
611 base::FilePath path(wide_path_or_url); | 611 base::FilePath path(wide_path_or_url); |
612 #else | 612 #else |
613 base::FilePath path(path_or_url_in_nativemb); | 613 base::FilePath path(path_or_url_in_nativemb); |
614 #endif | 614 #endif |
615 file_util::AbsolutePath(&path); | 615 return net::FilePathToFileURL(base::MakeAbsoluteFilePath(path)); |
616 return net::FilePathToFileURL(path); | |
617 } | 616 } |
618 | 617 |
619 WebURL RewriteLayoutTestsURL(const std::string& utf8_url) { | 618 WebURL RewriteLayoutTestsURL(const std::string& utf8_url) { |
620 const char kPrefix[] = "file:///tmp/LayoutTests/"; | 619 const char kPrefix[] = "file:///tmp/LayoutTests/"; |
621 const int kPrefixLen = arraysize(kPrefix) - 1; | 620 const int kPrefixLen = arraysize(kPrefix) - 1; |
622 | 621 |
623 if (utf8_url.compare(0, kPrefixLen, kPrefix, kPrefixLen)) | 622 if (utf8_url.compare(0, kPrefixLen, kPrefix, kPrefixLen)) |
624 return WebURL(GURL(utf8_url)); | 623 return WebURL(GURL(utf8_url)); |
625 | 624 |
626 base::FilePath replacePath = | 625 base::FilePath replacePath = |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
846 // Logging | 845 // Logging |
847 void EnableWebCoreLogChannels(const std::string& channels) { | 846 void EnableWebCoreLogChannels(const std::string& channels) { |
848 webkit_glue::EnableWebCoreLogChannels(channels); | 847 webkit_glue::EnableWebCoreLogChannels(channels); |
849 } | 848 } |
850 | 849 |
851 void SetGamepadData(const WebKit::WebGamepads& pads) { | 850 void SetGamepadData(const WebKit::WebGamepads& pads) { |
852 test_environment->webkit_platform_support()->setGamepadData(pads); | 851 test_environment->webkit_platform_support()->setGamepadData(pads); |
853 } | 852 } |
854 | 853 |
855 } // namespace webkit_support | 854 } // namespace webkit_support |
OLD | NEW |