OLD | NEW |
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/ui/tab_contents/tab_contents_wrapper.h" | 5 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
6 | 6 |
7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
414 } | 414 } |
415 | 415 |
416 bool TabContentsWrapper::OnMessageReceived(const IPC::Message& message) { | 416 bool TabContentsWrapper::OnMessageReceived(const IPC::Message& message) { |
417 bool handled = true; | 417 bool handled = true; |
418 IPC_BEGIN_MESSAGE_MAP(TabContentsWrapper, message) | 418 IPC_BEGIN_MESSAGE_MAP(TabContentsWrapper, message) |
419 IPC_MESSAGE_HANDLER(ViewHostMsg_JSOutOfMemory, OnJSOutOfMemory) | 419 IPC_MESSAGE_HANDLER(ViewHostMsg_JSOutOfMemory, OnJSOutOfMemory) |
420 IPC_MESSAGE_HANDLER(ViewHostMsg_RegisterProtocolHandler, | 420 IPC_MESSAGE_HANDLER(ViewHostMsg_RegisterProtocolHandler, |
421 OnRegisterProtocolHandler) | 421 OnRegisterProtocolHandler) |
422 IPC_MESSAGE_HANDLER(ViewHostMsg_RegisterIntentHandler, | 422 IPC_MESSAGE_HANDLER(ViewHostMsg_RegisterIntentHandler, |
423 OnRegisterIntentHandler) | 423 OnRegisterIntentHandler) |
| 424 IPC_MESSAGE_HANDLER(ViewHostMsg_WebIntentDispatch, |
| 425 OnWebIntentDispatch) |
424 IPC_MESSAGE_HANDLER(ViewHostMsg_Snapshot, OnSnapshot) | 426 IPC_MESSAGE_HANDLER(ViewHostMsg_Snapshot, OnSnapshot) |
425 IPC_MESSAGE_HANDLER(ViewHostMsg_PDFHasUnsupportedFeature, | 427 IPC_MESSAGE_HANDLER(ViewHostMsg_PDFHasUnsupportedFeature, |
426 OnPDFHasUnsupportedFeature) | 428 OnPDFHasUnsupportedFeature) |
427 IPC_MESSAGE_HANDLER(ViewHostMsg_DidBlockDisplayingInsecureContent, | 429 IPC_MESSAGE_HANDLER(ViewHostMsg_DidBlockDisplayingInsecureContent, |
428 OnDidBlockDisplayingInsecureContent) | 430 OnDidBlockDisplayingInsecureContent) |
429 IPC_MESSAGE_HANDLER(ViewHostMsg_DidBlockRunningInsecureContent, | 431 IPC_MESSAGE_HANDLER(ViewHostMsg_DidBlockRunningInsecureContent, |
430 OnDidBlockRunningInsecureContent) | 432 OnDidBlockRunningInsecureContent) |
431 IPC_MESSAGE_UNHANDLED(handled = false) | 433 IPC_MESSAGE_UNHANDLED(handled = false) |
432 IPC_END_MESSAGE_MAP() | 434 IPC_END_MESSAGE_MAP() |
433 return handled; | 435 return handled; |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
614 } | 616 } |
615 | 617 |
616 WebIntentData intent; | 618 WebIntentData intent; |
617 intent.service_url = service_url; | 619 intent.service_url = service_url; |
618 intent.action = action; | 620 intent.action = action; |
619 intent.type = type; | 621 intent.type = type; |
620 intent.title = title; | 622 intent.title = title; |
621 AddInfoBar(new RegisterIntentHandlerInfoBarDelegate(tab_contents(), intent)); | 623 AddInfoBar(new RegisterIntentHandlerInfoBarDelegate(tab_contents(), intent)); |
622 } | 624 } |
623 | 625 |
| 626 void TabContentsWrapper::OnWebIntentDispatch(int routing_id, |
| 627 const string16& action, |
| 628 const string16& type, |
| 629 const string16& data, |
| 630 int intent_id) { |
| 631 if (!CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnableWebIntents)) |
| 632 return; |
| 633 |
| 634 LOG(INFO) << "Browser tab contents received intent:" |
| 635 << "\naction=" << UTF16ToASCII(action) |
| 636 << "\ntype=" << UTF16ToASCII(type) |
| 637 << "\ndata=" << UTF16ToUTF8(data) |
| 638 << "\nrenderer_id=" << routing_id |
| 639 << "\nid=" << intent_id; |
| 640 } |
| 641 |
624 void TabContentsWrapper::OnSnapshot(const SkBitmap& bitmap) { | 642 void TabContentsWrapper::OnSnapshot(const SkBitmap& bitmap) { |
625 NotificationService::current()->Notify( | 643 NotificationService::current()->Notify( |
626 chrome::NOTIFICATION_TAB_SNAPSHOT_TAKEN, | 644 chrome::NOTIFICATION_TAB_SNAPSHOT_TAKEN, |
627 Source<TabContentsWrapper>(this), | 645 Source<TabContentsWrapper>(this), |
628 Details<const SkBitmap>(&bitmap)); | 646 Details<const SkBitmap>(&bitmap)); |
629 } | 647 } |
630 | 648 |
631 void TabContentsWrapper::OnPDFHasUnsupportedFeature() { | 649 void TabContentsWrapper::OnPDFHasUnsupportedFeature() { |
632 PDFHasUnsupportedFeature(this); | 650 PDFHasUnsupportedFeature(this); |
633 } | 651 } |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
735 if (infobars_.empty()) { | 753 if (infobars_.empty()) { |
736 registrar_.Remove(this, content::NOTIFICATION_NAV_ENTRY_COMMITTED, | 754 registrar_.Remove(this, content::NOTIFICATION_NAV_ENTRY_COMMITTED, |
737 Source<NavigationController>(&tab_contents_->controller())); | 755 Source<NavigationController>(&tab_contents_->controller())); |
738 } | 756 } |
739 } | 757 } |
740 | 758 |
741 void TabContentsWrapper::RemoveAllInfoBars(bool animate) { | 759 void TabContentsWrapper::RemoveAllInfoBars(bool animate) { |
742 while (!infobars_.empty()) | 760 while (!infobars_.empty()) |
743 RemoveInfoBarInternal(GetInfoBarDelegateAt(infobar_count() - 1), animate); | 761 RemoveInfoBarInternal(GetInfoBarDelegateAt(infobar_count() - 1), animate); |
744 } | 762 } |
OLD | NEW |