aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ugrid.h
Commit message (Collapse)AuthorAge
* UGRID_FOREACH_CELL: avoid shadowed variablesJustin M. Keyes2019-01-02
|
* UI/TUI: improvements and cleanups for scrolling and clearingBjörn Linse2018-11-11
| | | | | | | | | | | | - TUI: _never_ rely on BCE for implicit clearing, only explicit commands. - TUI: use unibi_erase_chars when possible. - TUI: use end-exclusive ranges for invalid and cleared areas - screen: scrolling leaves scrolled in aree undefined. This is a conservative change, a client assuming the old semantics will still behave correctly. - screen: factor out vsep handling from line drawing. This is needed anyway for the multigrid refactor. - screen: simplifications of win_do_lines
* tui: eliminate scrolling region data structureBjörn Linse2018-09-27
| | | | | | | | | The scrolling region is always local to a single grid_scroll event, use local variables and parameters instead. The invocation of reset_scroll_region in grid_resize is cargo-culted to use margin reset under exactly the same circumstances, not sure if it is necessary though.
* tui: eliminate grid->attrs, use indexed cell->attrBjörn Linse2018-09-26
| | | | remove dead ugrid_put
* ui: use line-based rather than char-based updates in screen.cBjörn Linse2018-07-21
| | | | | | | | | | | | | Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
* ugrid: Silence PVS/V625: UGRID_FOREACH_CELL may be used for one rowZyX2018-04-22
|
* ui/tui: highlighting refactorBjörn Linse2018-02-11
| | | | | | | | Make HlAttr contain highlighting state for both color modes (cterm and rgb). This allows us to implement termguicolors completely in the TUI. Simplify some logic duplicated between ui.c and screen.c. Also avoid some superfluous highlighting reset events.
* Adds nvim_get_hl_by_name/by_idMatthieu Coudron2017-09-30
| | | | | | | | | ...in order to retrieve highlights. Added test/functional/api/highlight_spec.lua HL_NORMAL is not really a good name, since it's more like an empty attribute than the normal's one. If one pays attention, syn_cterm_attr2entry is never called with attr=0 because it's always special cased before. I suggest in subsequent PRs we remove the ATTR_OFF and just insert an EMPTY ATTR/RESET_ATTR/UNINITIALIZED for id 0.
* *: Also fix the adjacent errorsZyX2016-06-11
|
* *: Fix errors from new linter checksZyX2016-06-11
|
* LintingAdnoC2016-05-17
|
* syntax: Add support for the "special" color used for undercurlsAdnoC2016-05-17
|
* ugrid: Increase cell size to allow unicode compositionThiago de Arruda2015-09-18
| | | | Close #3323
* tui: Move screen state tracking to new "ugrid" moduleThiago de Arruda2015-09-06
The ugrid module implements a unicode "drawing" grid and is used to store TUI screen state. Later this module will be reused in other layers.