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/renderer/render_view_impl.h" | 5 #include "content/renderer/render_view_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 | 9 |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
784 | 784 |
785 if (switches::IsTouchDragDropEnabled()) | 785 if (switches::IsTouchDragDropEnabled()) |
786 webview()->settings()->setTouchDragDropEnabled(true); | 786 webview()->settings()->setTouchDragDropEnabled(true); |
787 | 787 |
788 if (switches::IsTouchEditingEnabled()) | 788 if (switches::IsTouchEditingEnabled()) |
789 webview()->settings()->setTouchEditingEnabled(true); | 789 webview()->settings()->setTouchEditingEnabled(true); |
790 | 790 |
791 if (!params->frame_name.empty()) | 791 if (!params->frame_name.empty()) |
792 webview()->mainFrame()->setName(params->frame_name); | 792 webview()->mainFrame()->setName(params->frame_name); |
793 | 793 |
| 794 // TODO(davidben): Move this state from Blink into content. |
| 795 if (params->window_was_created_with_opener) |
| 796 webview()->setOpenedByDOM(); |
| 797 |
794 OnSetRendererPrefs(params->renderer_prefs); | 798 OnSetRendererPrefs(params->renderer_prefs); |
795 | 799 |
796 #if defined(ENABLE_WEBRTC) | 800 #if defined(ENABLE_WEBRTC) |
797 if (!media_stream_dispatcher_) | 801 if (!media_stream_dispatcher_) |
798 media_stream_dispatcher_ = new MediaStreamDispatcher(this); | 802 media_stream_dispatcher_ = new MediaStreamDispatcher(this); |
799 #endif | 803 #endif |
800 | 804 |
801 new MHTMLGenerator(this); | 805 new MHTMLGenerator(this); |
802 #if defined(OS_MACOSX) | 806 #if defined(OS_MACOSX) |
803 new TextInputClientObserver(this); | 807 new TextInputClientObserver(this); |
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
907 ViewMap* views = g_view_map.Pointer(); | 911 ViewMap* views = g_view_map.Pointer(); |
908 for (ViewMap::iterator it = views->begin(); it != views->end(); ++it) { | 912 for (ViewMap::iterator it = views->begin(); it != views->end(); ++it) { |
909 if (!visitor->Visit(it->second)) | 913 if (!visitor->Visit(it->second)) |
910 return; | 914 return; |
911 } | 915 } |
912 } | 916 } |
913 | 917 |
914 /*static*/ | 918 /*static*/ |
915 RenderViewImpl* RenderViewImpl::Create( | 919 RenderViewImpl* RenderViewImpl::Create( |
916 int32 opener_id, | 920 int32 opener_id, |
| 921 bool window_was_created_with_opener, |
917 const RendererPreferences& renderer_prefs, | 922 const RendererPreferences& renderer_prefs, |
918 const WebPreferences& webkit_prefs, | 923 const WebPreferences& webkit_prefs, |
919 int32 routing_id, | 924 int32 routing_id, |
920 int32 main_frame_routing_id, | 925 int32 main_frame_routing_id, |
921 int32 surface_id, | 926 int32 surface_id, |
922 int64 session_storage_namespace_id, | 927 int64 session_storage_namespace_id, |
923 const base::string16& frame_name, | 928 const base::string16& frame_name, |
924 bool is_renderer_created, | 929 bool is_renderer_created, |
925 bool swapped_out, | 930 bool swapped_out, |
926 bool hidden, | 931 bool hidden, |
927 int32 next_page_id, | 932 int32 next_page_id, |
928 const blink::WebScreenInfo& screen_info, | 933 const blink::WebScreenInfo& screen_info, |
929 AccessibilityMode accessibility_mode) { | 934 AccessibilityMode accessibility_mode) { |
930 DCHECK(routing_id != MSG_ROUTING_NONE); | 935 DCHECK(routing_id != MSG_ROUTING_NONE); |
931 RenderViewImplParams params(opener_id, | 936 RenderViewImplParams params(opener_id, |
| 937 window_was_created_with_opener, |
932 renderer_prefs, | 938 renderer_prefs, |
933 webkit_prefs, | 939 webkit_prefs, |
934 routing_id, | 940 routing_id, |
935 main_frame_routing_id, | 941 main_frame_routing_id, |
936 surface_id, | 942 surface_id, |
937 session_storage_namespace_id, | 943 session_storage_namespace_id, |
938 frame_name, | 944 frame_name, |
939 is_renderer_created, | 945 is_renderer_created, |
940 swapped_out, | 946 swapped_out, |
941 hidden, | 947 hidden, |
(...skipping 577 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1519 transferred_preferences.accelerated_compositing_enabled = true; | 1525 transferred_preferences.accelerated_compositing_enabled = true; |
1520 } | 1526 } |
1521 | 1527 |
1522 // The initial hidden state for the RenderViewImpl here has to match what the | 1528 // The initial hidden state for the RenderViewImpl here has to match what the |
1523 // browser will eventually decide for the given disposition. Since we have to | 1529 // browser will eventually decide for the given disposition. Since we have to |
1524 // return from this call synchronously, we just have to make our best guess | 1530 // return from this call synchronously, we just have to make our best guess |
1525 // and rely on the browser sending a WasHidden / WasShown message if it | 1531 // and rely on the browser sending a WasHidden / WasShown message if it |
1526 // disagrees. | 1532 // disagrees. |
1527 RenderViewImpl* view = RenderViewImpl::Create( | 1533 RenderViewImpl* view = RenderViewImpl::Create( |
1528 routing_id_, | 1534 routing_id_, |
| 1535 true, // window_was_created_with_opener |
1529 renderer_preferences_, | 1536 renderer_preferences_, |
1530 transferred_preferences, | 1537 transferred_preferences, |
1531 routing_id, | 1538 routing_id, |
1532 main_frame_routing_id, | 1539 main_frame_routing_id, |
1533 surface_id, | 1540 surface_id, |
1534 cloned_session_storage_namespace_id, | 1541 cloned_session_storage_namespace_id, |
1535 base::string16(), // WebCore will take care of setting the correct name. | 1542 base::string16(), // WebCore will take care of setting the correct name. |
1536 true, // is_renderer_created | 1543 true, // is_renderer_created |
1537 false, // swapped_out | 1544 false, // swapped_out |
1538 params.disposition == NEW_BACKGROUND_TAB, // hidden | 1545 params.disposition == NEW_BACKGROUND_TAB, // hidden |
(...skipping 2989 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4528 std::vector<gfx::Size> sizes(icon_urls[i].sizes().size()); | 4535 std::vector<gfx::Size> sizes(icon_urls[i].sizes().size()); |
4529 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); | 4536 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); |
4530 if (!url.isEmpty()) | 4537 if (!url.isEmpty()) |
4531 urls.push_back( | 4538 urls.push_back( |
4532 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); | 4539 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); |
4533 } | 4540 } |
4534 SendUpdateFaviconURL(urls); | 4541 SendUpdateFaviconURL(urls); |
4535 } | 4542 } |
4536 | 4543 |
4537 } // namespace content | 4544 } // namespace content |
OLD | NEW |