| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2024-09-16 | Rename Window::display_position to display_coord | Maxime Coste | |
| 2024-09-16 | Do not return beginning of buffer whenever display to buffer coord fails | Maxime Coste | |
| Use an empty Optional to show that resolution failed and just do not do anything in the mouse event handler in that case. | |||
| 2023-09-08 | Use last display setup instead of recomputing for window_range | Maxime Coste | |
| Fixes #4964 | |||
| 2023-08-27 | Remove Window::force_redraw() | Maxime Coste | |
| This was mostly redundant with Client::force_redraw. | |||
| 2023-08-27 | Small code cleanup in winow.cc/hh | Maxime Coste | |
| 2023-08-23 | Revert "Only make cursor visible after buffer or selection change" | Maxime Coste | |
| This is currently broken on various corner cases and breaks the "master branch should be good for day to day work" implicit rule, ongoing work to stabilize this feature will take place on the no-cursor-move-on-scroll branch until its deemed ready. This reverts commit 1e38045d702ec6eb2425016d9b02636270ab1b1e. Closes #4963 | |||
| 2023-08-16 | Only make cursor visible after buffer or selection change | Maxime Coste | |
| Kakoune now does not touch cursors when scrolling. It checks if either the buffer or selections has been modified since last redraw. Fixes #4124 Fixes #2844 | |||
| 2019-12-16 | Fix window_range expansion | Maxime Coste | |
| It relied on the buffer first char being visible, and could trigger segfaults when that was not the case. | |||
| 2019-12-16 | Fix WinResize hook getting triggered during urgent event processing | Maxime Coste | |
| WinResize hooks could be triggered during shell evaluation, leading to any state potentially getting mutated after a shell evaluation call. | |||
| 2019-02-17 | Run WinClose hook before putting the window into trash | Maxime Coste | |
| 2018-10-23 | Refactor Hook management to have a well defined list of hooks | Maxime Coste | |
| Hooks are now an enum class instead of passing strings around. | |||
| 2018-06-19 | Change Search completion to display on top of the modeline | Maxime Coste | |
| 2018-06-12 | Remove unneeded Window::m_range post refactoring | Maxime Coste | |
| 2018-06-11 | Add position offset to Window to limit moves with search menu style | Maxime Coste | |
| Window can be resized with an "offset_pos" flag, which means that the resize took place on the top left corner of the window, leading to a change in current window position. This is treated as temporary and the position change is stored in a m_position_offset field. That allows the ncurses UI to offset the position when it displays a Search menu, so that the window does not constantly scroll when the search menu open/closes. The window will only scroll if it needs to in order to keep the main selectin visible. | |||
| 2018-05-09 | Mark Client, Window, Buffer and OptionManager as final | Maxime Coste | |
| Avoids warning about non virtual destructor calls on them, as they have a vtable due to OptionManagerWatcher. | |||
| 2018-04-10 | Redraw window when the face definition changed | Maxime Coste | |
| Hash the current face state and store that hash to check for changes. | |||
| 2018-04-06 | Make compute_display_setup methods const | Maxime Coste | |
| 2017-10-28 | Move highlighters into Scopes | Maxime Coste | |
| That means we can now have highlighters active at global, buffer, and window scope. The add-highlighter and remove-highlighter syntax changed to take the parent path (scope/group/...) as a mandatory argument, superseeding the previous -group switch. | |||
| 2017-06-16 | Hide info/menu when they are anchored to an invisible buffer coord | Maxime Coste | |
| Fixes #1444 | |||
| 2017-06-09 | Fix wrapping support | Maxime Coste | |
| 2017-05-22 | Remove virtual destructor from OptionManagerWatcher | Maxime Coste | |
| We should never destruct anything through an OptionManagerWatcher pointer, so having all those destructor virtual makes no sense. | |||
| 2017-05-07 | Slight highlighting related code cleanup | Maxime Coste | |
| 2017-05-07 | Make scrolling around work more correctly with wrapping | Maxime Coste | |
| 2017-05-07 | Make Wrap highlighter only wrap on window width. | Maxime Coste | |
| 2017-05-07 | Introduce highlighting phases and display setup computation | Maxime Coste | |
| Highlighters now run in 3 phases: Wrap, Move, and Colorize. That way we guarantee the wrap highlighter runs first, then eventual line numbers/flags, and finally the colorizers. We also run a `compute_display_setup` method thats responsible for computing the lines that will be displayed, eventually scrolling the view to ensure the cursor is visible. | |||
| 2017-05-07 | Do not use any display information to determine where the cursor moves | Maxime Coste | |
| 2017-01-08 | Apply clang-tidy modernize to the codebase | Maxime Coste | |
| 2016-11-28 | Add more memory domains to certain data | Maxime Coste | |
| 2016-11-24 | Forward client name to contexts created for write-all | Maxime Coste | |
| Fixes #937 | |||
| 2016-10-01 | Support codepoints of variable width | Maxime Coste | |
| Add a ColumnCount type and use it in place of CharCount whenever more appropriate, take column size of codepoints into account for vertical movements and docstring wrapping. Fixes #811 | |||
| 2016-05-09 | Keep a pointer to current client in windows so that window hooks can access it | Maxime Coste | |
| 2016-02-03 | Do not use a hash to determine if a window must be redrawn | Maxime Coste | |
| Collision happens Fixes #569 | |||
| 2015-11-02 | Support horizontal centering in view commands (using m) | Maxime Coste | |
| Fixes #442 | |||
| 2015-06-22 | Refactor slightly window redrawing | Maxime Coste | |
| 2015-06-21 | Rework window redraw handling, should redraw window less often | Maxime Coste | |
| 2015-06-04 | Add support for Default face | Maxime Coste | |
| The Default face is used to set default color values, if set to default (the default), refers to terminal default colors. | |||
| 2015-03-18 | Add a display coord to buffer coord method to Window | Maxime Coste | |
| 2015-03-05 | Use a IdMap for storing hooks | Maxime Coste | |
| The number of hook names is small (<20), using an UnorderedMap is overkill, and prevents using StringView for key searching. | |||
| 2015-02-19 | Rename safe_ptr and ref_ptr to SafePtr and RefPtr | Maxime Coste | |
| 2015-01-26 | Release display buffers when a window is added to free list | Maxime Coste | |
| 2014-12-18 | Do not register timers for transient input handlers | Maxime Coste | |
| 2014-11-12 | Cleanup includes | Maxime Coste | |
| 2014-10-30 | Add scope class and encapsulate Options, Keymaps, Aliases and Hooks in it | Maxime Coste | |
| 2014-10-30 | Add scoped aliases | Maxime Coste | |
| aliases are now stored in window, buffer, or globally. | |||
| 2014-10-22 | Refactor highlighters, use an interface with virtual methods | Maxime Coste | |
| 2014-09-09 | Add support for target column preservation | Maxime Coste | |
| Fixes #64 | |||
| 2014-08-12 | Make safe_ptr able to track callstacks | Maxime Coste | |
| The code stays disabled, as the performance penalty is quite high, but can be enabled to help debugging safe pointers. | |||
| 2014-06-10 | Replace FunctionGroup template with HighlighterGroup class | Maxime Coste | |
| 2014-05-07 | Refactor LineAndColumn coordinates | Maxime Coste | |
| BufferCoord -> ByteCoord DisplayCoord -> CharCoord Moved their definition along with LineAndColumn into coord.hh | |||
| 2013-12-20 | Get rid of Editor for good | Maxime Coste | |
| ClientManager now stores only the free windows, clients take ownership of its own. | |||
