050702494b
broadway: Remove unused includes
2013-06-13 18:09:32 +02:00
f345051d36
displaymanager: Emit display-opened directly
...
Instead of letting every backend do it manually.
2013-04-19 16:18:25 -04:00
7ef508ff4a
displaymanager: Handle list of displays in base class
...
This moves the add/remove_display() functions from the subclasses to
GdkDisplay and GdkDisplayManager. It also gets rid of the list_displays
vfunc.
2013-04-15 15:43:26 +02:00
a6b29d73d7
gdkdisplay: Remove get_screen() and get_n_screens() vfuncs
2013-04-02 11:45:44 +02:00
3558e655b4
broadway: Proper handling of http port and display nr
2012-12-27 22:56:04 +01:00
fc96ef51d7
broadway: Initial version of separate broadway server
...
This kinda works but is very rudimentary
2012-12-27 22:56:03 +01:00
0a808bea54
broadway: Separate out the server parts
...
This (shouldn't) change any behaviour, but it moves the
webserver parts to a separate file, making the broadway display file
smaller and preparing for later separating out the server to its own
process.
2012-12-20 00:00:16 +01:00
a61b359498
GdkBroadwayDisplay: include proper port number in error trace
2012-12-05 11:23:35 +01:00
4dabc8ba84
GdkBroadwayDisplay: initialize GError before using it
2012-12-05 11:23:28 +01:00
db374a0a87
broadway: Use binary websockets if available
2012-10-01 14:58:57 +02:00
96e7ff73dd
broadway: Detect binary websockets support
2012-10-01 14:58:56 +02:00
9d0febc9a6
Change FSF Address
2012-02-27 17:06:11 +00:00
0481fbf7ce
broadway: terminate v7 input to avoid parsing uninit memory.
2012-01-31 10:39:01 +00:00
585a6652d5
Use G_SOURCE_CONTINUE/REMOVE
...
Now that GLib provides these macros, we should use them
to make the code more readable.
2012-01-30 19:12:27 -05:00
fa6ad2ca04
broadway: Properly handle masked websocket messages
...
Thanks to Rafal Luzynski for pointing this out.
https://bugzilla.gnome.org/show_bug.cgi?id=656521
2012-01-25 11:47:16 +01:00
24360a8076
gdk/*: Use g_list_free_full convenience function
2012-01-05 04:22:42 +01:00
981efc90b4
Fix uninitialized digest_len field, causing WebSocket handshake to g_assert.
...
g_checksum_get_digest checks to ensure that the passed digest_len is long
enough to hold the digest, before setting it to the actual length of the
digest returned. Digest_len is uninitialized in the code, so if you're
lucky it will be larger than 20 and everything will work fine. If you're
unlucky, g_checksum_get_digest will return either -1 or some number less
than 20, and the g_assert(digest_len==20) will fail.
2011-11-14 09:55:19 +01:00
14a17873de
broadway: Initial support fro V7+ websockets
...
Allows more modern browsers eg. firefox 5+ to use gtk/broadway
Auto-detects protocol version, and can switch between them at
as you connect a different browser.
This works to some extent, but seems to hang sometimes, for
instance the "button box" test in testgtk never shows up.
2011-11-10 10:12:28 +01:00
7c688cb8a6
gdk: Use const instead G_CONST_RETURN
2011-06-10 13:07:54 +01:00
0abd5e2767
[broadway] Stream data over websocket
...
The zlib compressed xmlhttprequest thing was a nice hack, but it doesn't
really work in production. Its not portable, doesn't have enought API
(missing notification for closed sockets) and having to synchronize
between two different connections in a reliable way is a pain.
So, we're going everything over the websocket. This is a pure switch,
but after this we want to modify the protocol to work better over
the uncompressed utf8 transport of websockets.
2011-04-18 20:51:53 +02:00
887743728f
[broadway] Handle keyboard modifiers in state
2011-04-14 21:36:42 +02:00
d6beabbff2
[broadway] Make the toplevel mode a url parameter
2011-04-10 20:16:13 +02:00
cad40b24e2
[broadway] Remove unused hashtables
2011-04-07 20:20:51 +02:00
095ccf9c11
[broadway] Serialize event times
...
Event times come from the browser and may change weirdly when we reconnect
with another browser, so we normalize these to be strictly increasing
and with a 5 second gap for each reconnect.
2011-04-07 19:12:51 +02:00
dd07f534f4
[broadway] Handle screen size
...
Without this menu placement doesn't work right
2011-04-07 15:10:39 +02:00
8c20b476df
[broadway] Track and report last and future state
...
This fixes the drawing area demo in gtk-demo
2011-04-07 14:36:30 +02:00
43aac66458
[broadway] Fix all unnecessary warnings
2011-04-07 10:03:17 +02:00
3b1fe05e78
[broadway] Wire up the delete event
2011-04-07 10:03:17 +02:00
adc05ae6b7
[broadway] Add configure event for browser-side geometry changes
...
Atm this only works for the useToplevelWindows case, but we can add
a browser wm to make use of it inside the browser too.
2011-04-07 10:03:17 +02:00
e1dcd6735e
[broadway] Remove unused query pointer message
2011-04-07 10:03:16 +02:00
a0048d5e70
[broadway] Add _gdk_broadway_display_consume_all_input
...
This parses and queues all currently availible input data non-blockingly.
Useful to ensure the latest up-to-date future info.
2011-04-07 10:03:16 +02:00
fdc2059edb
[broadway] Track future pointer events locations during parsing
...
We want this info so that we can avoid roundtrips and still get
a somewhat better querying for pointer locations.
2011-04-07 10:03:16 +02:00
1fa952fb04
[broadway] Add helper for processing input at idle
2011-04-07 10:03:16 +02:00
e113cf26fb
[broadway] Keep track of current real cursor window (sans grabs)
...
We need this to be able to do a non-roundtripping get-window.
2011-04-07 10:03:16 +02:00
ee1657d88e
[broadway] Break out _gdk_broadway_display_read_all_input_nonblocking
...
This is useful in other places, like when we want to iterate over
all messages recieved so far.
2011-04-07 10:03:16 +02:00
d664e78c94
[broadway] Make pointer grabs not roundtrip
...
Since we're really only initializing grabs (except for implicit
grabs at least) from the client side we might as well do all the grab
time checks on the client side to avoid unnecassary roundtrips.
2011-04-07 10:03:16 +02:00
8aad17592e
[broadway] Parse broadway input messages earlier
...
We now parse the broadway messages as soon as they are read from the wire.
This will let us sanely do lookahead in the message queue later.
2011-04-07 10:03:15 +02:00
084003953d
broadway: Make broadway port configurable with BROADWAY_DISPLAY
2011-03-14 15:58:55 +01:00
95b19bca33
broadway: Implement pointer grabs
2011-03-14 11:52:46 +01:00
614eb3b3d7
broadway: Add _gdk_broadway_display_block_for_input
2011-03-11 14:45:13 +01:00
e08396450d
broadway: Break out websockets parsing and message processing
...
We need this to be able to correctly handle the recieve buffer
during message processing. Without the split we would be
recursing over the use of it.
2011-03-11 14:41:03 +01:00
7c12e5f27e
broadway: Implement gdk_display_flush
2011-03-11 14:37:39 +01:00
0fa32e98a4
broadway: Change input handling to use polling rather than async reads
...
We do this because we need to be able to switch to using sync reads
when we're doing a roundtripping call, and that is too complex
with the async code.
2011-03-10 21:22:19 +01:00
d4e2414d4a
broadway: Add serial tracking and roundtripping
2011-03-10 14:58:47 +01:00
d8f061ad42
[broadway] Update to new GDK backend APIs
2011-02-11 15:59:50 +01:00
07db0e38b0
[broadway] Make broadway build with new gdk-backend setup
...
Convert all global functions to vtable calls, etc.
2011-01-19 19:52:51 +01:00
190f533258
[broadway] Remove unnecessary backend-specific function
...
These were just blindly copied from the X backend
2010-12-04 22:59:04 +01:00
0b6265b76a
[broadway] Only allow one input session
2010-11-25 22:09:33 +01:00
a4fc901c07
[broadway] Handle errors in input nicer
...
Also, fix a leak
2010-11-25 22:09:33 +01:00
e7169f75e6
Move send_error up
2010-11-25 22:09:33 +01:00