aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/screen_basic_spec.lua
Commit message (Collapse)AuthorAge
* refactor(message): simplify msg_puts_display and use batched grid updatesbfredl2023-10-03
| | | | | | | | | msg_puts_display was more complex than necessary in nvim, as in nvim, it no longer talks directly with a terminal. In particular we don't need to scroll the grid before emiting the last char. The TUI already takes care of things like that, for terminals where it matters.
* fix(events): trigger VimResume on next UI request (#24426)zeertzjq2023-07-23
|
* fix(ui): don't send empty grid_line with redrawdebug=compositor (#23899)zeertzjq2023-06-04
|
* fix(ui-ext): send title to newly-attached UIzeertzjq2023-05-26
|
* refactor(options): deprecate nvim[_buf|_win]_[gs]et_optionLewis Russell2023-05-21
| | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: famiu <famiuhaque@protonmail.com>
* test: move most title tests to a separate file (#23557)zeertzjq2023-05-10
| | | This avoids running title tests twice unnecessarily.
* fix(api): don't change title when setting buffer in a window (#23492)zeertzjq2023-05-06
|
* fix(ui): make sure screen is valid after resizingzeertzjq2023-02-13
| | | | | | | | | | | | | | | | | Problem: When not inside an Ex command, screen_resize() calls update_screen(), which calls screenclear() and set the screen as valid. However, when inside an Ex command, redrawing is postponed so update_screen() screen doesn't do anything, and the screen is still invalid after the resize, causing ui_comp_raw_line() to be no-op until update_screen() is called on the main loop. Solution: Restore the call to screenclear() inside screen_resize() so that the screen is invalid after screen_resize(). Since screenclear() changes redraw type from UPD_CLEAR to UPD_NOT_VALID, it is called at most once for each resize, so this shouldn't change how much code is run in the common (not inside an Ex command) case.
* test: simplify platform detection (#21020)dundargoc2022-11-22
| | | | | Extend the capabilities of is_os to detect more platforms such as freebsd and openbsd. Also remove `iswin()` helper function as it can be replaced by `is_os("win")`.
* fix(ui): send grid_resize events before triggering VimResized (#20760)zeertzjq2022-10-22
|
* test: add a test for #20605zeertzjq2022-10-12
|
* feat(messages)!: graduate the 'msgsep' featurebfredl2022-10-05
| | | | | | | The old behaviour (e.g. via `set display-=msgsep`) will not be available. Assuming that messages always are being drawn on msg_grid (or not drawn at all, and forwarded to `ext_messages` enabled UI) will allows some simplifcations and enhancements moving forward.
* refactor(ui)!: link `VertSplit` to `Normal` by defaultFamiu Haque2022-05-15
| | | | | Avoids using `gui=reverse` on `VertSplit` and makes window separators look much nicer by default.
* fix: set RedrawingDisabled before entering aucmd_winzeertzjq2022-01-25
|
* screen: setup scrolling main screen when starting with display-=msgsepBjörn Linse2021-03-23
|
* vim-patch:8.1.1308: the Normal highlight is not defined when compiled with GUIJan Edmund Lazo2020-01-06
| | | | | | Problem: The Normal highlight is not defined when compiled with GUI. Solution: Always define Normal. (Christian Brabandt, closes vim/vim#4072) https://github.com/vim/vim/commit/f90b6e03a983b62b66564fc449e32724d6456769
* Fix two more flaky tests (#11095)Daniel Hahler2019-09-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * mode_spec: retry with increasing matchtime `matchtime=2` might still be too low (with luacov on AppVeyor). [ ERROR ] test/functional\ui\mode_spec.lua @ 47: ui mode_change event works in insert mode test\functional\ui\screen.lua:587: mode Expected objects to be the same. Passed in: (string) 'insert' Expected: (string) 'showmatch' Hint: full state of "mode": "insert" Followup to fe60013fb. ref #10941 Initially regressed in 7ed212262242 `` * ui/screen_basic_spec: set timeoutlen=10000 This fixes the test on slow CI. Ref: https://ci.appveyor.com/project/neovim/neovim/builds/27600387/job/t468h2b3w9lwtlm5#L10930
* UI: always use contrete colors for default_colors_setBjörn Linse2019-02-05
| | | | | But add an escape hatch needed for external TUI, so it still can use terminal emulator defaults.
* screen: add missing status redraw when redraw_later(CLEAR) was usedBjörn Linse2018-12-05
|
* UI: add missing redraw after enter_tabpageBjörn Linse2018-10-25
| | | | | | | redraw_all_later() isn't guaranteed to update must_redraw after switching tab, we must do it ourselves. fixes #9152
* tests: improve robustness of immediate successes in screen testsBjörn Linse2018-10-15
|
* ui: rename ext_newgrid to ext_linegridBjörn Linse2018-10-01
|
* tests: add test for switching tabpage right after scrollBjörn Linse2018-07-24
|
* tests: test for redrawing tabline when msgsep marker goes outside screenBjörn Linse2018-07-24
|
* 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.
* screen: truncate showmode messagesBjörn Linse2018-07-12
| | | | | Before this, bottom of screen got messed up when modemsg (+ one extra space to not force terminal scroll) didn't fit on one line.
* Merge pull request #8358 from mhinz/screenJames McCoy2018-05-04
|\ | | | | [RFC] screen: avoid artifacts
| * test: screen artifactsMarco Hinz2018-05-04
| |
* | messages: redraw tabline if it was overdrawn by messagesBjörn Linse2018-05-04
|/ | | | | | | fixes #8354 Regression from #8088, where we try to avoid clearing the screen if not absolutely necessary
* events: VimSuspend, VimResume #8280geekodour2018-04-15
| | | | | closes #3648 ref #5959
* test/API: validate channel arg (#8245)Justin M. Keyes2018-04-08
|
* msg: do not scroll entire screen (#8088)Björn Linse2018-03-31
|
* 'fillchars': fix defaults logic; handle ambiwidth=double #7986Matthieu Coudron2018-02-23
| | | | Update tests.
* test: avoid extra clear() callsJustin M. Keyes2017-10-02
| | | | also: various other cleanup
* win: vim_FullName(): force backslashes #7287Ignas Anikevicius2017-10-02
| | | | | | | | | - Replace obvious cases of '/' literal with PATHSEP. (There are still some remaining cases that need closer inspection.) - Fixup tests: ui/screen_basic closes #7117 ref https://github.com/neovim/neovim/issues/2471#issuecomment-271193714
* tests: Add tests for vim_strchrZyX2017-05-09
|
* api: nvim_ui_attach(): Flatten ext_* options.Justin M. Keyes2017-04-26
|
* api/ui: externalize tablineJustin M. Keyes2017-04-26
| | | | | | - Work with a bool[] array parallel to the UIWidget enum. - Rename some functions. - Documentation.
* ui: add tests for new cursor shape modesBjörn Linse2017-04-21
|
* functests: Fix ui/screen_basic_specZyX2017-04-09
|
* functests: Replace execute with either command or feed_commandZyX2017-04-09
| | | | | | | | | | Hope this will make people using feed_command less likely: this hides bugs. Already found at least two: 1. msgpackparse() will show internal error: hash_add() in case of duplicate keys, though it will still work correctly. Currently silenced. 2. ttimeoutlen was spelled incorrectly, resulting in option not being set when expected. Test was still functioning somehow though. Currently fixed.
* tests: short form `screen:except(func)` expects condition only. #6440Björn Linse2017-04-06
| | | | | | - Use this to properly test cursor shape events. - tests: update screen_basic_spec to use `screen:expect` short form. Clearer than using `screen:wait` directy.
* defaults: 'showcmd', 'belloff', 'ruler'Justin M. Keyes2017-03-16
| | | | | | | | | | | - Vim "unix default" of 'noshowcmd' is serving few users. And it's inconsistent. - 'ruler' and 'belloff=all' improve the out-of-the-box experience. - Continue to use 'noshowcmd' and 'noruler' by default in the functional tests to keep them fast. TODO: Add a "disable slow stuff" command or mapping to address the use-case of a very slow terminal connection.
* Merge pull request #5963 from jamessan/screen-expect-clarityJames McCoy2017-01-18
|\ | | | | test: screen: Assert expected row count matches configured screen height
| * test: screen_basic: Re-enable min width/height testJames McCoy2017-01-18
| |
* | test: nvim_ui_attach() with huge dimensions. (#5974)Justin M. Keyes2017-01-18
|/ | | | | | | Also: - Attempt to constrain wall-of-text in screen.lua. - Windows: Enable screen_basic_spec.lua Closes #2180
* add cmdline mode to modechange of RPC and testschemzqm2016-11-30
| | | | | | | | use set_cursor_shape_bar for cmdline mode fix test of screen_basic_spec.lua & screen.lua comment fix
* ui: add tests for ui_mode_changeBjörn Linse2016-11-25
| | | | | Also fix snapshot_util() to work even if default_attr_ids is not a proper lua array.
* Mark some functional tests as pending in WindowsRui Abreu Ferreira2016-08-26
|
* tests: don't ignore highlights in screen_basic_specBjörn Linse2016-08-14
|