summaryrefslogtreecommitdiffstats
path: root/remoting/client/plugin/chromoting_instance.h
diff options
context:
space:
mode:
authoralexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-21 10:16:41 +0000
committeralexeypa@chromium.org <alexeypa@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-21 10:16:41 +0000
commitda4daa7ff7b7393e7fa4491d1435653d8aa106a5 (patch)
tree5fba881f404af703dfa9b58a35a1ac2671971a0a /remoting/client/plugin/chromoting_instance.h
parent12ffada4b59da14b009815b59b77350fdb3599a4 (diff)
downloadchromium_src-da4daa7ff7b7393e7fa4491d1435653d8aa106a5.zip
chromium_src-da4daa7ff7b7393e7fa4491d1435653d8aa106a5.tar.gz
chromium_src-da4daa7ff7b7393e7fa4491d1435653d8aa106a5.tar.bz2
Added the desktop shape fields to VideoPacket.
If the host passes the desktop shape region in a VideoPacket the client will use it to draw transparent regions. The client also informs the web-app of the desktop shape changes, so it can set the input passthrough region correctly. Review URL: https://chromiumcodereview.appspot.com/17511004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207789 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/client/plugin/chromoting_instance.h')
-rw-r--r--remoting/client/plugin/chromoting_instance.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/remoting/client/plugin/chromoting_instance.h b/remoting/client/plugin/chromoting_instance.h
index 40f470f..b98d922 100644
--- a/remoting/client/plugin/chromoting_instance.h
+++ b/remoting/client/plugin/chromoting_instance.h
@@ -18,6 +18,7 @@
#include "ppapi/c/pp_resource.h"
#include "ppapi/cpp/var.h"
#include "third_party/skia/include/core/SkPoint.h"
+#include "third_party/skia/include/core/SkRegion.h"
#include "third_party/skia/include/core/SkSize.h"
// Windows defines 'PostMessage', so we have to undef it before we
@@ -135,6 +136,7 @@ class ChromotingInstance :
// Called by PepperView.
void SetDesktopSize(const SkISize& size, const SkIPoint& dpi);
+ void SetDesktopShape(const SkRegion& shape);
void OnFirstFrameReceived();
// Return statistics record by ChromotingClient.
@@ -233,6 +235,9 @@ class ChromotingInstance :
scoped_ptr<PepperView> view_;
pp::View plugin_view_;
+ // Contains the most-recently-reported desktop shape, if any.
+ scoped_ptr<SkRegion> desktop_shape_;
+
scoped_ptr<PepperSignalStrategy> signal_strategy_;
scoped_ptr<protocol::ConnectionToHost> host_connection_;