OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 "config.h" | 5 #include "config.h" |
6 #include <string> | 6 #include <string> |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 | 10 |
(...skipping 626 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
637 d->DidChangeLocationWithinPageForFrame(webview, webframe_, | 637 d->DidChangeLocationWithinPageForFrame(webview, webframe_, |
638 is_new_navigation); | 638 is_new_navigation); |
639 } | 639 } |
640 | 640 |
641 if (d) | 641 if (d) |
642 d->DidStopLoading(webview); | 642 d->DidStopLoading(webview); |
643 } | 643 } |
644 | 644 |
645 void WebFrameLoaderClient::dispatchWillClose() { | 645 void WebFrameLoaderClient::dispatchWillClose() { |
646 WebViewImpl* webview = webframe_->GetWebViewImpl(); | 646 WebViewImpl* webview = webframe_->GetWebViewImpl(); |
647 // Make sure WebViewImpl releases the references it uses to restore focus. | |
648 // If we didn't do this, WebViewImpl might try to restore focus to an invalid | |
649 // element. | |
650 webview->ReleaseFocusReferences(); | |
651 WebViewDelegate* d = webview->delegate(); | 647 WebViewDelegate* d = webview->delegate(); |
652 if (d) | 648 if (d) |
653 d->WillCloseFrame(webview, webframe_); | 649 d->WillCloseFrame(webview, webframe_); |
654 } | 650 } |
655 | 651 |
656 void WebFrameLoaderClient::dispatchDidReceiveIcon() { | 652 void WebFrameLoaderClient::dispatchDidReceiveIcon() { |
657 WebViewImpl* webview = webframe_->GetWebViewImpl(); | 653 WebViewImpl* webview = webframe_->GetWebViewImpl(); |
658 WebViewDelegate* d = webview->delegate(); | 654 WebViewDelegate* d = webview->delegate(); |
659 if (d) | 655 if (d) |
660 d->DidReceiveIconForFrame(webview, webframe_); | 656 d->DidReceiveIconForFrame(webview, webframe_); |
(...skipping 848 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1509 | 1505 |
1510 std::string offset_str = url.ExtractFileName(); | 1506 std::string offset_str = url.ExtractFileName(); |
1511 int offset; | 1507 int offset; |
1512 if (!StringToInt(offset_str, &offset)) | 1508 if (!StringToInt(offset_str, &offset)) |
1513 return; | 1509 return; |
1514 | 1510 |
1515 WebViewDelegate* d = webframe_->GetWebViewImpl()->delegate(); | 1511 WebViewDelegate* d = webframe_->GetWebViewImpl()->delegate(); |
1516 if (d) | 1512 if (d) |
1517 d->NavigateBackForwardSoon(offset); | 1513 d->NavigateBackForwardSoon(offset); |
1518 } | 1514 } |
OLD | NEW |