Refactoring of the client-side input pipeline and scaling dimension management.
The main changes are:
* Express key-release, mouse coordinate scaling and clamping as InputStubs.
* KeyEventTracker handles key release.
* MouseInputFilter handles mouse scaling & clamping.
* PepperInputHandler converts Pepper events to InputStub events.
* Replace scaling ratios with host and view dimensions.
This resulted in some related changes
* The DecoderVp8 enforces a <=1:1 output-size before converting the frame.
* The setScaleToFit() API now has no effect.
* ChromotingView has become a pure interface again.
Things this CL is currently missing:
* Unit-tests for the new components.
Future work:
* Move the non-Pepper-specific input pipeline components to ChromotingClient.
* Rework the decode / convert / scale / render pipeline.
BUG=93552
TEST=remoting_unittests, and manual testing.
Review URL: http://codereview.chromium.org/8985007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@115511 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/remoting/base/decoder_vp8.h b/remoting/base/decoder_vp8.h
index 33ec147..a89991c 100644
--- a/remoting/base/decoder_vp8.h
+++ b/remoting/base/decoder_vp8.h
@@ -24,8 +24,7 @@
virtual bool IsReadyForData() OVERRIDE;
virtual void Reset() OVERRIDE;
virtual VideoPacketFormat::Encoding Encoding() OVERRIDE;
- virtual void SetScaleRatios(double horizontal_ratio,
- double vertical_ratio) OVERRIDE;
+ virtual void SetOutputSize(const SkISize& size) OVERRIDE;
virtual void SetClipRect(const SkIRect& clip_rect) OVERRIDE;
virtual void RefreshRects(const RectVector& rects) OVERRIDE;
@@ -67,9 +66,8 @@
// Clipping rect for the output of the decoder.
SkIRect clip_rect_;
- // Scale factors of the decoded output.
- double horizontal_scale_ratio_;
- double vertical_scale_ratio_;
+ // Output dimensions.
+ SkISize output_size_;
DISALLOW_COPY_AND_ASSIGN(DecoderVp8);
};