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 649 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
660 pepper_last_mouse_event_target_(NULL), | 660 pepper_last_mouse_event_target_(NULL), |
661 #endif | 661 #endif |
662 enumeration_completion_id_(0), | 662 enumeration_completion_id_(0), |
663 session_storage_namespace_id_(params.session_storage_namespace_id), | 663 session_storage_namespace_id_(params.session_storage_namespace_id), |
664 page_scale_factor_is_one_(true) { | 664 page_scale_factor_is_one_(true) { |
665 } | 665 } |
666 | 666 |
667 void RenderViewImpl::Initialize(const ViewMsg_New_Params& params, | 667 void RenderViewImpl::Initialize(const ViewMsg_New_Params& params, |
668 bool was_created_by_renderer) { | 668 bool was_created_by_renderer) { |
669 routing_id_ = params.view_id; | 669 routing_id_ = params.view_id; |
670 surface_id_ = params.surface_id; | |
671 | 670 |
672 int opener_view_routing_id; | 671 int opener_view_routing_id; |
673 WebFrame* opener_frame = RenderFrameImpl::ResolveOpener( | 672 WebFrame* opener_frame = RenderFrameImpl::ResolveOpener( |
674 params.opener_frame_route_id, &opener_view_routing_id); | 673 params.opener_frame_route_id, &opener_view_routing_id); |
675 if (opener_view_routing_id != MSG_ROUTING_NONE && was_created_by_renderer) | 674 if (opener_view_routing_id != MSG_ROUTING_NONE && was_created_by_renderer) |
676 opener_id_ = opener_view_routing_id; | 675 opener_id_ = opener_view_routing_id; |
677 | 676 |
678 display_mode_= params.initial_size.display_mode; | 677 display_mode_= params.initial_size.display_mode; |
679 | 678 |
680 // Ensure we start with a valid next_page_id_ from the browser. | 679 // Ensure we start with a valid next_page_id_ from the browser. |
(...skipping 906 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1587 params.target_url = request.url(); | 1586 params.target_url = request.url(); |
1588 params.referrer = GetReferrerFromRequest(creator, request); | 1587 params.referrer = GetReferrerFromRequest(creator, request); |
1589 } | 1588 } |
1590 params.features = features; | 1589 params.features = features; |
1591 | 1590 |
1592 for (size_t i = 0; i < features.additionalFeatures.size(); ++i) | 1591 for (size_t i = 0; i < features.additionalFeatures.size(); ++i) |
1593 params.additional_features.push_back(features.additionalFeatures[i]); | 1592 params.additional_features.push_back(features.additionalFeatures[i]); |
1594 | 1593 |
1595 int32 routing_id = MSG_ROUTING_NONE; | 1594 int32 routing_id = MSG_ROUTING_NONE; |
1596 int32 main_frame_routing_id = MSG_ROUTING_NONE; | 1595 int32 main_frame_routing_id = MSG_ROUTING_NONE; |
1597 int32 surface_id = 0; | |
1598 int64 cloned_session_storage_namespace_id = 0; | 1596 int64 cloned_session_storage_namespace_id = 0; |
1599 | 1597 |
1600 RenderThread::Get()->Send(new ViewHostMsg_CreateWindow( | 1598 RenderThread::Get()->Send( |
1601 params, &routing_id, &main_frame_routing_id, &surface_id, | 1599 new ViewHostMsg_CreateWindow(params, &routing_id, &main_frame_routing_id, |
1602 &cloned_session_storage_namespace_id)); | 1600 &cloned_session_storage_namespace_id)); |
1603 if (routing_id == MSG_ROUTING_NONE) | 1601 if (routing_id == MSG_ROUTING_NONE) |
1604 return NULL; | 1602 return NULL; |
1605 | 1603 |
1606 WebUserGestureIndicator::consumeUserGesture(); | 1604 WebUserGestureIndicator::consumeUserGesture(); |
1607 | 1605 |
1608 // While this view may be a background extension page, it can spawn a visible | 1606 // While this view may be a background extension page, it can spawn a visible |
1609 // render view. So we just assume that the new one is not another background | 1607 // render view. So we just assume that the new one is not another background |
1610 // page instead of passing on our own value. | 1608 // page instead of passing on our own value. |
1611 // TODO(vangelis): Can we tell if the new view will be a background page? | 1609 // TODO(vangelis): Can we tell if the new view will be a background page? |
1612 bool never_visible = false; | 1610 bool never_visible = false; |
(...skipping 10 matching lines...) Expand all Loading... |
1623 | 1621 |
1624 RenderFrameImpl* creator_frame = RenderFrameImpl::FromWebFrame(creator); | 1622 RenderFrameImpl* creator_frame = RenderFrameImpl::FromWebFrame(creator); |
1625 view_params.opener_frame_route_id = creator_frame->GetRoutingID(); | 1623 view_params.opener_frame_route_id = creator_frame->GetRoutingID(); |
1626 DCHECK_EQ(routing_id_, creator_frame->render_view()->GetRoutingID()); | 1624 DCHECK_EQ(routing_id_, creator_frame->render_view()->GetRoutingID()); |
1627 | 1625 |
1628 view_params.window_was_created_with_opener = true; | 1626 view_params.window_was_created_with_opener = true; |
1629 view_params.renderer_preferences = renderer_preferences_; | 1627 view_params.renderer_preferences = renderer_preferences_; |
1630 view_params.web_preferences = webkit_preferences_; | 1628 view_params.web_preferences = webkit_preferences_; |
1631 view_params.view_id = routing_id; | 1629 view_params.view_id = routing_id; |
1632 view_params.main_frame_routing_id = main_frame_routing_id; | 1630 view_params.main_frame_routing_id = main_frame_routing_id; |
1633 view_params.surface_id = surface_id; | |
1634 view_params.session_storage_namespace_id = | 1631 view_params.session_storage_namespace_id = |
1635 cloned_session_storage_namespace_id; | 1632 cloned_session_storage_namespace_id; |
1636 view_params.swapped_out = false; | 1633 view_params.swapped_out = false; |
1637 // WebCore will take care of setting the correct name. | 1634 // WebCore will take care of setting the correct name. |
1638 view_params.replicated_frame_state = FrameReplicationState(); | 1635 view_params.replicated_frame_state = FrameReplicationState(); |
1639 view_params.proxy_routing_id = MSG_ROUTING_NONE; | 1636 view_params.proxy_routing_id = MSG_ROUTING_NONE; |
1640 view_params.hidden = (params.disposition == NEW_BACKGROUND_TAB); | 1637 view_params.hidden = (params.disposition == NEW_BACKGROUND_TAB); |
1641 view_params.never_visible = never_visible; | 1638 view_params.never_visible = never_visible; |
1642 view_params.next_page_id = 1; | 1639 view_params.next_page_id = 1; |
1643 view_params.initial_size = initial_size; | 1640 view_params.initial_size = initial_size; |
(...skipping 2097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3741 std::vector<gfx::Size> sizes; | 3738 std::vector<gfx::Size> sizes; |
3742 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); | 3739 ConvertToFaviconSizes(icon_urls[i].sizes(), &sizes); |
3743 if (!url.isEmpty()) | 3740 if (!url.isEmpty()) |
3744 urls.push_back( | 3741 urls.push_back( |
3745 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); | 3742 FaviconURL(url, ToFaviconType(icon_urls[i].iconType()), sizes)); |
3746 } | 3743 } |
3747 SendUpdateFaviconURL(urls); | 3744 SendUpdateFaviconURL(urls); |
3748 } | 3745 } |
3749 | 3746 |
3750 } // namespace content | 3747 } // namespace content |
OLD | NEW |