Wez Furlong
01de37b709
fix Sixel HLS interpretation
...
Two issues here:
* The hue angles need adjusting to work with the palette library
* The resultant RGB color had the wrong gamma level, resulting in
an overly bright image.
refs: https://github.com/wez/wezterm/issues/775
2021-05-09 11:43:26 -07:00
Wez Furlong
5f5a48c830
tidy up log levels for wgpu
2021-05-09 10:59:48 -07:00
Wez Furlong
c2afe83d5d
optimize resize event processing during live resize
...
This works by coalescing a sequence of resize/repaint events and
taking the most recent one.
2021-05-09 10:28:25 -07:00
Wez Furlong
e92e912443
refactor WindowEvent handling
2021-05-09 09:58:20 -07:00
Wez Furlong
99cc5a2242
changelog for #699
...
closes: https://github.com/wez/wezterm/issues/699
2021-05-09 08:21:38 -07:00
Wez Furlong
7cfbd133ac
fixup warning in wgpu example
2021-05-09 08:20:03 -07:00
Wez Furlong
b8acdf592f
fix panic when double-click-selection drags across line boundary
...
closes: https://github.com/wez/wezterm/issues/762
2021-05-09 08:17:56 -07:00
Wez Furlong
55289013ed
wezterm cli split-pane
now respects cwd of source pane
...
closes: https://github.com/wez/wezterm/issues/766
2021-05-09 08:02:35 -07:00
Wez Furlong
f4e9668952
fix scaling of -->
ligature in base font
...
refs: https://github.com/wez/wezterm/issues/699
2021-05-09 07:19:18 -07:00
Kerfuffle
258038cd16
docs: Correct Lua example for PasteFrom action. ( #773 )
2021-05-09 06:54:09 -07:00
Wez Furlong
4e6f341f10
window: wayland support is no longer optional at build time
2021-05-08 17:48:58 -07:00
Wez Furlong
35351a97b4
x11: don't need to ref gl context in window any more
...
This is now managed by the client application
2021-05-08 15:05:07 -07:00
Wez Furlong
5f59bf25be
window: tidy up infinite sleeps
...
refs: #770
2021-05-08 14:58:07 -07:00
Wez Furlong
4c847ff4ff
window: remove now-dead bits on macos
...
refs: #770
2021-05-08 14:12:30 -07:00
Wez Furlong
5f612c17f5
windows: remove some now-dead code
...
refs: #770
2021-05-08 13:04:59 -07:00
Wez Furlong
7d301b91a7
x11/wayland: reduce frequency of core event loop
...
In an earlier incarnation we needed to wake up more often to paint,
but we now should have reliable event sources for all of the
invalidation cases and we can thus sleep for much longer in
the main event loop.
refs: #770
2021-05-08 12:59:33 -07:00
Wez Furlong
a884021074
window: remove Connection::schedule_timer
...
smol's Timer is used to replace this concept
refs: #770
2021-05-08 12:38:34 -07:00
Wez Furlong
fdce2d71d0
decompose period maintenance function
...
Split it into its component parts, and change the new dispatch
loop to sleep the appropriate interval only when needed.
refs: #770
2021-05-08 12:28:19 -07:00
Wez Furlong
b5bf25a9c5
remove check_for_dirty_lines_and_invalidate_selection from periodic
...
Since we now always check this during rendering, and we have a reliable
event for pane output, we don't need this check in the period task.
refs: #770
2021-05-08 11:32:12 -07:00
Wez Furlong
ed6987298a
mux: remove window invalidation polling
...
Add a mux event for this insteead.
refs: https://github.com/wez/wezterm/issues/770
2021-05-08 11:25:03 -07:00
Wez Furlong
58157c47a9
config: can now subscribe to config change events
...
This removes a couple of periodic config polls
refs: https://github.com/wez/wezterm/issues/770
2021-05-08 11:06:07 -07:00
Wez Furlong
1cbaf55640
change mux empty poll to mux empty event
...
As part of reducing the amount of regularly scheduled stuff wezterm
does in the background, this commit restructures how an empty mux
is detected; now when the mux prunes dead windows it will emit
an Empty event.
The Activity type will now schedule a prune when it is dropped,
which will clean up and trigger the Empty event.
refs: https://github.com/wez/wezterm/issues/770
2021-05-08 10:25:49 -07:00
Wez Furlong
7cd9f32494
add some error context on notif dispatching
...
This was helpful when running down the situation in the previous
commit.
2021-05-08 10:21:44 -07:00
Wez Furlong
325e755216
window: don't propagate errors from close notif channel
...
When a window is being destroyed we expect the receiver end
to be disconnected, so we don't want to break out of the
message loop if a couple of residual windows fail to notify.
2021-05-08 10:20:26 -07:00
Wez Furlong
453cfc1813
avoid a panic during shutdown
2021-05-08 09:36:20 -07:00
Wez Furlong
e81fb6e721
make alpha work on macos
2021-05-08 09:36:20 -07:00
Wez Furlong
0503abc63a
fixup build on windows, make transparent
2021-05-08 09:36:20 -07:00
Wez Furlong
655eef271f
fixup build on macos
2021-05-08 09:36:20 -07:00
Wez Furlong
058c3f612f
add wgpu example
2021-05-08 09:36:19 -07:00
Wez Furlong
f4939c510b
impl raw window handle on Window
2021-05-08 09:36:19 -07:00
Wez Furlong
c4e1f2434a
add raw-window-handle impls
2021-05-08 09:36:19 -07:00
Wez Furlong
3d760653b4
window: macos: disable window restoration
2021-05-08 09:36:19 -07:00
Wez Furlong
a44607fb3f
with_window inner from FnMut -> FnOnce
...
Not sure why it was FnMut, but this tidies up an awkward
option/take/unwrap thing in notify().
2021-05-08 09:36:19 -07:00
Wez Furlong
fb72338689
window: macos set gl layer placement to top-left
2021-05-08 09:36:19 -07:00
Wez Furlong
89dfeb69d6
tweak message pumping around paint on win32
...
It's not perfect; the revised code won't repaint immediate during
resize which can make the window a little "wobbly" during resize.
2021-05-08 09:36:19 -07:00
Wez Furlong
2e74663628
fixup log level for context loss
2021-05-08 09:36:19 -07:00
Wez Furlong
630d9d215b
fixup build on windows
...
and correct the notify same thread optimization on unix
2021-05-08 09:36:19 -07:00
Wez Furlong
0f384b5c06
make window.notify more efficient on unix
...
avoid going through an extra queue if we already are in the right place
2021-05-08 09:36:19 -07:00
Wez Furlong
9fd04f6024
fixup linux build
2021-05-08 09:36:19 -07:00
Wez Furlong
5d037eae52
adjust gui layer for window changes
2021-05-08 09:36:19 -07:00
Wez Furlong
4d73448387
window: fixup build for macos
2021-05-08 09:36:19 -07:00
Wez Furlong
fe836da980
window: fixup build on windows
2021-05-08 09:36:19 -07:00
Wez Furlong
d56bfd0b7f
window: separate gui window state from app state
...
Removes the callbacks type and replaces event dispatch with
an async capable channel.
This makes it a bit simpler to model some of the window internals,
and to prepare for a wgpu enabled future.
This changes have been tested only on linux so far.
2021-05-08 09:36:19 -07:00
Wez Furlong
f9a6e265e9
avoid panics in a couple of cases
...
test case: `cat /dev/random`
refs: https://github.com/wez/wezterm/issues/769
2021-05-08 01:02:44 -07:00
Wez Furlong
ff153ba27f
vtparse: recognize utf8 encoded c1 codes in more cases
...
There were two bugs here:
* \u8D (the utf8 encoded representation of 0x8d, aka: RI) was not
recognized as a C1 code and was instead passed through as printable
text.
* The \u8D is a zero-width sequence which means that a subsequent
set_cell call on the new empty-by-default line wouldn't allocate
any cells in the line array, and the assigment to the line would
panic.
This commit avoids the panic for the second case, and then fixes up
the vtparser to correctly recognize the sequence as a C1 control.
refs: https://github.com/wez/wezterm/issues/768
2021-05-08 00:39:29 -07:00
Wez Furlong
9a1314c5b1
docs: changelog for voidsymbol
2021-05-07 07:59:26 -07:00
Chris
2add312c5c
Allow VoidSymbol keycode to be seen by wezterm ( #759 )
...
* allow voidsymbol for key code
* update docs, cleanup
* cleanup and fmt of files
* remove unnecessary inputs
2021-05-07 07:54:24 -07:00
Wez Furlong
d64b785290
deps: update windows dep to 0.4 -> 0.9
...
dependabot keeps trying and failing because lots of things changed.
Let's try and get ahead of it...
2021-05-03 22:05:35 -07:00
Wez Furlong
e400f2f524
fixup build on windows
...
refs: https://github.com/wez/wezterm/issues/695
2021-05-03 21:40:20 -07:00
Wez Furlong
b2b0b8b011
fixup build on linux
...
refs: https://github.com/wez/wezterm/issues/695
2021-05-03 21:09:08 -07:00