Wez Furlong
4878aef542
factor out clipboard bits as a trait
...
This will make it easier to plug in macos support later.
2018-02-22 22:53:50 -08:00
Wez Furlong
315d9732c9
remove blank line from readme
2018-02-22 22:22:04 -08:00
Wez Furlong
717612bd25
more doc tweaks
2018-02-22 22:21:13 -08:00
Wez Furlong
64c0873ba3
don't fail if lcd filtering is not supported
...
This was happening on a fedora based distro
2018-02-22 22:14:33 -08:00
Wez Furlong
43e752bb60
readme update
2018-02-22 22:09:40 -08:00
Wez Furlong
ca9e9c60c7
maybe build harfbuzz on travis
2018-02-22 21:48:49 -08:00
Wez Furlong
296c27d3ff
rustfmt
2018-02-22 21:16:02 -08:00
Wez Furlong
8d6364fa80
unbundle the generated harfbuzz rust bindings
2018-02-22 21:10:50 -08:00
Wez Furlong
9673c8c1b7
roll back bundling of harfbuzz
...
This will likely break travis; I'll follow up with something to help with that.
Refs: https://github.com/wez/wezterm/issues/1
2018-02-22 21:07:17 -08:00
Wez Furlong
4a66bf98ca
"centralize" conn.flush()
...
I've noticed a bit of sluggishness when pasting text from the
terminal and into chrome. This doesn't fix it, but it moves
things a bit closer to how they should be.
2018-02-22 20:55:03 -08:00
Wez Furlong
6bf691947d
fixup sluggish selection dragging
2018-02-22 14:36:06 -08:00
Wez Furlong
6232ebf1c6
make refresh rate more regular
2018-02-22 14:34:57 -08:00
Wez Furlong
c8f3add5cc
At is also covered by ReceivedCharacter
2018-02-22 14:28:56 -08:00
Wez Furlong
42323a5be8
plumb clipboard stuff into the wakeup stuff
2018-02-22 09:02:01 -08:00
Wez Furlong
3fb247d22c
avoid spurious unhandled warning about these keys
2018-02-22 08:48:20 -08:00
Wez Furlong
d03564aa10
paint after each window input, remember mods for text input
...
Also need to tweak how we handle ALT-x and CTRL-x as the case of the input
is different with glium vs. xcb
2018-02-22 08:41:51 -08:00
Wez Furlong
697f07cb51
Don't need to worry about MAPPING_NOTIFY events for clipboard
2018-02-22 08:41:27 -08:00
Wez Furlong
79ebf717e8
provide a more targeted channel for wakeups
...
This allows using the mio poll timer as the signal for drawing
frames, rather than always drawing them after each byte is read
from the pty. We're using 50ms as the frame interval at the moment.
2018-02-22 01:44:07 -08:00
Wez Furlong
f6a95aafcf
use less cpu while idling
...
This does mean that we paint more frequently (basically after every
read from the pty), so our perf for large files is down.
2018-02-22 01:15:28 -08:00
Wez Furlong
ac7d2a9cda
simplify child waiting
2018-02-22 00:35:51 -08:00
Wez Furlong
c9c5b25b01
suppress dead code warning about clip_thread
...
We want it to live in the struct until it Drops, and the compiler
is helpfully telling us that we don't access it.
2018-02-22 00:23:11 -08:00
Wez Furlong
6f3b6d7018
remove unused x11 dep
2018-02-22 00:19:12 -08:00
Wez Furlong
bd4e745380
go all-in on glutin and remove my own xcb based code
2018-02-22 00:18:10 -08:00
Wez Furlong
3c379978d2
enable paste and link clicking in glutin backend
2018-02-22 00:07:04 -08:00
Wez Furlong
8cb8d7d613
wire up sigchld
2018-02-21 23:51:52 -08:00
Wez Furlong
df0e85abaf
hook up input events for glutin
2018-02-21 23:37:19 -08:00
Wez Furlong
ae5910af54
Start breaking the clipboard code out from the window code
...
This facilitates using the core of glutin without having too much
custom event loop dispatching.
2018-02-21 20:35:58 -08:00
Wez Furlong
d876d23a28
stub for a glutin based window
...
It can render the terminal but doesn't handle input of any kind.
2018-02-21 00:16:03 -08:00
Wez Furlong
5a7a543050
since glutin is pulled in anyway, simplify the glium dep
2018-02-20 22:55:16 -08:00
Wez Furlong
dca8b734e9
Use glium + glutin on !linux
2018-02-20 22:48:23 -08:00
Wez Furlong
c39dbdc356
stubs for macos font loading
2018-02-20 22:33:09 -08:00
Wez Furlong
ca1c3185de
rustfmt on travis
2018-02-20 22:13:07 -08:00
Wez Furlong
a7f2757452
rustfmt update
2018-02-20 22:08:19 -08:00
Wez Furlong
9dadffcf1e
fix compile for child waiter on !linux
2018-02-20 21:32:44 -08:00
Wez Furlong
e9e3e47b94
make fontconfig/freetype conditional
2018-02-20 20:55:03 -08:00
Wez Furlong
e2462ea16a
refactor rasterizer
2018-02-20 20:49:16 -08:00
Wez Furlong
999396bc45
separate out the fontconfig/freetype code
2018-02-20 20:20:37 -08:00
Wez Furlong
b35fc8a3b1
remove helper method
2018-02-20 19:58:47 -08:00
Wez Furlong
dd4c9d6683
refactor the font loading code
...
This is the first step towards making this code more system independent.
2018-02-20 19:53:50 -08:00
Wez Furlong
b66f93ad11
add non-linux sigchld waiter
2018-02-20 17:34:32 -08:00
Wez Furlong
a4b55ecffb
macos pty api has some mutable ptrs
2018-02-20 17:13:19 -08:00
Wez Furlong
8024acff69
macos related build tweaks
2018-02-20 17:12:17 -08:00
Wez Furlong
e2529d1837
Move opengl code into its own module
2018-02-20 15:46:05 -08:00
Wez Furlong
4efef794fe
move Renderer to its own file
...
It is now independent of the X11 code
2018-02-20 15:43:42 -08:00
Wez Furlong
39a0b6c9fd
extract render code into Renderer class
2018-02-20 15:33:21 -08:00
Wez Furlong
e1cd44922f
move x11 code around
...
idea is to reduce the cfg attributes and make it easier to
split into system dependent renderers
2018-02-20 15:02:39 -08:00
Wez Furlong
5a99dd143c
move hbwrap into harfbuzz crate
2018-02-20 14:32:28 -08:00
Wez Furlong
fe1ae0b7eb
Be more particular about platform deps
2018-02-20 14:17:28 -08:00
Wez Furlong
828580a261
add badges to readme
2018-02-20 13:50:45 -08:00
Wez Furlong
0b68ab0c58
sudo is required to make kcov work
...
travis-ci issue 9061 has the details. I'm not linking that by url
because I don't want to surface this repo too publically already.
2018-02-20 13:41:05 -08:00