summaryrefslogtreecommitdiffstats
path: root/client/red_client.h
diff options
context:
space:
mode:
authorArnon Gilboa <agilboa@redhat.com>2010-07-19 10:29:47 +0300
committerAlon Levy <alevy@redhat.com>2010-07-19 10:30:19 +0300
commitce03f5449d68b2f0201dce409a81280300120069 (patch)
tree62f0877b9fd7f695253aa26f0ed046e873efbe66 /client/red_client.h
parent4f8545ed628fbb89a893297c5fdf276511284b33 (diff)
downloadspice-ce03f5449d68b2f0201dce409a81280300120069.tar.gz
spice-ce03f5449d68b2f0201dce409a81280300120069.tar.xz
spice-ce03f5449d68b2f0201dce409a81280300120069.zip
client: add clipboard support
* windows - untested * linux - small strings both ways, large implemented differently: * client to guest - support INCR * guest to client - we supply a single possibly very large property * requires server changes in next patch to work with spice-vmc
Diffstat (limited to 'client/red_client.h')
-rw-r--r--client/red_client.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/client/red_client.h b/client/red_client.h
index 9603bfe7..fd1a9b4f 100644
--- a/client/red_client.h
+++ b/client/red_client.h
@@ -186,6 +186,7 @@ public:
PixmapCache& get_pixmap_cache() {return _pixmap_cache;}
uint64_t get_pixmap_cache_size() { return _pixmap_cache_size;}
void on_display_mode_change();
+ void on_clipboard_change();
void for_each_channel(ForEachChannelFunc& func);
void on_mouse_capture_trigger(RedScreen& screen);
@@ -222,6 +223,8 @@ private:
void handle_migrate_switch_host(RedPeer::InMessage* message);
void on_agent_reply(VDAgentReply* reply);
+ void on_agent_clipboard(VDAgentClipboard* clipboard, uint32_t size);
+ void post_agent_clipboard();
ChannelFactory* find_factory(uint32_t type);
void create_channel(uint32_t type, uint32_t id);
@@ -250,9 +253,13 @@ private:
bool _agent_connected;
bool _agent_mon_config_sent;
bool _agent_disp_config_sent;
+ //FIXME: rename to in/out, extract all agent stuff?
VDAgentMessage* _agent_msg;
uint8_t* _agent_msg_data;
uint32_t _agent_msg_pos;
+ VDAgentMessage* _agent_out_msg;
+ uint32_t _agent_out_msg_size;
+ uint32_t _agent_out_msg_pos;
uint32_t _agent_tokens;
AutoRef<AgentTimer> _agent_timer;