diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-19 16:48:56 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-19 16:48:56 +0000 |
commit | 8f6a3b8526d57761ede83a45512171a72a00f940 (patch) | |
tree | 33e363a99409f217791c2676544f959074748d52 /chrome/renderer | |
parent | 4f7f6bff43c00549022330b9c66dbdd1e729a36d (diff) | |
download | chromium_src-8f6a3b8526d57761ede83a45512171a72a00f940.zip chromium_src-8f6a3b8526d57761ede83a45512171a72a00f940.tar.gz chromium_src-8f6a3b8526d57761ede83a45512171a72a00f940.tar.bz2 |
Move MHTML code to content, now that download code is moving there.
BUG=82782
Review URL: http://codereview.chromium.org/7396029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93041 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer')
-rw-r--r-- | chrome/renderer/chrome_content_renderer_client.cc | 2 | ||||
-rw-r--r-- | chrome/renderer/mhtml_generator.cc | 65 | ||||
-rw-r--r-- | chrome/renderer/mhtml_generator.h | 32 |
3 files changed, 0 insertions, 99 deletions
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc index b1a13bd..ee7db8e 100644 --- a/chrome/renderer/chrome_content_renderer_client.cc +++ b/chrome/renderer/chrome_content_renderer_client.cc @@ -44,7 +44,6 @@ #include "chrome/renderer/external_extension.h" #include "chrome/renderer/loadtimes_extension_bindings.h" #include "chrome/renderer/localized_error.h" -#include "chrome/renderer/mhtml_generator.h" #include "chrome/renderer/net/renderer_net_predictor.h" #include "chrome/renderer/page_click_tracker.h" #include "chrome/renderer/page_load_histograms.h" @@ -212,7 +211,6 @@ void ChromeContentRendererClient::RenderViewCreated(RenderView* render_view) { new ContentSettingsObserver(render_view); new DevToolsAgent(render_view); new ExtensionHelper(render_view, extension_dispatcher_.get()); - new MHTMLGenerator(render_view); new PageLoadHistograms(render_view, histogram_snapshots_.get()); new PrintWebViewHelper(render_view); new SearchBox(render_view); diff --git a/chrome/renderer/mhtml_generator.cc b/chrome/renderer/mhtml_generator.cc deleted file mode 100644 index 8dfe79a3..0000000 --- a/chrome/renderer/mhtml_generator.cc +++ /dev/null @@ -1,65 +0,0 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/renderer/mhtml_generator.h" - -#include "base/platform_file.h" -#include "chrome/common/render_messages.h" -#include "content/renderer/render_view.h" -#include "third_party/WebKit/Source/WebKit/chromium/public/WebCString.h" -#include "third_party/WebKit/Source/WebKit/chromium/public/WebPageSerializer.h" - -MHTMLGenerator::MHTMLGenerator(RenderView* render_view) - : RenderViewObserver(render_view), - file_(base::kInvalidPlatformFileValue) { -} - -MHTMLGenerator::~MHTMLGenerator() { -} - -// RenderViewObserver implementation: -bool MHTMLGenerator::OnMessageReceived(const IPC::Message& message) { - bool handled = true; - IPC_BEGIN_MESSAGE_MAP(MHTMLGenerator, message) - IPC_MESSAGE_HANDLER(ViewMsg_SavePageAsMHTML, OnSavePageAsMHTML) - IPC_MESSAGE_UNHANDLED(handled = false) - IPC_END_MESSAGE_MAP() - return handled; -} - -void MHTMLGenerator::OnSavePageAsMHTML( - int job_id, IPC::PlatformFileForTransit file_for_transit) { - base::PlatformFile file = - IPC::PlatformFileForTransitToPlatformFile(file_for_transit); - file_ = file; - bool success = GenerateMHTML(); - NotifyBrowser(job_id, success); -} - -void MHTMLGenerator::NotifyBrowser(int job_id, bool success) { - render_view()->Send(new ViewHostMsg_SavedPageAsMHTML( - render_view()->routing_id(), job_id, success)); - file_ = base::kInvalidPlatformFileValue; -} - -// TODO(jcivelli): write the chunks in deferred tasks to give a chance to the -// message loop to process other events. -bool MHTMLGenerator::GenerateMHTML() { - WebKit::WebCString mhtml = - WebKit::WebPageSerializer::serializeToMHTML(render_view()->webview()); - const size_t chunk_size = 1024; - const char* data = mhtml.data(); - size_t total_bytes_written = 0; - while (total_bytes_written < mhtml.length()) { - size_t copy_size = - std::min(mhtml.length() - total_bytes_written, chunk_size); - int bytes_written = base::WritePlatformFile(file_, total_bytes_written, - data + total_bytes_written, - copy_size); - if (bytes_written == -1) - return false; - total_bytes_written += bytes_written; - } - return true; -} diff --git a/chrome/renderer/mhtml_generator.h b/chrome/renderer/mhtml_generator.h deleted file mode 100644 index 3520657..0000000 --- a/chrome/renderer/mhtml_generator.h +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_RENDERER_MHTML_GENERATOR_H_ -#define CHROME_RENDERER_MHTML_GENERATOR_H_ - -#include "content/renderer/render_view_observer.h" - -#include "ipc/ipc_platform_file.h" - -class MHTMLGenerator : public RenderViewObserver { - public: - explicit MHTMLGenerator(RenderView* render_view); - virtual ~MHTMLGenerator(); - - private: - // RenderViewObserver implementation: - virtual bool OnMessageReceived(const IPC::Message& message); - - void OnSavePageAsMHTML(int job_id, - IPC::PlatformFileForTransit file_for_transit); - - void NotifyBrowser(int job_id, bool success); - bool GenerateMHTML(); - - base::PlatformFile file_; - - DISALLOW_COPY_AND_ASSIGN(MHTMLGenerator); -}; - -#endif // CHROME_RENDERER_MHTML_GENERATOR_H_ |