<feed xmlns='http://www.w3.org/2005/Atom'>
<title>spice.git/client/windows/platform.cpp, branch 0.7.0</title>
<subtitle>Spice</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/'/>
<entry>
<title>spicec-win: add image copy-paste support</title>
<updated>2010-11-24T08:30:40+00:00</updated>
<author>
<name>Arnon Gilboa</name>
<email>agilboa@redhat.com</email>
</author>
<published>2010-11-24T08:30:40+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=dd31c0cbfd76a3154d6b6bd7ba47f30aec175815'/>
<id>dd31c0cbfd76a3154d6b6bd7ba47f30aec175815</id>
<content type='text'>
-currently png &amp; bmp
-using wspice libs cximage.lib &amp; png.lib
-jpg &amp; tiff will follow
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
-currently png &amp; bmp
-using wspice libs cximage.lib &amp; png.lib
-jpg &amp; tiff will follow
</pre>
</div>
</content>
</entry>
<entry>
<title>spice-win: handle multiple types on clipboard grab send &amp; receive</title>
<updated>2010-10-11T15:29:46+00:00</updated>
<author>
<name>Arnon Gilboa</name>
<email>agilboa@redhat.com</email>
</author>
<published>2010-10-11T13:07:14+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=57cea3235fd2c6a0b88ea67b4fbb350058ebe724'/>
<id>57cea3235fd2c6a0b88ea67b4fbb350058ebe724</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>spice-win: remove clipboard_changer hack</title>
<updated>2010-10-11T15:29:44+00:00</updated>
<author>
<name>Arnon Gilboa</name>
<email>agilboa@redhat.com</email>
</author>
<published>2010-10-06T14:47:45+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=1148edfea4593a72694375367cd97097e9dfced5'/>
<id>1148edfea4593a72694375367cd97097e9dfced5</id>
<content type='text'>
Instead of keeping a flag, we simply check wether the new owner is us or not
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of keeping a flag, we simply check wether the new owner is us or not
</pre>
</div>
</content>
</entry>
<entry>
<title>spice-win: handle type VD_AGENT_CLIPBOARD_NONE in Platform::on_clipboard_notify()</title>
<updated>2010-10-11T15:29:43+00:00</updated>
<author>
<name>Arnon Gilboa</name>
<email>agilboa@redhat.com</email>
</author>
<published>2010-10-06T14:00:39+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=f2ef521740d3b5a0bdc03408dc1648197c919f83'/>
<id>f2ef521740d3b5a0bdc03408dc1648197c919f83</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>spice-win: remove windows-specific bitmap cut &amp; paste support</title>
<updated>2010-10-11T15:29:00+00:00</updated>
<author>
<name>Arnon Gilboa</name>
<email>agilboa@redhat.com</email>
</author>
<published>2010-10-04T10:35:06+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=26814c4f9ca492bab8f11145a4a50cb63c695a7a'/>
<id>26814c4f9ca492bab8f11145a4a50cb63c695a7a</id>
<content type='text'>
will wait until png comes in
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
will wait until png comes in
</pre>
</div>
</content>
</entry>
<entry>
<title>spicec: Move setting of clipboard_owner to guest to platform code</title>
<updated>2010-10-06T17:17:08+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2010-10-06T10:37:05+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=7b84db7a7484b58fdde21029ef374baeaa0a4b51'/>
<id>7b84db7a7484b58fdde21029ef374baeaa0a4b51</id>
<content type='text'>
Atleast under x11 there is a race condition when setting the clipboard
owner to guest from the RedClient code rather then doing it in Platform.

After the XSetSelectionOwner() in Platform::on_clipboard_grab(), which runs
from the main message loop thread, the x11 event thread can receive a
SelectionRequest event from another x11 app, before the RedClient code
has set the clipboard owner, which will trigger the owner != guest
check in the SelectionRequest event handling code.

By moving the setting of the owner in to Platform::on_clipboard_grab() it
gets protected by the clipboard lock, which closes this tiny race.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Atleast under x11 there is a race condition when setting the clipboard
owner to guest from the RedClient code rather then doing it in Platform.

After the XSetSelectionOwner() in Platform::on_clipboard_grab(), which runs
from the main message loop thread, the x11 event thread can receive a
SelectionRequest event from another x11 app, before the RedClient code
has set the clipboard owner, which will trigger the owner != guest
check in the SelectionRequest event handling code.

By moving the setting of the owner in to Platform::on_clipboard_grab() it
gets protected by the clipboard lock, which closes this tiny race.
</pre>
</div>
</content>
</entry>
<entry>
<title>spicec-x11: Force processing of ownerchange event when releasing the cb</title>
<updated>2010-10-04T09:49:14+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2010-10-03T19:45:45+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=aabca2864d9439bc061feedd8d315b9aaac5c666'/>
<id>aabca2864d9439bc061feedd8d315b9aaac5c666</id>
<content type='text'>
Make sure we process the XFixesSetSelectionOwnerNotify event caused by
us setting the clipboard owner to none, directly after setting the owner
to none. Otherwise we may end up changing the clipboard owner to none, after
it has already been re-owned because the XFixesSetSelectionOwnerNotify event
to owner none is event is still pending when we set the new owner, and
then changes the owner back to none once processed messing up our clipboard
ownership state tracking.

I saw this happening when doing copy twice in succession inside the guest.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Make sure we process the XFixesSetSelectionOwnerNotify event caused by
us setting the clipboard owner to none, directly after setting the owner
to none. Otherwise we may end up changing the clipboard owner to none, after
it has already been re-owned because the XFixesSetSelectionOwnerNotify event
to owner none is event is still pending when we set the new owner, and
then changes the owner back to none once processed messing up our clipboard
ownership state tracking.

I saw this happening when doing copy twice in succession inside the guest.
</pre>
</div>
</content>
</entry>
<entry>
<title>Keep track of clipboard ownership</title>
<updated>2010-10-02T14:29:36+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2010-10-02T14:29:36+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=8a160078d0852ff5a2f8ec438cec1b18858e3c5d'/>
<id>8a160078d0852ff5a2f8ec438cec1b18858e3c5d</id>
<content type='text'>
Given that all clipboard handling is async, it is possible to for
example receive a request for clipboard data from the agent
while the client no longer owns the clipboard (ie a
VD_AGENT_CLIPBOARD_RELEASE message is in transit to the agent).

Thus it is necessary to keep track of our notion of clipboard ownership
and check received clipboard messages (both from other apps on the client
machine and from the agent) to see if they match our notion and if not
drop, or in case were a counter message is expected nack the clipboard
message.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Given that all clipboard handling is async, it is possible to for
example receive a request for clipboard data from the agent
while the client no longer owns the clipboard (ie a
VD_AGENT_CLIPBOARD_RELEASE message is in transit to the agent).

Thus it is necessary to keep track of our notion of clipboard ownership
and check received clipboard messages (both from other apps on the client
machine and from the agent) to see if they match our notion and if not
drop, or in case were a counter message is expected nack the clipboard
message.
</pre>
</div>
</content>
</entry>
<entry>
<title>Rename platform clipboard handling functions</title>
<updated>2010-10-02T13:32:48+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2010-10-02T11:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=deb849dfd54deafa894692f4e44208c2de9f33aa'/>
<id>deb849dfd54deafa894692f4e44208c2de9f33aa</id>
<content type='text'>
Rename the 4 platform clipboard functions which get called
upon receival of an agent clipboard message to on_clipboard_*

The old set_clipboard_* names were confusing as they suggest being
a class property setter (like set_event_listener) rather then
event handler, and set_clipboard_owner was causing a name conflict
with the next patch in this series.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rename the 4 platform clipboard functions which get called
upon receival of an agent clipboard message to on_clipboard_*

The old set_clipboard_* names were confusing as they suggest being
a class property setter (like set_event_listener) rather then
event handler, and set_clipboard_owner was causing a name conflict
with the next patch in this series.
</pre>
</div>
</content>
</entry>
<entry>
<title>Change VD_AGENT_CLIPBOARD_GRAB to an array of types</title>
<updated>2010-10-01T18:01:47+00:00</updated>
<author>
<name>Hans de Goede</name>
<email>hdegoede@redhat.com</email>
</author>
<published>2010-10-01T18:01:47+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/fidencio/public_git/spice.git/commit/?id=a2d645ffe3fa23e8c57950987c93c0fe8822238b'/>
<id>a2d645ffe3fa23e8c57950987c93c0fe8822238b</id>
<content type='text'>
A clipboard owner can indicate that it can supply the data the clipboard
owns in multiple formats, so make the data passed with a
VD_AGENT_CLIPBOARD_GRAB message an array of types rather then a single
type.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A clipboard owner can indicate that it can supply the data the clipboard
owns in multiple formats, so make the data passed with a
VD_AGENT_CLIPBOARD_GRAB message an array of types rather then a single
type.
</pre>
</div>
</content>
</entry>
</feed>
