1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-26 06:42:12 +03:00
Commit Graph

1623 Commits

Author SHA1 Message Date
Wez Furlong
b0efba9300 improve linear f32 -> srgb8 conversion
This uses a combination of lookup tables and simd to reduce the
cpu utilization by about ~15% compared to the prior brute force
implementation.
2019-09-30 00:45:35 -07:00
Wez Furlong
07fcc96f5a window: disable alignment based optimization for fill_pixel 2019-09-29 20:59:20 -07:00
Wez Furlong
1e25003cb6 speed up rgb conversion from u8 -> linear f32 2019-09-29 20:52:47 -07:00
Wez Furlong
c6fd88d8c5 add basic simd support for clearing rectangles 2019-09-29 20:24:26 -07:00
Wez Furlong
569408de66 software: handle OutOfTextureSpace condition 2019-09-29 12:42:51 -07:00
Wez Furlong
91e6bb4a5a rustfmt 2019-09-29 12:29:34 -07:00
Wez Furlong
99579bfca2 make it possible to build async example on stable rust
This should make the CI a bit happier
2019-09-28 22:00:07 -07:00
Wez Furlong
52a65370fa cargo fmt with rust 1.38 2019-09-28 21:40:40 -07:00
Wez Furlong
1c5f20f5e5 window: impl close for Windows 2019-09-28 21:16:08 -07:00
Wez Furlong
d44f380a82 window: impl close method on x11 2019-09-28 21:01:18 -07:00
Wez Furlong
d543d07c69 software: remove drop handler 2019-09-28 20:46:31 -07:00
Wez Furlong
950a7d2b22 cargo fix dyn 2019-09-28 20:29:48 -07:00
Wez Furlong
ed25cc81e6 fix an issue where closing tab 0 wouldn't repaint the new tab 0 2019-09-28 19:54:37 -07:00
Wez Furlong
7e09492606 Add close operation on macos 2019-09-28 17:46:43 -07:00
Wez Furlong
34f60dfa7f software: add font size key assignment handling
This doesn't know how to resize the window at the moment, which is
different from how the opengl renderer behaves.
2019-09-28 16:00:08 -07:00
Wez Furlong
a3a54837b7 software: implement paste key assignment 2019-09-28 15:50:42 -07:00
Wez Furlong
436bdf7589 software: implement most key assignments 2019-09-28 13:46:17 -07:00
Wez Furlong
a7c4eb430d export key map code from guicommon 2019-09-28 12:54:11 -07:00
Wez Furlong
6dac1a5cf0 software: always render emoji using its own color
This avoids just rendering black when dragging the selection over
the glyph
2019-09-28 10:44:29 -07:00
Wez Furlong
dd1621e693 window: fixup mouse coords on macos hidpi display 2019-09-28 10:29:47 -07:00
Wez Furlong
40d7186a9c software: pre-scale emoji so they render more reasonably
Since we don't have a draw-image-and-rescale primitive, and since
we'd have to scale every time we drew the glyph, it makes sense to
cache the pre-scaled glyph in the atlas.
2019-09-28 10:20:17 -07:00
Wez Furlong
389c477b16 software: ligatures now render, but scaled emoji need work 2019-09-28 10:06:47 -07:00
Wez Furlong
2a7892e3c5 software: fill marginal areas outside cell dimensions 2019-09-28 09:19:51 -07:00
Wez Furlong
a9621170f7 window: on macos, query the dpi and improve resize/scaling handling 2019-09-28 09:01:14 -07:00
Wez Furlong
3a49b79ec6 basic timer list for x11 in software front end 2019-09-24 09:29:28 -07:00
Wez Furlong
67d6e7fd1a window: cache window bitmap between paint calls
Without this, apps that only render invalidated portions of the screen
will render blank areas for the rest of the screen!
2019-09-23 08:03:23 -07:00
Wez Furlong
b0dd3a3803 fixup basic example for Point changes 2019-09-23 08:01:27 -07:00
Wez Furlong
c1c61974f8 implement timers for windows 2019-09-23 07:36:59 -07:00
Wez Furlong
4a742ea56b (almost) fixup compilation for windows 2019-09-23 06:48:47 -07:00
Wez Furlong
190303c7d5 more explicit dyn for windows 2019-09-23 06:46:56 -07:00
Wez Furlong
8e38f34b6d fix a couple of warnings 2019-09-22 21:02:02 -07:00
Wez Furlong
ed90a1487d scroll wheel events on macos 2019-09-22 15:51:33 -07:00
Wez Furlong
2afb2810cc plumb mouse events for software frontend 2019-09-22 13:43:30 -07:00
Wez Furlong
ec280a54f8 incomplete but functional key input for software frontend 2019-09-22 10:25:31 -07:00
Wez Furlong
4de30373b6 tidy up window/tab closing and quitting for software frontend 2019-09-22 08:38:35 -07:00
Wez Furlong
88d15e18af factor our underline/strikethrough metrics for software render 2019-09-22 08:26:54 -07:00
Wez Furlong
ccb27b3422 fixup a few warnings 2019-09-22 08:21:36 -07:00
Wez Furlong
68f81e23f7 software render can now render basic glyphs 2019-09-22 08:12:52 -07:00
Wez Furlong
f17824994f window: add basic timer functionality
We need this to poll the model and invalidate the gui so that it
can repaint as the child process emits output
2019-09-21 22:16:27 -07:00
Wez Furlong
a58a0be632 wire up basic cursor and background color for software render frontend 2019-09-21 17:32:19 -07:00
Wez Furlong
0d7d438270 separate Sprite and SpriteSlice impls 2019-09-21 14:25:12 -07:00
Wez Furlong
86ba590ead fixup some missing dyn 2019-09-21 13:36:15 -07:00
Wez Furlong
fb5cbb5827 fixup x11 build for euclid point/rect changes 2019-09-21 13:33:21 -07:00
Wez Furlong
a236cf6c08 fixup for euclid + rect/point/draw_line changes 2019-09-21 13:16:23 -07:00
Wez Furlong
709990b9e7 use euclid crate for point/rect 2019-09-21 13:05:50 -07:00
Wez Furlong
c7c25025ed upgrade euclid dep 2019-09-21 12:32:21 -07:00
Wez Furlong
3dce78bd9c copy and adapt our opengl texture atlas code for the window crate 2019-09-21 09:00:08 -07:00
Wez Furlong
1950843de4 these rect methods should have been public 2019-09-21 08:03:14 -07:00
Wez Furlong
4e62b59628 rediscover the Rect type for x11 and consolidate 2019-09-21 08:01:31 -07:00
Wez Furlong
050dde6b4f clean up draw_image api 2019-09-21 07:44:28 -07:00