diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-03 05:45:55 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-03 05:45:55 +0000 |
commit | 503b1574e293e27e90b8d009ea1cec56961e7907 (patch) | |
tree | 9b29fcc9cb049c125ee2f9472accc6381042d18b /chrome/renderer/mock_render_process.h | |
parent | be9827184d20dea9dd7b7bfaa6e727e34af59d9d (diff) | |
download | chromium_src-503b1574e293e27e90b8d009ea1cec56961e7907.zip chromium_src-503b1574e293e27e90b8d009ea1cec56961e7907.tar.gz chromium_src-503b1574e293e27e90b8d009ea1cec56961e7907.tar.bz2 |
Revert 40490 - Make the pepper 2D flush callback actually function as advertised. It will now
get called asynchronously when the bits are actually copied to the screen,
rather than synchronously from inside the paint function. This makes it useful
for plugins to use the callback for rate limiting.
This also adds a lot of infrastructure for running tests on pepper devices, and
includes a unit test for the new flush behavior.
I made the existing RenderProcess object an abstract interface and made the
existing MockProcess (renamed to be more clear) implement that. This avoids
a static cast that would actually crash during a unit test because some code
was hardcoded to expect a RenderProcess object.
This fixes base's IDMap iterator which has apparently never been used for an
IDMap with ownership semantics.
TEST=Unit test included
BUG=none
Review URL: http://codereview.chromium.org/661124
TBR=brettw@chromium.org
Review URL: http://codereview.chromium.org/660439
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40494 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/mock_render_process.h')
-rw-r--r-- | chrome/renderer/mock_render_process.h | 28 |
1 files changed, 9 insertions, 19 deletions
diff --git a/chrome/renderer/mock_render_process.h b/chrome/renderer/mock_render_process.h index fd286a1..49bc02c 100644 --- a/chrome/renderer/mock_render_process.h +++ b/chrome/renderer/mock_render_process.h @@ -1,30 +1,20 @@ -// Copyright (c) 2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2008 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_MOCK_RENDER_PROCESS_H_ #define CHROME_RENDERER_MOCK_RENDER_PROCESS_H_ -#include "chrome/renderer/render_process.h" +#include "chrome/common/child_process.h" -// This class is a mock of the child process singleton which we use during -// running of the RenderView unit tests. -class MockRenderProcess : public RenderProcess { - public: - MockRenderProcess(); - virtual ~MockRenderProcess(); - - // RenderProcess implementation. - virtual skia::PlatformCanvas* GetDrawingCanvas(TransportDIB** memory, - const gfx::Rect& rect); - virtual void ReleaseTransportDIB(TransportDIB* memory); - virtual bool UseInProcessPlugins() const; - virtual bool HasInitializedMediaLibrary() const; +class ChildThread; - private: - uint32 transport_dib_next_sequence_number_; - - DISALLOW_COPY_AND_ASSIGN(MockRenderProcess); +// This class is a trivial mock of the child process singleton. It is necessary +// so we don't trip DCHECKs in ChildProcess::ReleaseProcess() when destroying +// a render widget instance. +class MockProcess : public ChildProcess { + public: + explicit MockProcess() : ChildProcess() {} }; #endif // CHROME_RENDERER_MOCK_RENDER_PROCESS_H_ |