Wez Furlong
981d939298
More gracefully handle running out of texture space
...
I manually checked this by setting TEX_SIZE to a small value
and watching the log reallocate progressively larger sizes.
2018-02-24 23:05:20 -08:00
Wez Furlong
b81fb73c37
Really avoid underflow with apt
scrolling
...
I thought I took care of this in 7c0536f9a3
,
but I misunderstood how saturating_sub works. I still need to clamp
it within range.
2018-02-24 20:59:44 -08:00
Wez Furlong
f4d3ea6e05
remove stray debug print
2018-02-24 17:35:39 -08:00
Wez Furlong
4092796db3
Fix an issue where the background color rendered gray instead of black
...
When using the default monospace font on ubuntu (typicaly
DejaVuSansMono), the texture atlas would end up the bottom left pixel
being a shade of gray.
Since we were using (0,0) coords for whitespace cells, all whitespace
cells would appear shaded gray.
We now reserve a black pixel in the bottom left of the underline texture
and switch to that for whitespace instead.
I added Debug support to the ColorPalette while tracking this down,
and figured that I might as well keep it.
2018-02-24 17:28:35 -08:00
Wez Furlong
9737646978
fix delete
2018-02-24 15:58:38 -08:00
Wez Furlong
abc06620b8
add support for implicit hyperlinks
2018-02-24 15:43:02 -08:00
Wez Furlong
478c64e05e
Parse command line arguments
...
We can now run something other than the shell.
2018-02-23 08:41:46 -08:00
Wez Furlong
7af77d34a0
Improve wheel scrolling
...
We now scroll further if you wheel harder
2018-02-23 08:10:11 -08:00
Wez Furlong
90dd732aee
make selected and cursor text fg/bg configurable
...
Previously we only allowed changing the cursor bg color, now we
get 4 different color settings for this!
2018-02-23 07:57:52 -08:00
Wez Furlong
3f6a1f758b
restore original window position when exiting fullscreen
...
We do some bookkeeping of our own because the get_position() method
appears to return stale data on Linux.
2018-02-23 00:10:42 -08:00
Wez Furlong
d661cf2894
take a stab at hidpi scaling for Jacob
...
I noticed this looked crazy when he dragged the window between
screens, so maybe this is better?
2018-02-22 23:50:52 -08:00
Wez Furlong
2c74a9fe1b
Add primitive Alt-Enter shortcut for fullscreen mode
...
We'll want to make the bindings configurable in the future.
2018-02-22 23:31:20 -08:00
Wez Furlong
1245bfc065
use text mouse cursor by default, switch to hand cursor on hover
2018-02-22 23:22:08 -08:00
Wez Furlong
1fdbb33010
also need a receiver method
2018-02-22 23:06:50 -08:00
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