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

Unified Diff: blimp/engine/feature/engine_render_widget_feature.cc

Issue 1810213009: blimp: Add settings to allow the client to download the whole page. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@record_full_document
Patch Set: Use ContentBrowserClient to override prefs. Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: blimp/engine/feature/engine_render_widget_feature.cc
diff --git a/blimp/engine/feature/engine_render_widget_feature.cc b/blimp/engine/feature/engine_render_widget_feature.cc
index b5f2d583697fc24f7ad7676e3b0153c35ccd082e..1b59e5df37849783aa4b2a89e7bca68120307d23 100644
--- a/blimp/engine/feature/engine_render_widget_feature.cc
+++ b/blimp/engine/feature/engine_render_widget_feature.cc
@@ -18,10 +18,18 @@
#include "third_party/WebKit/public/web/WebInputEvent.h"
namespace blimp {
+namespace engine {
-EngineRenderWidgetFeature::EngineRenderWidgetFeature() {}
+EngineRenderWidgetFeature::EngineRenderWidgetFeature(SettingsManager* settings)
+ : settings_manager_(settings) {
+ DCHECK(settings_manager_);
+ settings_manager_->AddObserver(this);
+}
-EngineRenderWidgetFeature::~EngineRenderWidgetFeature() {}
+EngineRenderWidgetFeature::~EngineRenderWidgetFeature() {
+ DCHECK(settings_manager_);
+ settings_manager_->RemoveObserver(this);
+}
void EngineRenderWidgetFeature::set_render_widget_message_sender(
scoped_ptr<BlimpMessageProcessor> message_processor) {
@@ -232,6 +240,22 @@ void EngineRenderWidgetFeature::ProcessMessage(
callback.Run(net::OK);
}
+void EngineRenderWidgetFeature::OnWebPreferencesChanged() {
+ for (TabMap::iterator tab_it = tabs_.begin(); tab_it != tabs_.end();
+ tab_it++) {
+ RenderWidgetMaps render_widget_maps = tab_it->second;
+ RenderWidgetToIdMap render_widget_to_id = render_widget_maps.first;
+ for (RenderWidgetToIdMap::iterator it = render_widget_to_id.begin();
+ it != render_widget_to_id.end(); it++) {
+ content::RenderWidgetHost* render_widget_host = it->first;
+ content::RenderViewHost* render_view_host =
+ content::RenderViewHost::From(render_widget_host);
+ if (render_view_host)
+ render_view_host->OnWebkitPreferencesChanged();
+ }
+ }
+}
+
void EngineRenderWidgetFeature::SetTextFromIME(ui::TextInputClient* client,
std::string text) {
if (client && client->GetTextInputType() != ui::TEXT_INPUT_TYPE_NONE) {
@@ -342,4 +366,5 @@ content::RenderWidgetHost* EngineRenderWidgetFeature::GetRenderWidgetHost(
return widget_id_it->second;
}
+} // namespace engine
} // namespace blimp
« no previous file with comments | « blimp/engine/feature/engine_render_widget_feature.h ('k') | blimp/engine/feature/engine_render_widget_feature_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698