Index: remoting/client/plugin/chromoting_instance.h |
diff --git a/remoting/client/plugin/chromoting_instance.h b/remoting/client/plugin/chromoting_instance.h |
index 9765f9688b5449bfa7d752524c18d663df1c7c5d..9dc805e60ba354e3e772eaaa90c378c755f02ff7 100644 |
--- a/remoting/client/plugin/chromoting_instance.h |
+++ b/remoting/client/plugin/chromoting_instance.h |
@@ -39,6 +39,7 @@ |
#include "remoting/protocol/cursor_shape_stub.h" |
#include "remoting/protocol/input_event_tracker.h" |
#include "remoting/protocol/mouse_input_filter.h" |
+#include "remoting/protocol/pin_fetcher_factory.h" |
namespace base { |
class DictionaryValue; |
@@ -56,6 +57,7 @@ class ChromotingStats; |
class ClientContext; |
class FrameConsumerProxy; |
class PepperAudioPlayer; |
+class PepperPinFetcher; |
class PepperView; |
class PepperXmppProxy; |
class RectangleUpdateDecoder; |
@@ -66,6 +68,7 @@ class ChromotingInstance : |
public ClientUserInterface, |
public protocol::ClipboardStub, |
public protocol::CursorShapeStub, |
+ public protocol::PinFetcherFactory, |
public pp::Instance, |
public base::SupportsWeakPtr<ChromotingInstance> { |
public: |
@@ -107,6 +110,7 @@ class ChromotingInstance : |
virtual void OnConnectionReady(bool ready) OVERRIDE; |
virtual protocol::ClipboardStub* GetClipboardStub() OVERRIDE; |
virtual protocol::CursorShapeStub* GetCursorShapeStub() OVERRIDE; |
+ virtual protocol::PinFetcherFactory* GetPinFetcherFactory() OVERRIDE; |
// protocol::ClipboardStub interface. |
virtual void InjectClipboardEvent( |
@@ -116,6 +120,12 @@ class ChromotingInstance : |
virtual void SetCursorShape( |
const protocol::CursorShapeInfo& cursor_shape) OVERRIDE; |
+ // protocol::PinFetcherFactory interface. |
+ virtual scoped_ptr<protocol::PinFetcher> CreatePinFetcher() OVERRIDE; |
+ |
+ // Called by PepperPinFetcher. |
+ void FetchPin(base::WeakPtr<PepperPinFetcher> pin_fetcher); |
+ |
// Called by PepperView. |
void SetDesktopSize(const SkISize& size, const SkIPoint& dpi); |
void OnFirstFrameReceived(); |
@@ -133,6 +143,7 @@ class ChromotingInstance : |
void NotifyClientResolution(int width, int height, int x_dpi, int y_dpi); |
void PauseVideo(bool pause); |
void PauseAudio(bool pause); |
+ void OnPinFetched(const std::string& shared_secret); |
// Return statistics record by ChromotingClient. |
// If no connection is currently active then NULL will be returned. |
@@ -210,6 +221,10 @@ class ChromotingInstance : |
// connection. |
scoped_refptr<PepperXmppProxy> xmpp_proxy_; |
+ // PIN Fetcher. |
+ bool use_async_pin_dialog_; |
+ base::WeakPtr<PepperPinFetcher> pin_fetcher_; |
+ |
base::WeakPtrFactory<ChromotingInstance> weak_factory_; |
DISALLOW_COPY_AND_ASSIGN(ChromotingInstance); |