Alexander Larsson
c2ce462486
broadway: Add debug logging framework for js
2011-03-14 10:05:24 +01:00
Alexander Larsson
e2f8215751
broadway: Fix typo that broke window hiding
2011-03-14 09:51:54 +01:00
Alexander Larsson
6713fe9ca4
broadway: Get query_state window coords from browser side
2011-03-11 21:39:11 +01:00
Alexander Larsson
27848432c7
broadway: Split out getPositionsFromAbsCoord from getPositionsFromEvent
2011-03-11 21:28:39 +01:00
Alexander Larsson
54905a8986
broadway: Fix up a bunch of js style issues
2011-03-11 21:12:57 +01:00
Alexander Larsson
cc808ae063
broadway: Move event coordinate calculation to browser side
2011-03-11 21:10:23 +01:00
Alexander Larsson
0cefd54122
broadway: Implement pointer query_status
2011-03-11 14:56:31 +01:00
Alexander Larsson
614eb3b3d7
broadway: Add _gdk_broadway_display_block_for_input
2011-03-11 14:45:13 +01:00
Alexander Larsson
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
Alexander Larsson
7c12e5f27e
broadway: Implement gdk_display_flush
2011-03-11 14:37:39 +01:00
Alexander Larsson
71aa55d291
broadway: Call device vfunc to get device state
...
We want only one place where we get device state.
2011-03-11 08:26:37 +01:00
Alexander Larsson
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
Alexander Larsson
d4e2414d4a
broadway: Add serial tracking and roundtripping
2011-03-10 14:58:47 +01:00
Alexander Larsson
3914d0af38
broadway: Clean up protocol message writing a bit
...
Centralize the header writing so we can extend it later.
Don't opencode the size of element when increasing p.
2011-03-10 13:59:30 +01:00
Alexander Larsson
d8f061ad42
[broadway] Update to new GDK backend APIs
2011-02-11 15:59:50 +01:00
Alexander Larsson
a3b227ff9e
[broadway] Remove unused grab_count from GdkBroadwayDisplay
...
We don't need this anymore since server grabs is now an x-only feature
2011-01-20 13:40:41 +01:00
Alexander Larsson
cbc324d846
[broadway] Prefix internal functions with broadway
2011-01-20 13:40:34 +01:00
Alexander Larsson
2c0012b76b
[broadway] Remove gdk_set_locale
2011-01-20 13:19:01 +01:00
Alexander Larsson
549610a8dd
[broadway] Remove unused input window stuff
2011-01-20 13:18:15 +01:00
Alexander Larsson
60c2b80bf0
[broadway] Remove all leftover _gdk_windowing_ functions
2011-01-20 13:12:26 +01:00
Alexander Larsson
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
Alexander Larsson
190f533258
[broadway] Remove unnecessary backend-specific function
...
These were just blindly copied from the X backend
2010-12-04 22:59:04 +01:00
Alexander Larsson
7dbbc54370
[broadway] Remove unneeded _gdk_window_impl_get_type call
2010-12-04 22:54:45 +01:00
Alexander Larsson
895922569e
[broadway] Update to the new drawable-less APIs
2010-12-04 22:31:28 +01:00
Alexander Larsson
80f332308f
[broadway] Add initial keyboard event support
2010-11-25 22:09:34 +01:00
Alexander Larsson
4aac045a30
[broadway] Don't return undefined counts in keymap calls
2010-11-25 22:09:34 +01:00
Alexander Larsson
667d23aa7c
[broadway] Hook mousewheel scrolling
2010-11-25 22:09:33 +01:00
Alexander Larsson
d6029949e6
[broadway] Disable context menu so rmb works
2010-11-25 22:09:33 +01:00
Alexander Larsson
4004882b92
[broadway] Only change window positioning for toplevels not e.g. menus
2010-11-25 22:09:33 +01:00
Alexander Larsson
c1a35afa5f
[broadway] Don't have mouse_in_toplevel point to hidden or destroyed window
2010-11-25 22:09:33 +01:00
Alexander Larsson
0b6265b76a
[broadway] Only allow one input session
2010-11-25 22:09:33 +01:00
Alexander Larsson
a4fc901c07
[broadway] Handle errors in input nicer
...
Also, fix a leak
2010-11-25 22:09:33 +01:00
Alexander Larsson
9cc073803f
[broadway] Only open one websocket for input!
2010-11-25 22:09:33 +01:00
Alexander Larsson
e7169f75e6
Move send_error up
2010-11-25 22:09:33 +01:00
Alexander Larsson
1b3efb3599
Save current input request
2010-11-25 22:09:33 +01:00
Alexander Larsson
1ba38a48d7
[broadway] Remove old unused declarations
2010-11-25 22:09:33 +01:00
Alexander Larsson
7667ad456b
[broadway] Avoid crash if mask is NULL
2010-11-25 22:09:33 +01:00
Alexander Larsson
b23fd41449
[broadway] Fix warning
2010-11-25 22:09:33 +01:00
Alexander Larsson
ccab600fb4
Move event generation to gdkeventsource.c
2010-11-25 22:09:33 +01:00
Alexander Larsson
0539303dfc
Handle output errors correctly
2010-11-25 22:09:33 +01:00
Alexander Larsson
0ca5a1a574
[broadway] Track errors in BroadwayOutput
2010-11-25 22:09:33 +01:00
Alexander Larsson
ce5cccf0ab
[broadway] Fix typo in assignment
2010-11-25 22:09:33 +01:00
Alexander Larsson
e8117544a0
[broadway] Convert broadway.c to use glib stuff
2010-11-25 22:09:33 +01:00
Alexander Larsson
fcce2986ce
[broadway] Keep track of the GSocketConnection for the output
2010-11-25 22:09:32 +01:00
Alexander Larsson
f407b4a5f5
Rename BroadwayClient to BroadwayOutput
2010-11-25 22:09:32 +01:00
Alexander Larsson
5a9f7a1e35
[broadway] Fix warning in demo
2010-11-25 22:09:32 +01:00
Alexander Larsson
1bc7bc5542
[broadway] Initialize masks to zero everywhere to avoid valgrind warnings
2010-11-25 22:09:32 +01:00
Alexander Larsson
77907fec79
Move global window list to per-display
2010-11-25 22:09:32 +01:00
Alexander Larsson
08a180a699
[broadway] Hack up window placement for demo
2010-11-25 22:09:32 +01:00
Alexander Larsson
b82ed84709
[broadway] Implement window resize
2010-11-25 22:09:32 +01:00
Alexander Larsson
65f767a363
[broadway] NULL out ref_surface on resize too
2010-11-25 22:09:32 +01:00
Alexander Larsson
2e1f6e09e5
[broadway] Add some fuzz to rectangle scanner
...
We don't want a bazillion tiny rectangles, so add some fuzz
to the rectangle scanners so we get less but larger rectangles.
2010-11-25 22:09:32 +01:00
Alexander Larsson
5ec2531e9b
[broadway] Switch autocrop to smarter rectangle search
2010-11-25 22:09:32 +01:00
Alexander Larsson
e88a18e0ea
[broadway] Add realloc wrapper
2010-11-25 22:09:32 +01:00
Alexander Larsson
d0e403c54d
[broadway] Fix up scrolling
2010-11-25 22:09:32 +01:00
Alexander Larsson
bed0ccba9d
[broadway] Handle window moves
2010-11-25 22:09:32 +01:00
Alexander Larsson
ec4a6c4a5f
[broadway] Implement _gdk_windowing_window_at_device_position
2010-11-25 22:09:31 +01:00
Alexander Larsson
93fec05183
[broadway] Track last mouse position
2010-11-25 22:09:30 +01:00
Alexander Larsson
e64a38eeef
[broadway] Fix x/y mismatch in canvas position
2010-11-25 22:09:30 +01:00
Alexander Larsson
5a49bfe96a
Fix some type warnings
2010-11-25 22:09:30 +01:00
Alexander Larsson
e6c340519c
[broadway] Send diffs as bilevel rgba instead of true diff
...
The true diff only works if the destination keeps perfect 32bit
canvas data, which is not always true. So, instead we send only
changed pixels, masking the others to 0 via alpha 0.
2010-11-25 22:09:30 +01:00
Alexander Larsson
6fe849d4f1
[broadway] Send and use canvas ids in events
2010-11-25 22:09:30 +01:00
Alexander Larsson
d211d78eef
[broadway] Track window<->id mapping
2010-11-25 22:09:30 +01:00
Alexander Larsson
cdd274a55c
[broadway] Missed a place to use event time
2010-11-25 22:09:30 +01:00
Alexander Larsson
8f9c6eb1a9
[broadway] clean up input sending js
2010-11-25 22:09:30 +01:00
Alexander Larsson
65d4edbd5b
[broadway] Send event timestamps from client
2010-11-25 22:09:30 +01:00
Alexander Larsson
2e8f21cb1b
[broadway] Allow loading client.html as "/" only
2010-11-25 22:09:30 +01:00
Alexander Larsson
2ee6dbd998
Remove unneeded copy of region
2010-11-25 22:09:30 +01:00
Alexander Larsson
163a278d13
Fix button numbers in events (starts with 1, not 0)
2010-11-25 22:09:30 +01:00
Alexander Larsson
884527a958
[broadway] Initial work on mouse events
2010-11-25 22:09:30 +01:00
Alexander Larsson
ee6b07bf15
[broadway] remove some spew
2010-11-25 22:09:29 +01:00
Alexander Larsson
95df67f47b
[broadway] don't sync the root window
2010-11-25 22:09:29 +01:00
Alexander Larsson
0a20ab58fa
[brodway] Don't send 0x0 deltas, they confuse the client
2010-11-25 22:09:29 +01:00
Alexander Larsson
1e3dffeee9
Send mouse events from js
2010-11-25 22:09:29 +01:00
Alexander Larsson
852b317b4f
Initial sketch of websockets support
2010-11-25 22:09:29 +01:00
Alexander Larsson
f11a7d2fde
Don't put output on stdin, instead do it on http connection
2010-11-25 22:09:29 +01:00
Alexander Larsson
8a0429b42d
Flesh out http server to handle client.html and broadway.js
2010-11-25 22:09:29 +01:00
Alexander Larsson
b07ead64ed
Add makerules to turn client.html and broadway.js into #include files
2010-11-25 22:09:29 +01:00
Alexander Larsson
ded9bc698b
Add initial http server
2010-11-25 22:09:29 +01:00
Alexander Larsson
0b85341737
Add broadway javascript and html part
2010-11-25 22:09:29 +01:00
Alexander Larsson
6651eab293
[broadway] Initial hookup of broadway client
2010-11-25 22:09:29 +01:00
Alexander Larsson
cb056e3738
[broadway] Fix up nvisuals handling
2010-11-25 22:09:29 +01:00
Alexander Larsson
db288f3233
[broadway] Ensure gdk_ref_cairo_surface object can be destroyed
...
If we return a direct ref that is not possible, since we own a ref to it.
This is problematic as the gdkwindow.c code uses destruction to track
outstanding surfaces.
We fix this by returning a subsurface.
2010-11-25 22:09:29 +01:00
Alexander Larsson
f02b7c9ed2
[broadway] Copy regions on last_surface during translations too
...
This will help make scrolling more efficient
2010-11-25 22:09:29 +01:00
Alexander Larsson
60cf2d53eb
Track last_surface properly
2010-11-25 22:09:29 +01:00
Alexander Larsson
7f0e43c0fd
[broadway] Import broadway lib
...
We put this in gtk+ for now since it will be synced initially, but
it avoids using glib so that it can be used lower in the stack if
required (e.g. in cairo later).
2010-11-25 22:09:29 +01:00
Alexander Larsson
d707d057c2
[broadway] Rename X11 -> Broadway in all code
...
This just runs:
for i in *.[ch]; do
sed -i s/DisplayX11/DisplayBroadway/g $i;
sed -i s/PrivateX11/PrivateBroadway/g $i;
sed -i s/ImplX11/ImplBroadway/g $i;
sed -i s/KeymapX11/KeymapBroadway/g $i;
sed -i s/ScreenX11/ScreenBroadway/g $i;
sed -i s/GdkX11Monitor/GdkBroadwayMonitor/g $i;
sed -i s/_X11/_BROADWAY/g $i;
sed -i s/x11/broadway/g $i;
done
2010-11-25 22:09:29 +01:00
Alexander Larsson
ce6ae54607
[broadway] Send MAP/UNMAP events for impl windows
2010-11-25 22:09:29 +01:00
Alexander Larsson
2ecaeb149f
[broadway] Implement window translation
2010-11-25 22:09:28 +01:00
Alexander Larsson
73f9c0cc00
[broadway] Track dirty windows
2010-11-25 22:09:28 +01:00
Alexander Larsson
85515b7775
[broadway] Keep track of all (toplevel) windows
2010-11-25 22:09:28 +01:00
Alexander Larsson
c456e98880
Remove X use from broadway backend
2010-11-25 22:09:28 +01:00
Alexander Larsson
dffa6e0da7
Remove X based dnd
2010-11-25 22:09:28 +01:00
Alexander Larsson
a54e556ad8
Remove event translators
2010-11-25 22:09:28 +01:00
Alexander Larsson
5b480e1b0d
[broadway] Copy X backend to broadway
2010-11-25 22:09:19 +01:00