Commit graph

  • 481a1cd678
    selection/input: triple click selects an entire row Daniel Eklöf 2019-08-06 19:32:06 +02:00
  • ae84f0ee00
    main: make all polled FDs non-blocking Daniel Eklöf 2019-08-05 20:30:06 +02:00
  • c06f141189
    term: cancel selection when scrolling wraps Daniel Eklöf 2019-08-05 20:16:17 +02:00
  • 1e08d93528
    selection: ensure start < end in finalize Daniel Eklöf 2019-08-05 20:15:18 +02:00
  • a82f12dd2b
    input: use a timer fd to handle keyboard key repeat Daniel Eklöf 2019-08-05 19:33:01 +02:00
  • c62ce72778
    selection: mark-word using spaces only as word separator Daniel Eklöf 2019-08-05 19:02:27 +02:00
  • 528ee9925c
    term: re-order switch-cases to be in X button order Daniel Eklöf 2019-08-05 18:59:12 +02:00
  • c15d546740
    term: fix mouse button mapping to X button numbers Daniel Eklöf 2019-08-05 18:32:35 +02:00
  • 3ae210d4c5
    selection: only disable selection when mouse drag/motion is on Daniel Eklöf 2019-08-04 19:15:50 +02:00
  • 42fdb3653d
    scrollback: use scroll damage to speed up scrolling Daniel Eklöf 2019-08-04 19:06:49 +02:00
  • c411dedc3b
    render: make sure the current view is allocated and visible Daniel Eklöf 2019-08-04 18:34:14 +02:00
  • e2e1db8faf
    csi: add 'unimplemented' warnings for things we handle but ignore Daniel Eklöf 2019-08-04 18:11:59 +02:00
  • 8deead14e8
    selection: insert newlines only when last column is empty Daniel Eklöf 2019-08-04 13:07:54 +02:00
  • e2229c7e2e
    osc: bug: uneven clipboard bytes where not buffered correctly Daniel Eklöf 2019-08-03 21:30:06 +02:00
  • 9a0d440e95
    term: cell erase: reset *all* attributes *except* background Daniel Eklöf 2019-08-03 19:26:02 +02:00
  • 6e233f8272
    osc: remove TODO Daniel Eklöf 2019-08-03 15:53:13 +02:00
  • 4d7993b36f
    cell: pack more efficiently and store glyph as a wchar Daniel Eklöf 2019-08-02 18:19:07 +02:00
  • ab92abbd21
    term: implement reset Daniel Eklöf 2019-08-01 20:51:11 +02:00
  • 57564c2b59
    render: special case worker-count == 0 Daniel Eklöf 2019-08-01 20:09:39 +02:00
  • bd734d5bed
    threads: set thread titles Daniel Eklöf 2019-08-01 20:09:16 +02:00
  • 4801e39eae
    conf: make number of scrollback lines configurable Daniel Eklöf 2019-08-01 19:28:14 +02:00
  • 67b4b9401d
    render: always damage two cells when rendering the cursor Daniel Eklöf 2019-07-31 21:16:37 +02:00
  • 4a01be5522
    render: draw cell decorations (cursor, underline etc) correctly for double-width characters Daniel Eklöf 2019-07-31 21:15:40 +02:00
  • 858a0d9906
    font: initial support for double-width *and* color emoji glyphs Daniel Eklöf 2019-07-31 18:03:35 +02:00
  • 748a1f229c
    vt: disable flash on bell, it's too annoying in e.g. zsh Daniel Eklöf 2019-07-30 22:11:32 +02:00
  • e1f7fc459b
    vt: BELL is now logged at info level, and flashes the screen Daniel Eklöf 2019-07-30 22:09:07 +02:00
  • 0d1ba1ffb2
    osc: reduce flash interval to 50ms Daniel Eklöf 2019-07-30 22:08:58 +02:00
  • e3dc184882
    term: break out 'flash' to a separate 'term' function Daniel Eklöf 2019-07-30 22:06:02 +02:00
  • 89f1b3ae73
    footrc: add 'workers' Daniel Eklöf 2019-07-30 22:03:13 +02:00
  • db6939fdc5
    config: remove commented out code Daniel Eklöf 2019-07-30 22:03:07 +02:00
  • 10536aad3f
    render: make resize log messages debug messages Daniel Eklöf 2019-07-30 22:01:49 +02:00
  • caaf84dfd3
    main: don't shadow final return value inside poll loop Daniel Eklöf 2019-07-30 22:01:16 +02:00
  • b82dc02505
    selection: add a couple of word-breaking characters Daniel Eklöf 2019-07-30 21:57:48 +02:00
  • c03aeb1b4f
    log: syslog: tag unused function arguments as unused Daniel Eklöf 2019-07-30 21:50:08 +02:00
  • c9138c6d7d
    log: log to syslog too Daniel Eklöf 2019-07-30 21:48:14 +02:00
  • 6c2fe303c1
    main: font metrics should be debug logged Daniel Eklöf 2019-07-30 21:47:59 +02:00
  • 8acc3b891d
    vt: remove almost all abort() calls Daniel Eklöf 2019-07-30 21:42:46 +02:00
  • 84f868f88d
    render: don't pass a struct buffer when all we need is a cairo_t Daniel Eklöf 2019-07-30 20:43:37 +02:00
  • d8ab96b8d9
    render: don't call wl_surface_set_buffer_scale() Daniel Eklöf 2019-07-30 20:33:17 +02:00
  • 2c3f2269fc
    render: remove #if 0 code Daniel Eklöf 2019-07-30 20:31:59 +02:00
  • 51c1fc344a
    vt: remove duplicate initialization warnings (clang) Daniel Eklöf 2019-07-30 20:30:05 +02:00
  • f630633a81
    render: fix 'suggest braces around initialization...' warning (clang) Daniel Eklöf 2019-07-30 20:28:21 +02:00
  • 263d3bb2ba
    input: fix 'comparison ... is always true' warning (clang) Daniel Eklöf 2019-07-30 20:27:19 +02:00
  • 20af289759
    render: only explicitly re-render old cursor cell if it isn't dirty Daniel Eklöf 2019-07-30 20:18:58 +02:00
  • 3b36fb9d74
    render: last_cursor.cell must not be const Daniel Eklöf 2019-07-30 20:18:20 +02:00
  • efdb69f2d8
    render: remove all traces of glyph-sequence Daniel Eklöf 2019-07-30 19:33:56 +02:00
  • f5e9b7b048
    input: use keyboard enter serial only for selection serial Daniel Eklöf 2019-07-30 19:29:04 +02:00
  • f39d848368
    Merge branch 'multithreaded-renderer' Daniel Eklöf 2019-07-30 18:08:27 +02:00
  • 7d702756ad
    main: pty buffers appear to be ~20KB on modern linux kernels Daniel Eklöf 2019-07-30 18:07:44 +02:00
  • 73b4d5d05a
    font: add support for fallback fonts Daniel Eklöf 2019-07-30 18:04:28 +02:00
  • 85ef9df586
    render: add a 'clean' bit to each cell; only render cells that aren't clean Daniel Eklöf 2019-07-30 18:03:03 +02:00
  • c531795b83
    wip: initial multithreaded renderer Daniel Eklöf 2019-07-29 20:13:26 +02:00
  • d1b88f67e4
    Merge branch 'use-freetype-to-render-glyphs' Daniel Eklöf 2019-07-29 20:12:33 +02:00
  • 4302d3eb68
    font: set FT load and render flags from FontConfig properties Daniel Eklöf 2019-07-29 20:10:55 +02:00
  • fe882bddba
    font: populate glyph cache (ASCII characters only) when instantiating font Daniel Eklöf 2019-07-28 21:03:38 +02:00
  • 9e57ba2108
    font: add font_glyph_for_utf8() Daniel Eklöf 2019-07-28 20:37:59 +02:00
  • 175dc9cf94
    cairo-ft: remove all usages of cairo-ft Daniel Eklöf 2019-07-28 12:45:01 +02:00
  • c399c329b6
    main: calculate *all* font metrics from the FreeType face Daniel Eklöf 2019-07-28 12:39:56 +02:00
  • 27dca15caf
    render: use FreeType face from font, instead of from cairo's scaled font Daniel Eklöf 2019-07-28 12:11:44 +02:00
  • cb02c9cf41
    font: load FreeType face, and set it's pixel sizes Daniel Eklöf 2019-07-28 12:09:22 +02:00
  • 90d357befb
    render: poc: use freetype to render glyphs Daniel Eklöf 2019-07-26 18:54:14 +02:00
  • 709c29c7c4
    render: reset "last cursor" when resizing Daniel Eklöf 2019-07-26 18:51:47 +02:00
  • 269e04fa1b
    render: flush glyph sequence after erase previous cursor Daniel Eklöf 2019-07-26 18:50:41 +02:00
  • 3e06dca12d
    input: generate escape sequences for "other" keys Daniel Eklöf 2019-07-26 18:49:09 +02:00
  • e88cf4c8c8
    mouse: use discrete axis event if available Daniel Eklöf 2019-07-26 18:47:56 +02:00
  • bb3e33948f
    render: add render_row() Daniel Eklöf 2019-07-24 20:31:21 +02:00
  • a712ca40e1
    render: minor Daniel Eklöf 2019-07-24 20:26:32 +02:00
  • d7dd14ea6a
    footrc: add cursor color Daniel Eklöf 2019-07-24 20:23:26 +02:00
  • f93384b9c9
    render: move local static variables into the terminal struct Daniel Eklöf 2019-07-24 20:21:41 +02:00
  • 4838763d18
    render: move frame_callback to term.render Daniel Eklöf 2019-07-24 20:11:49 +02:00
  • ebf0a11fa0
    render: add render_refresh() Daniel Eklöf 2019-07-24 20:09:49 +02:00
  • 10a7b94804
    render: bug: previous cursor wasn't always redrawn correctly Daniel Eklöf 2019-07-24 18:15:24 +02:00
  • bf4847d3e0
    conf: allow the user to configure a fixed cursor color Daniel Eklöf 2019-07-23 18:54:58 +02:00
  • a397c64efe
    csi: ignore CSI ?1036h/l (metaSendsEscape) Daniel Eklöf 2019-07-23 17:57:41 +02:00
  • f5a6304850
    term: make sure to update 'current row' when restoring saved cursor Daniel Eklöf 2019-07-23 17:57:07 +02:00
  • f7519b5725
    grid: swap rows doesn't mark rows as dirty Daniel Eklöf 2019-07-23 17:56:07 +02:00
  • 812178673e
    osc: ignore OSC 30 (konsole's "set tab title") Daniel Eklöf 2019-07-23 17:55:25 +02:00
  • ba322c4eff
    csi: implement \E[Z - back tab Daniel Eklöf 2019-07-22 20:33:50 +02:00
  • 751ac55f64
    csi: *sigh* looks like e.g. neovim doesn't respect Se Daniel Eklöf 2019-07-22 20:23:29 +02:00
  • 49034bb759
    csi: let CSI 0 q mean "switch to user configured cursor style" Daniel Eklöf 2019-07-22 20:19:27 +02:00
  • 3ccdef3498
    conf: make cursor's default style configurable Daniel Eklöf 2019-07-22 20:15:14 +02:00
  • ed5df194b8
    render: implement cursor styles 'bar' and 'underline' Daniel Eklöf 2019-07-22 20:07:34 +02:00
  • 10be7c37ba
    csi: prepare for alternative cursor styles Daniel Eklöf 2019-07-22 19:44:21 +02:00
  • 428b31f071
    term: group 'blink' state together in a struct Daniel Eklöf 2019-07-22 19:17:57 +02:00
  • 196f9d67c2
    term: group 'flash' state together in a struct Daniel Eklöf 2019-07-22 19:15:56 +02:00
  • 61409d40e2
    flash: convert our own 'flash' from a CSI to an OSC Daniel Eklöf 2019-07-22 19:10:15 +02:00
  • aa4cf1873b
    csi: implement CSI 3J - erase scroll back Daniel Eklöf 2019-07-22 19:05:22 +02:00
  • 18fb70bb3f
    keymap: fix sequences for PageDown Daniel Eklöf 2019-07-22 18:45:14 +02:00
  • 42b46df6f1
    terminfo: add key sequences for keys with modifiers Daniel Eklöf 2019-07-22 18:44:53 +02:00
  • 34e11a711f
    terminfo: add Se/Ss - describes how to change cursor style Daniel Eklöf 2019-07-22 18:37:29 +02:00
  • 602f22858b
    terminfo: add Ms - modify selection/clipboard Daniel Eklöf 2019-07-22 18:36:15 +02:00
  • 802c113db3
    terminfo: add smxx/rmxx - describes strikeout/crossed-out Daniel Eklöf 2019-07-22 18:34:06 +02:00
  • 3316a3ea4c
    terminfo: set XT (screen) - we understand OSC and mouse tracking Daniel Eklöf 2019-07-22 18:33:29 +02:00
  • 283ffc79be
    terminfo: set AX (screen) - we understand CSI 39/49m Daniel Eklöf 2019-07-22 18:32:49 +02:00
  • b494f24552
    conf: don't fail to start when there's no configuration file Daniel Eklöf 2019-07-22 18:21:25 +02:00
  • df91698ff3
    terminfo: revert kmous to \E[M Daniel Eklöf 2019-07-21 21:41:19 +02:00
  • ef06576aaf
    terminfo: since we now expose our SGR cap, set kmous=\E< Daniel Eklöf 2019-07-21 20:49:42 +02:00
  • 838738a04a
    terminfo: add XM (mouse initialization) Daniel Eklöf 2019-07-21 20:46:17 +02:00
  • 3a50c54e7c
    csi: bug: reset mouse *reporting* on CSI 1005/1006/1015l Daniel Eklöf 2019-07-21 20:27:26 +02:00
  • 6f282a2903
    csi: remove debug logging Daniel Eklöf 2019-07-21 20:27:09 +02:00