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

Side by Side Diff: content/renderer/render_view_impl.cc

Issue 23129015: Initialize RenderWidget(Host)(View)s with correct visibility state (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 4 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
« no previous file with comments | « content/renderer/render_view_impl.h ('k') | content/renderer/render_view_impl_params.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 762 matching lines...) Expand 10 before | Expand all | Expand 10 after
773 result.setItems(item_list); 773 result.setItems(item_list);
774 result.setFilesystemId(drop_data.filesystem_id); 774 result.setFilesystemId(drop_data.filesystem_id);
775 return result; 775 return result;
776 } 776 }
777 777
778 } // namespace 778 } // namespace
779 779
780 RenderViewImpl::RenderViewImpl(RenderViewImplParams* params) 780 RenderViewImpl::RenderViewImpl(RenderViewImplParams* params)
781 : RenderWidget(WebKit::WebPopupTypeNone, 781 : RenderWidget(WebKit::WebPopupTypeNone,
782 params->screen_info, 782 params->screen_info,
783 params->swapped_out), 783 params->swapped_out,
784 params->hidden),
784 webkit_preferences_(params->webkit_prefs), 785 webkit_preferences_(params->webkit_prefs),
785 send_content_state_immediately_(false), 786 send_content_state_immediately_(false),
786 enabled_bindings_(0), 787 enabled_bindings_(0),
787 send_preferred_size_changes_(false), 788 send_preferred_size_changes_(false),
788 is_loading_(false), 789 is_loading_(false),
789 navigation_gesture_(NavigationGestureUnknown), 790 navigation_gesture_(NavigationGestureUnknown),
790 opened_by_user_gesture_(true), 791 opened_by_user_gesture_(true),
791 opener_suppressed_(false), 792 opener_suppressed_(false),
792 page_id_(-1), 793 page_id_(-1),
793 last_page_id_sent_to_browser_(-1), 794 last_page_id_sent_to_browser_(-1),
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after
893 decrement_shared_popup_at_destruction_ = true; 894 decrement_shared_popup_at_destruction_ = true;
894 } else { 895 } else {
895 shared_popup_counter_ = new SharedRenderViewCounter(0); 896 shared_popup_counter_ = new SharedRenderViewCounter(0);
896 decrement_shared_popup_at_destruction_ = false; 897 decrement_shared_popup_at_destruction_ = false;
897 } 898 }
898 899
899 RenderThread::Get()->AddRoute(routing_id_, this); 900 RenderThread::Get()->AddRoute(routing_id_, this);
900 // Take a reference on behalf of the RenderThread. This will be balanced 901 // Take a reference on behalf of the RenderThread. This will be balanced
901 // when we receive ViewMsg_ClosePage. 902 // when we receive ViewMsg_ClosePage.
902 AddRef(); 903 AddRef();
904 if (is_hidden_)
905 RenderThread::Get()->WidgetHidden();
903 906
904 // If this is a popup, we must wait for the CreatingNew_ACK message before 907 // If this is a popup, we must wait for the CreatingNew_ACK message before
905 // completing initialization. Otherwise, we can finish it now. 908 // completing initialization. Otherwise, we can finish it now.
906 if (opener_id_ == MSG_ROUTING_NONE) { 909 if (opener_id_ == MSG_ROUTING_NONE) {
907 did_show_ = true; 910 did_show_ = true;
908 CompleteInit(); 911 CompleteInit();
909 } 912 }
910 913
911 g_view_map.Get().insert(std::make_pair(webview(), this)); 914 g_view_map.Get().insert(std::make_pair(webview(), this));
912 g_routing_id_view_map.Get().insert(std::make_pair(routing_id_, this)); 915 g_routing_id_view_map.Get().insert(std::make_pair(routing_id_, this));
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
1066 const RendererPreferences& renderer_prefs, 1069 const RendererPreferences& renderer_prefs,
1067 const WebPreferences& webkit_prefs, 1070 const WebPreferences& webkit_prefs,
1068 SharedRenderViewCounter* counter, 1071 SharedRenderViewCounter* counter,
1069 int32 routing_id, 1072 int32 routing_id,
1070 int32 main_frame_routing_id, 1073 int32 main_frame_routing_id,
1071 int32 surface_id, 1074 int32 surface_id,
1072 int64 session_storage_namespace_id, 1075 int64 session_storage_namespace_id,
1073 const string16& frame_name, 1076 const string16& frame_name,
1074 bool is_renderer_created, 1077 bool is_renderer_created,
1075 bool swapped_out, 1078 bool swapped_out,
1079 bool hidden,
1076 int32 next_page_id, 1080 int32 next_page_id,
1077 const WebKit::WebScreenInfo& screen_info, 1081 const WebKit::WebScreenInfo& screen_info,
1078 AccessibilityMode accessibility_mode, 1082 AccessibilityMode accessibility_mode,
1079 bool allow_partial_swap) { 1083 bool allow_partial_swap) {
1080 DCHECK(routing_id != MSG_ROUTING_NONE); 1084 DCHECK(routing_id != MSG_ROUTING_NONE);
1081 RenderViewImplParams params( 1085 RenderViewImplParams params(
1082 opener_id, 1086 opener_id,
1083 renderer_prefs, 1087 renderer_prefs,
1084 webkit_prefs, 1088 webkit_prefs,
1085 counter, 1089 counter,
1086 routing_id, 1090 routing_id,
1087 main_frame_routing_id, 1091 main_frame_routing_id,
1088 surface_id, 1092 surface_id,
1089 session_storage_namespace_id, 1093 session_storage_namespace_id,
1090 frame_name, 1094 frame_name,
1091 is_renderer_created, 1095 is_renderer_created,
1092 swapped_out, 1096 swapped_out,
1097 hidden,
1093 next_page_id, 1098 next_page_id,
1094 screen_info, 1099 screen_info,
1095 accessibility_mode, 1100 accessibility_mode,
1096 allow_partial_swap); 1101 allow_partial_swap);
1097 RenderViewImpl* render_view = NULL; 1102 RenderViewImpl* render_view = NULL;
1098 if (g_create_render_view_impl) 1103 if (g_create_render_view_impl)
1099 render_view = g_create_render_view_impl(&params); 1104 render_view = g_create_render_view_impl(&params);
1100 else 1105 else
1101 render_view = new RenderViewImpl(&params); 1106 render_view = new RenderViewImpl(&params);
1102 render_view->Initialize(&params); 1107 render_view->Initialize(&params);
(...skipping 1232 matching lines...) Expand 10 before | Expand all | Expand 10 after
2335 RenderViewImpl* view = RenderViewImpl::Create( 2340 RenderViewImpl* view = RenderViewImpl::Create(
2336 routing_id_, 2341 routing_id_,
2337 renderer_preferences_, 2342 renderer_preferences_,
2338 transferred_preferences, 2343 transferred_preferences,
2339 shared_popup_counter_.get(), 2344 shared_popup_counter_.get(),
2340 routing_id, 2345 routing_id,
2341 main_frame_routing_id, 2346 main_frame_routing_id,
2342 surface_id, 2347 surface_id,
2343 cloned_session_storage_namespace_id, 2348 cloned_session_storage_namespace_id,
2344 string16(), // WebCore will take care of setting the correct name. 2349 string16(), // WebCore will take care of setting the correct name.
2345 true, 2350 true, // is_renderer_created
2346 false, 2351 false, // swapped_out
2347 1, 2352 false, // hidden
2353 1, // next_page_id
2348 screen_info_, 2354 screen_info_,
2349 accessibility_mode_, 2355 accessibility_mode_,
2350 allow_partial_swap_); 2356 allow_partial_swap_);
2351 view->opened_by_user_gesture_ = params.user_gesture; 2357 view->opened_by_user_gesture_ = params.user_gesture;
2352 2358
2353 // Record whether the creator frame is trying to suppress the opener field. 2359 // Record whether the creator frame is trying to suppress the opener field.
2354 view->opener_suppressed_ = params.opener_suppressed; 2360 view->opener_suppressed_ = params.opener_suppressed;
2355 2361
2356 // Copy over the alternate error page URL so we can have alt error pages in 2362 // Copy over the alternate error page URL so we can have alt error pages in
2357 // the new render view (we don't need the browser to send the URL back down). 2363 // the new render view (we don't need the browser to send the URL back down).
(...skipping 4198 matching lines...) Expand 10 before | Expand all | Expand 10 after
6556 WebURL url = icon_urls[i].iconURL(); 6562 WebURL url = icon_urls[i].iconURL();
6557 if (!url.isEmpty()) 6563 if (!url.isEmpty())
6558 urls.push_back(FaviconURL(url, 6564 urls.push_back(FaviconURL(url,
6559 ToFaviconType(icon_urls[i].iconType()))); 6565 ToFaviconType(icon_urls[i].iconType())));
6560 } 6566 }
6561 SendUpdateFaviconURL(urls); 6567 SendUpdateFaviconURL(urls);
6562 } 6568 }
6563 6569
6564 6570
6565 } // namespace content 6571 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_view_impl.h ('k') | content/renderer/render_view_impl_params.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698