Wez Furlong
e3fa12ee41
refactor error/eof case in mux pty reader
2019-03-05 20:13:40 +00:00
Wez Furlong
b24f27d2a7
fix compilation with x11
2019-03-05 20:03:30 +00:00
Wez Furlong
1f9d95d57f
tweak executor trait for compat with x11
2019-03-04 23:13:37 +00:00
Wez Furlong
89dff14c4a
maybe fixup x11 build
2019-03-04 22:58:50 +00:00
Wez Furlong
2bfc4fe401
fix warning
2019-03-04 22:44:09 +00:00
Wez Furlong
75be9d31cc
maybe remove futurecore stuff from x11
2019-03-04 22:42:22 +00:00
Wez Furlong
4b4be6ac21
remove futurecore
2019-03-04 22:32:59 +00:00
Wez Furlong
12e93fce57
register mux as a gui thread local variable
2019-03-04 20:44:52 +00:00
Wez Furlong
aa6cfb00dd
thread executor through to mux code
2019-03-04 20:19:08 +00:00
Wez Furlong
ac016c0494
maybe remove a couple of poll_fn uses from x11
...
(I can't compile it locally atm)
2019-03-04 20:00:08 +00:00
Wez Furlong
152300ef5a
remove another use of futures from glutinloop
2019-03-04 19:47:35 +00:00
Wez Furlong
2fc8615fcf
remove awkward Rc<Self> from some spawning funcs in glutin windows
2019-03-04 19:41:49 +00:00
Wez Furlong
7afd586ad0
allow looking up the font system from the gui thread
...
This helps remove the Rc<events> thing from a couple of places
2019-03-04 16:05:42 +00:00
Wez Furlong
2ece60b45c
Rc<Config> -> Arc<Config>
2019-03-04 15:49:03 +00:00
Wez Furlong
1d37e44b62
move promise to its own crate
2019-03-04 15:38:56 +00:00
Wez Furlong
3ae0f7d110
prove concept with promise/future stuff + with_window
2019-03-04 15:32:52 +00:00
Wez Furlong
47f27fed13
add executor to the gui systems
2019-03-04 11:30:03 +00:00
Wez Furlong
e8a4f8f94c
add executor for promise/future library
2019-03-04 10:48:15 +00:00
Wez Furlong
ee60688966
expand map/chain helpers
2019-03-04 01:46:30 -08:00
Wez Furlong
7ef388e607
add promise library
2019-03-03 15:22:22 -08:00
Wez Furlong
5dfa5bca6b
allow spawning a future from another thread
...
The future will be polled by the gui thread.
I'm not totally convinced that this model is best.
2019-03-03 08:29:34 -08:00
Wez Furlong
d71ac26b93
add very bare bones skeleton for unix domain socket bits
2019-03-03 05:08:58 -08:00
Wez Furlong
8fa619d23f
fix transposed rows/cols
...
whoops; the inital impl and consumer didn't follow the doc comment,
so they were internally consistent, but when the windows started
to use this for sizing things looked weird!
2019-03-02 14:26:51 -08:00
Wez Furlong
f6fe029a4c
remove Tab::terminal
2019-03-02 14:17:21 -08:00
Wez Furlong
d45a1de63e
move xwin away from Terminal
2019-03-02 14:12:26 -08:00
Wez Furlong
d6cb4f3ff2
move most of gliumwindows away from directly accessing Terminal
2019-03-02 14:09:16 -08:00
Wez Furlong
fa0ea270f4
Tab::process -> Tab::is_dead
2019-03-02 13:36:28 -08:00
Wez Furlong
9520970b66
fixup linux/x11 build
2019-03-02 13:22:17 -08:00
Wez Furlong
20dcced8f7
fixup windows build
2019-03-02 13:16:25 -08:00
Wez Furlong
bb8c2c7876
adjust windows font fallback
...
I still can't get the emoji to render on windows, but these font names
are more appropriate choices.
2019-03-02 13:09:29 -08:00
Wez Furlong
e773cff24e
adjust tests for pty -> Write changes
2019-03-02 12:29:17 -08:00
Wez Furlong
ec2c270a38
remove non-blocking bit, allow dead_code attrs for helpers
2019-03-02 12:25:47 -08:00
Wez Furlong
871ce9a6c2
fix into_raw_fd impl
2019-03-02 12:22:42 -08:00
Wez Furlong
ce44746a9e
move conpty Read impl to OwnedHandle
2019-03-02 12:15:48 -08:00
Wez Furlong
8bef8987af
remove MasterPty Read impl
2019-03-02 12:13:17 -08:00
Wez Furlong
07420f5034
simplify dup impl
2019-03-02 12:11:46 -08:00
Wez Furlong
69afdda8ea
split reader out of pty() portion of Tab interface
2019-03-02 12:08:42 -08:00
Wez Furlong
a1f4f47141
tease writer and resize out of pty() usage
2019-03-02 11:36:00 -08:00
Wez Furlong
6c8a9e999e
splitting writer out of Tab::pty()
2019-03-02 11:27:11 -08:00
Wez Furlong
0c3410fb6a
factor out more of the mouse processing
2019-03-02 09:45:10 -08:00
Wez Furlong
61e7f2d0fe
slightly refine some mouse processing code
2019-03-02 09:40:05 -08:00
Wez Furlong
150225dd22
clippy
2019-03-02 09:33:58 -08:00
Wez Furlong
bc15fc4665
split mouse event processing into separate functions
2019-03-02 09:33:58 -08:00
Wez Furlong
5565ccd30e
remove host from key_down signature
2019-03-02 09:33:58 -08:00
Wez Furlong
8f13e53ac8
move gui keyboard shortcut processing to guicommon
2019-03-02 09:33:58 -08:00
Wez Furlong
f261f079f7
lift clipboard hotkeys up to gui layer
...
My original idea was that I would centralize of the key binding
logic in the terminalstate, but this places a bit of a burden on
the TerminalHost portion of the interface.
In particular: when running a multiplexer server we may be headless
or have multiple heads. In that scenario we want the terminal
to be backed by a virtualized screen, and that means removing
the direct callback to access eg: the host clipboard. This
diff is the first of a couple that have the goal of removing
those sorts of dependencies.
2019-03-02 09:33:58 -08:00
Wez Furlong
3ceb71026e
introduce a Renderable trait
2019-03-02 09:33:58 -08:00
Stephane Fontaine
a833cf29b4
X11: update readme to require OpenGl ES3
...
The story as I understand it:
The current shaders requires GLSL 3.30 but OpenGL ES 2.0 is bound to GLSL
1.20.
The confusion arise when creating EGL context. We ask for ES2 because crate egli
doesn't provide a ES3 one "yet". On a recent system, the driver will probably return
a ES3 conformant context anyway .. lucky for us because because the shaders won't
compile on ES2 (which does not even have a `out` keyword).
2019-03-01 22:53:21 -08:00
Wez Furlong
3d959e0f40
batch resize events in x11 backend
...
Similar to the previous commit for glium, this diff avoids
resize and render for every resize event coming in from xwindows.
Instead we buffer up the most recent window size, scheduling
a later call to assess and apply that data.
This improves resize performance.
2019-02-27 00:09:59 -08:00
Wez Furlong
699bd7aac1
batch resize/dpi changes in glium windows
...
This is recommended in the docs and allows deferring of the size
and scale to happen at the same time.
2019-02-26 21:39:18 -08:00