Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1169)

Side by Side Diff: chrome/browser/external_tab_container_win.cc

Issue 6973035: Move download stuff to download tab helper. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: comment tweak Created 9 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "chrome/browser/external_tab_container_win.h" 5 #include "chrome/browser/external_tab_container_win.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/debug/trace_event.h" 9 #include "base/debug/trace_event.h"
10 #include "base/i18n/rtl.h" 10 #include "base/i18n/rtl.h"
(...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 531
532 bool ExternalTabContainer::TakeFocus(bool reverse) { 532 bool ExternalTabContainer::TakeFocus(bool reverse) {
533 if (automation_) { 533 if (automation_) {
534 automation_->Send(new AutomationMsg_TabbedOut(tab_handle_, 534 automation_->Send(new AutomationMsg_TabbedOut(tab_handle_,
535 base::win::IsShiftPressed())); 535 base::win::IsShiftPressed()));
536 } 536 }
537 537
538 return true; 538 return true;
539 } 539 }
540 540
541 bool ExternalTabContainer::CanDownload(int request_id) {
542 if (load_requests_via_automation_) {
543 if (automation_) {
544 // In case the host needs to show UI that needs to take the focus.
545 ::AllowSetForegroundWindow(ASFW_ANY);
546
547 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
548 NewRunnableMethod(automation_resource_message_filter_.get(),
549 &AutomationResourceMessageFilter::SendDownloadRequestToHost,
550 0, tab_handle_, request_id));
551 }
552 } else {
553 DLOG(WARNING) << "Downloads are only supported with host browser network "
554 "stack enabled.";
555 }
556
557 // Never allow downloads.
558 return false;
559 }
560
561 void ExternalTabContainer::ShowPageInfo(Profile* profile, 541 void ExternalTabContainer::ShowPageInfo(Profile* profile,
562 const GURL& url, 542 const GURL& url,
563 const NavigationEntry::SSLStatus& ssl, 543 const NavigationEntry::SSLStatus& ssl,
564 bool show_history) { 544 bool show_history) {
565 POINT cursor_pos = {0}; 545 POINT cursor_pos = {0};
566 GetCursorPos(&cursor_pos); 546 GetCursorPos(&cursor_pos);
567 547
568 gfx::Rect bounds; 548 gfx::Rect bounds;
569 bounds.set_origin(gfx::Point(cursor_pos)); 549 bounds.set_origin(gfx::Point(cursor_pos));
570 550
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
776 UnregisterRenderViewHost(rvh); 756 UnregisterRenderViewHost(rvh);
777 } 757 }
778 break; 758 break;
779 } 759 }
780 default: 760 default:
781 NOTREACHED(); 761 NOTREACHED();
782 } 762 }
783 } 763 }
784 764
785 //////////////////////////////////////////////////////////////////////////////// 765 ////////////////////////////////////////////////////////////////////////////////
766 // ExternalTabContainer, DownloadTabHelperDelegate overrides:
767
768 bool ExternalTabContainer::CanDownload(int request_id) {
769 if (load_requests_via_automation_) {
770 if (automation_) {
771 // In case the host needs to show UI that needs to take the focus.
772 ::AllowSetForegroundWindow(ASFW_ANY);
773
774 BrowserThread::PostTask(BrowserThread::IO, FROM_HERE,
775 NewRunnableMethod(automation_resource_message_filter_.get(),
776 &AutomationResourceMessageFilter::SendDownloadRequestToHost,
777 0, tab_handle_, request_id));
778 }
779 } else {
780 DLOG(WARNING) << "Downloads are only supported with host browser network "
781 "stack enabled.";
782 }
783
784 // Never allow downloads.
785 return false;
786 }
787
788 void ExternalTabContainer::OnStartDownload(DownloadItem* download,
789 TabContentsWrapper* tab) {
790 }
791
792
793 ////////////////////////////////////////////////////////////////////////////////
786 // ExternalTabContainer, views::WidgetWin overrides: 794 // ExternalTabContainer, views::WidgetWin overrides:
787 795
788 LRESULT ExternalTabContainer::OnCreate(LPCREATESTRUCT create_struct) { 796 LRESULT ExternalTabContainer::OnCreate(LPCREATESTRUCT create_struct) {
789 LRESULT result = views::WidgetWin::OnCreate(create_struct); 797 LRESULT result = views::WidgetWin::OnCreate(create_struct);
790 if (result == 0) { 798 if (result == 0) {
791 // Grab a reference here which will be released in OnFinalMessage 799 // Grab a reference here which will be released in OnFinalMessage
792 AddRef(); 800 AddRef();
793 } 801 }
794 return result; 802 return result;
795 } 803 }
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after
1101 1109
1102 if (disposition == CURRENT_TAB) { 1110 if (disposition == CURRENT_TAB) {
1103 DCHECK(route_all_top_level_navigations_); 1111 DCHECK(route_all_top_level_navigations_);
1104 disposition = NEW_FOREGROUND_TAB; 1112 disposition = NEW_FOREGROUND_TAB;
1105 } 1113 }
1106 ExternalTabContainer::OpenURLFromTab(source, url, referrer, disposition, 1114 ExternalTabContainer::OpenURLFromTab(source, url, referrer, disposition,
1107 transition); 1115 transition);
1108 // support only one navigation for a dummy tab before it is killed. 1116 // support only one navigation for a dummy tab before it is killed.
1109 ::DestroyWindow(GetNativeView()); 1117 ::DestroyWindow(GetNativeView());
1110 } 1118 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698