Commit Graph

188 Commits

Author SHA1 Message Date
fangyuanziti
a1d1151017 add a new api: NewConnNet 2018-09-08 16:49:23 +02:00
Andrew Gallant
ef8155bf17 Formatting and 80 cols. 2018-09-08 16:49:23 +02:00
aarzilli
a548d9d0f7 Fix Issue #21: automatic calculation of alignment padding after lists 2018-09-08 16:49:22 +02:00
snyh
1f8bd79abe examples:randr use info.Connection to detect whether there has any Randr.Modes 2018-09-08 16:49:22 +02:00
snyh
64c6e6170d example/randr: check the GetOutputInfo's mode length (virtual head can have zero mode) 2018-09-08 16:49:22 +02:00
Andrew Gallant
76f9adb599 Use consistent extension names. Close #6. 2018-09-08 16:49:21 +02:00
Andrew Gallant
33509dbeb0 It appears that the "Str" type (which is built into the core X protocol)
doesn't specify any padding. So it has to be treated as a special case.

Close #12.
2018-09-08 16:49:21 +02:00
Andrew Gallant
ad9c35a02f shortcuts for the lazy 2018-09-08 16:49:20 +02:00
Andrew Gallant
2dc9914b5e When writing, don't pad the length of bytes produced from inner
structs/unions. Each type should take care of its own padding.

Close #14.
2018-09-08 16:49:20 +02:00
Andrew Gallant
f0385db3a7 Regenerate xgb with latest XML descriptions. 2018-09-08 16:49:20 +02:00
Andrew Gallant
5a07ac7108 Fix fmt'd output for union list writing. 2018-09-08 16:49:19 +02:00
Andrew Gallant
efe87cb908 Ignore the "fd" field for the time being (for the shm extension only). 2018-09-08 16:49:19 +02:00
Andrew Gallant
3b4adabee1 The sync and xinput extensions now use the switch field, which
XGB does not currently support. Therefore, I'm removing the sync and
xinput extensions.

This affects issues #11 and #13.
2018-09-08 16:49:19 +02:00
Axel Wagner
2104b8fcdf Export the logger (again)
Just enabling or disabling logging falls short of the power of
interfaces of go. A user is forced to either accept the logging to
stderr in the format defined by xgb or disable logging alltogether. By
exporting the logger, we can actually let the user decide where to log
in what format.
2018-09-08 16:49:18 +02:00
Andrew Gallant
38b293e74d Padding on a list is on the length of the list.
There was a bug where padding was being computed on each element of the
list. Close #5.
2018-09-08 16:49:18 +02:00
Andrew Gallant
b06a8ca976 Don't needlessly change source files every time. 2018-09-08 16:49:18 +02:00
Andrew Gallant
0685fb57e1 Update to latest xproto XML. 2018-09-08 16:49:17 +02:00
Andrew Gallant
4b20ffaf4f Updated to work with new xproto XML files.
Namely, the "doc" element is ignored. Also, I've sorted everything
before output so that diff isn't completely useless.
2018-09-08 16:49:17 +02:00
Andrew Gallant
5d96993ee1 Fixed a nasty bug where closing could cause ReadFull to crash
the program. Close #4.
2018-09-08 16:49:16 +02:00
Andrew Gallant
3658686aee gofmt 2018-09-08 16:49:16 +02:00
Andrew Gallant
e635de5e1d Provide access to the X display number in the XGB Conn. 2018-09-08 16:49:16 +02:00
Andrew Gallant (Ocelot)
269a7b9cc6 The hack continues. I've increased the event channel buffer. I know I'm
goofing here.

What I'd personally like to do is just use an "infinite" channel. That
is, push the limit of how many events can be processed to the machine
and not set an artificial limit in XGB. Some day...
2018-09-08 16:49:15 +02:00
Andrew Gallant (Ocelot)
13eff4bec3 Tests were move to xproto package a long time ago. Update README. 2018-09-08 16:49:15 +02:00
Andrew Gallant (Ocelot)
08275ebda8 Doc fixes and stop exporting ReplyChecked and ReplyUnchecked 2018-09-08 16:49:15 +02:00
Andrew Gallant (Ocelot)
a9eae45cb3 Refresh build. Eh. 2018-09-08 16:49:14 +02:00
Andrew Gallant (Ocelot)
22ceab8074 Add rules for installing all packages. 2018-09-08 16:49:14 +02:00
Andrew Gallant (Ocelot)
e9dc18b4f9 Doc fix. 2018-09-08 16:49:14 +02:00
Andrew Gallant (Ocelot)
744c9688cc Benchmark with gomaxprocs=3 too 2018-09-08 16:49:13 +02:00
Andrew Gallant (Ocelot)
8ee0ea9899 A pathological example for profiling purposes. Use 'make test'. 2018-09-08 16:49:13 +02:00
Andrew Gallant (Ocelot)
e960f4d34e Add some style guidelines. 2018-09-08 16:49:07 +02:00
632b3ae494 xgb-draw: double buffer, change color, cleanup 2018-09-06 18:17:30 +02:00
e8381d86ce xgb-draw: point interpolation 2018-09-05 12:31:23 +02:00
254ceb810c xgb-draw: proper brush stroke render 2018-09-05 12:30:38 +02:00
df082e1dee xgb-draw: add a demo drawing application
Just trying to see how fast XRender can be and such.
2018-09-03 16:51:01 +02:00
3e42402e2b xgb-text-viewer: add a demo text viewer
More of a real application and just needs pictures in order to bring
the parts I have so far all together.
2018-09-02 18:25:38 +02:00
c8fd1068d1 xgb-image: add support for the MIT-SHM extension 2018-09-02 18:25:37 +02:00
cea1792913 xgb-image: add a demo that shows a scaled picture 2018-09-02 18:25:37 +02:00
ff7518c74d xgb-keys: minimal example of reading keys 2018-09-02 18:25:37 +02:00
9e070e9648 xgb-monitors: add an experimental dumper 2018-09-02 18:25:36 +02:00
0c2853a8ae xgb-render: update comments 2018-09-02 18:25:36 +02:00
41e04fdc9f xgb-render: go back to RGBA because of alignment
Size 9 just happened to have the buffer 16 bytes wide.
2018-09-02 18:25:36 +02:00
23586eae01 xgb-render: give up on composite alpha 2018-09-02 18:25:35 +02:00
9424579c75 xgb-render: cleanup, tolerable glyph placement 2018-09-02 18:25:35 +02:00
32beda3c90 xgb-render: slightly simplify 2018-09-02 18:25:35 +02:00
30f2366f9a xgb-render: preliminary text rendering
I have finally got it working at all, now let's fix bounds etc.
2018-09-02 18:25:34 +02:00
215e3e8630 xgb-render: add some comments
Some containing code to list out potentially interesting information
from the X server.
2018-09-02 18:25:34 +02:00
44b01ccb17 xgb-window: add comparison with correct blending 2018-09-02 18:25:28 +02:00
0f7fcca7ce xgb-xrender: add a basic demo for XRender
So far just a conversion of xgb-window.go.
2018-09-02 18:24:14 +02:00
1fdf14f351 xgb-window: add a basic xgb demo
Demonstrating RGBA visuals and direct pixel values.
2018-09-02 18:24:14 +02:00
0ef66c7282 Update README 2018-09-02 18:24:14 +02:00