summaryrefslogtreecommitdiff
path: root/helix-term/src/ui/popup.rs
Commit message (Collapse)AuthorAge
* Popup scrollbar (#4449)Manos Mertzianis2022-11-15
| | | | | | | | | | | | | | | * init * cargo fmt * optimisation of the scrollbar render both for Menu and Popup. Toggling off scrollbar for Popup<Menu>, since Menu has its own * rendering scroll track * removed unnecessary cast * improve memory allocation * small correction
* Add bracketed paste (#3233)Charlie Groves2022-08-29
|
* Add custom event type replacing crossterm's Event (#3169)Gokul Soumya2022-08-09
| | | | | | | | | | Ported over from 61365dfbf3 in the `gui` branch. This will allow adding our own events, most notably an idle timer event (useful for adding debounced input in [dynamic pickers][1] used by interactive global search and workspace symbols). [1]: https://github.com/helix-editor/helix/pull/3110 Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
* Add lsp signature help (#1755)Gokul Soumya2022-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add lsp signature help * Do not move signature help popup on multiple triggers * Highlight current parameter in signature help * Auto close signature help * Position signature help above to not block completion * Update signature help on backspace/insert mode delete * Add lsp.auto-signature-help config option * Add serde default annotation for LspConfig * Show LSP inactive message only if signature help is invoked manually * Do not assume valid signature help response from LSP Malformed LSP responses are common, and these should not crash the editor. * Check signature help capability before sending request * Reuse Open enum for PositionBias in popup * Close signature popup and exit insert mode on escape * Add config to control signature help docs display * Use new Margin api in signature help * Invoke signature help on changing to insert mode
* Refactor Margin for fine grained control (#2727)Gokul Soumya2022-06-21
|
* deletion of lines affecting popup scrolling (#2497)Alexis Kalabura2022-05-20
|
* Restore document state on completion cancel (#2096)Andrey Tkachenko2022-04-20
|
* Close some popups automatically (#1285)Bram2022-02-23
| | | | | | | | | | | | | | | | | | | * Add Event::Used to use event callback without consuming * Close popup if contents ignored event * collect event results before executing callbacks * don't add new result variant, use Ignored(..) instead * break in match cases * Make auto_close configurable * fix merge * auto close hover popups * fix formatting
* Render code actions as a menu, allow adding padding to popupBlaž Hrastnik2022-01-31
|
* Macros (#1234)Omnikar2021-12-12
| | | | | | | | | | | | | | | | | | | | | | | | * Macros WIP `helix_term::compositor::Callback` changed to take a `&mut Context` as a parameter for use by `play_macro` * Default to `@` register for macros * Import `KeyEvent` * Special-case shift-tab -> backtab in `KeyEvent` conversion * Move key recording to the compositor * Add comment * Add persistent display of macro recording status When macro recording is active, the pending keys display will be shifted 3 characters left, and the register being recorded to will be displayed between brackets — e.g., `[@]` — right of the pending keys display. * Fix/add documentation
* ui: popup: Don't allow scrolling past the end of contentBlaž Hrastnik2021-12-10
|
* Only use a single documentation popup (#1241)Kirawi2021-12-08
|
* Refactor keyevent handling using key, ctrl macros (#1058)Gokul Soumya2021-11-10
| | | | | | Adds ctrl! and alt! macros (which existed before the big keymap refactor) and uses them in event handling of Components. Note that this converts crossterm's KeyEvent to our own KeyEvent on each invocation of handle_event in Components.
* ui: Trigger recalculate_size per popup render so contents can readjustBlaž Hrastnik2021-09-13
|
* Optimize completion doc position. (#691)CossonLeo2021-09-08
| | | | | | | | | | | | | | | | | | | * optimize completion doc's render * optimize completion doc's render * optimize completion doc position * cargo fmt * fix panic * use saturating_sub * fixs * fix clippy * limit completion doc max width 120
* fix: ui: Pin popups with no positioning to the initial cursor positionBlaž Hrastnik2021-08-19
| | | | This avoids the floating popup following the cursor as we type.
* Show file preview in split pane in fuzzy finder (#534)Gokul Soumya2021-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add preview pane for fuzzy finder * Fix picker preview lag by caching * Add picker preview for document symbols * Cache picker preview per document instead of view * Use line instead of range for preview doc * Add picker preview for buffer picker * Fix render bug and refactor picker * Refactor picker preview rendering * Split picker and preview and compose The current selected item is cloned on every event, which is undesirable * Refactor out clones in previewed picker * Retrieve doc from editor if possible in filepicker * Disable syntax highlight for picker preview Files already loaded in memory have syntax highlighting enabled * Ignore directory symlinks in file picker * Cleanup unnecessary pubs and derives * Remove unnecessary highlight from file picker * Reorganize buffer rendering * Use normal picker for code actions * Remove unnecessary generics and trait impls * Remove prepare_for_render and make render mutable * Skip picker preview if screen small, less padding
* Fix unused variable, parameter, and `mut` warnings in helix-term.Nathan Vegdahl2021-07-02
|
* Remove #[allow(unused)] from helix-term, and fix unused imports.Nathan Vegdahl2021-07-02
| | | | Lots of other warning still left. Will address in subsequent commits.
* reverse the dependency between helix-tui and helix-view (#366)Keith Simmons2021-06-25
| | | | | | | | | * reverse the dependency between helix-tui and helix-view by moving a fiew types to view * fix tests * clippy and format fixes Co-authored-by: Keith Simmons <keithsim@microsoft.com>
* Add cursor kind to separate hidden cursor from posIvan Tham2021-06-15
| | | | | Now IME cursor position should be correct since we can still set cursor position without drawing the cursor.
* Fix documentation popup panicwojciechkepka2021-06-10
|
* Drop some useless imports.Blaž Hrastnik2021-05-09
|
* Replace the Clear widget with buffer.clear/clear_with.Blaž Hrastnik2021-05-09
|
* Simplify the compositor callback.Blaž Hrastnik2021-05-09
|
* ui: Improve completion state handling.Blaž Hrastnik2021-04-05
|
* Filter the completion menu based on text entered.Blaž Hrastnik2021-03-27
|
* Merge some imports.Blaž Hrastnik2021-03-22
|
* pass clippy lintBlaž Hrastnik2021-03-11
|
* ui: popup: scroll documentation popups with c-u/c-d.Blaž Hrastnik2021-03-08
|
* ui: Move terminal into compositor, redo required_size hints.Blaž Hrastnik2021-03-08
|
* ui: wip: Markdown doc renderer.Blaž Hrastnik2021-03-05
|
* ui: Scrollable popup menu, with scrollbar indicator.Blaž Hrastnik2021-03-03
|
* clippy lintBlaž Hrastnik2021-03-02
|
* ui: Share popup code with menu.Blaž Hrastnik2021-03-02
| | | | Menu is now just wrapped in a popup.
* ui: Calculate popup rendering and sizing.Blaž Hrastnik2021-03-02
|
* lsp: Hover documentation draft.Blaž Hrastnik2021-02-25