Commit graph

178 commits

Author SHA1 Message Date
7520289442
fix: always update tab views when splits arrangement has changed
closes #485
2026-02-04 09:54:07 +01:00
cc2aabf7dd
feat: allow moving tabs to empty splits 2026-02-04 09:53:18 +01:00
2d2d8a915b
refactor: make tabs.find_next/previous_tab_buffer also return view 2026-02-03 21:31:47 +01:00
c9dc713537
refactor: display regular tab save state icon in auto_save_mode on_focus_change
As on_focus_change does not save really often the icon showing the save state
may still be very usefull.
2026-02-02 17:20:12 +01:00
6312d44d15
refactor: display regular file state icon in auto_save_mode on_focus_change
As on_focus_change does not save really often the icon showing the save
state may still be very usefull.
2026-02-02 17:20:12 +01:00
e4ce2fb8e3
fix: crash on long buffer name in filestate widget
And in project state restore.

closes #478
2026-02-01 21:26:32 +01:00
fa68164b5e
feat: add more modes to linenumstate status bar widget
There are now four modes.

- default (Ln ln, Col col)
- compact (ln:col)
- total (ln:col/total)
- percent (pct% ln:col)

The mode can be configured in the 'bottom_bar' (or 'top_bar') configuration
option by appending values to the 'linenumber' widget. The format is now as
follows:

'linenumber:{width},{Leader},{DigitStyle},{Mode}'

All values are optional and can be left empty for defaults.

width - minimum width of numeric fields
Leader - 'space' or 'zero'
DigitStyle - 'ascii', 'digital', 'subscript' or 'superscript'
Mode - 'default', 'compact', 'total' or 'percent'

e.g: linenumber:2,zero,,percent

see #470
2026-01-26 15:59:22 +01:00
9b02a8f6e9
refactor: use enum type for buffer references 2026-01-22 14:32:44 +01:00
c04bbe4062
fix: reset background style when rendering status bar grip 2026-01-22 13:06:02 +01:00
d600e3c353
refactor: keep tab ordering stable when moving tabs between splits 2026-01-20 21:30:47 +01:00
4f68898f96
refactor: create a split when moving a tab past the last right split 2026-01-20 21:12:47 +01:00
7e8f06396e
refactor: force update tabbar when adding or removing splits 2026-01-20 20:51:23 +01:00
531ec11425
refactor: move tab to end of tab bar if dropped on drop target 2026-01-20 20:29:05 +01:00
8dcbed86aa
refactor: add tab bar drop target to allow dropping tabs in other splits 2026-01-20 20:23:48 +01:00
0992f08a94
refactor: clean-up some unused stuff 2026-01-20 14:42:25 +01:00
6029c705e6
fix: improve active and focused tab state tracking 2026-01-20 13:48:40 +01:00
95cb63c42a
refactor: render unfocused tabs with style from theme 2026-01-20 13:48:06 +01:00
18f4d9cef3
refactor: add tab bar theme variables for unfocused tabs 2026-01-20 13:46:49 +01:00
a1fbd9cf7b
fix: navigate to tab after moving it if it was active before move 2026-01-20 10:49:59 +01:00
933df0cdd5
fix: make select_next_tab and select_previous_tab wrap around again 2026-01-19 22:53:31 +01:00
768032d3ea
fix: improve movement of tabs
This switches to movement semantics for tab dragging and moving.
Previously we switched tabs, which was confusing and a little buggy.

closes #459
2026-01-19 22:45:38 +01:00
48c42737a6
fix: don't skip tab updates while dragging 2026-01-15 22:07:34 +01:00
a4b80377c1
fix: tabbar initial render 2026-01-15 20:30:13 +01:00
a632305a6f
refactor: tab rendering 2026-01-15 20:12:17 +01:00
8c6091c419
fix: only update tabbar widgets if buffers have changed 2026-01-15 19:53:40 +01:00
ff38c37df7
refactor: make tab bar split aware 2026-01-15 17:56:08 +01:00
8cfab31104
refactor: add tracing for update_hover, clear_hover_focus and refresh_hover 2026-01-15 17:53:12 +01:00
c3cf5ea02f
refactor: add source location tracing for need_render calls 2026-01-15 17:51:38 +01:00
2d5288aa6f
refactor: remove unused error return in Plane.put_yx and Plane.cursor_move_yx 2026-01-13 16:19:47 +01:00
25d5f80a4c
refactor: drop all c_(u)int usage in Plane
The use of c_int and c_uint comes from the days when flow supported
building agains notcurses has a c API.
2026-01-13 12:44:40 +01:00
c1200ac5bd
refactor: make Widget.get method const 2026-01-06 19:22:24 +01:00
5bb742fe58
feat: render red lock symbol in modestate when running as root 2025-11-24 13:24:55 +01:00
15c9469365
fix: render auto_save state in filestate widget
closes #344
2025-11-03 22:16:48 +01:00
0c38e8c4ea
fix: don't show dirty state in tabs for auto_save buffers 2025-11-03 22:14:43 +01:00
fa6ea11d57
fix: only reset mouse drag context when the dragging button is released
closes #320
2025-11-03 20:48:08 +01:00
Igor Támara
7f7f12a441 feat: update vcs changed files info when click on branch status 2025-10-28 22:20:36 +01:00
3e4a604739
refactor: move git status request to project_manager 2025-10-28 21:31:32 +01:00
265bff583b
feat: make tabs draggable 2025-10-25 00:09:35 +02:00
2704c7be07
feat: add place_next_tab and swap_tabs commands 2025-10-24 12:21:48 +02:00
89e9fd7b83
feat: add move_tab_next/_previous commands 2025-10-24 12:19:03 +02:00
25a719382f
fix: store button click locations as signed values 2025-10-10 16:05:50 +02:00
e6cc1c35f9
fix: rendering of tab bar background 2025-10-10 15:38:49 +02:00
00bbeaedf9
feat: if buffer is dirty show save button in tabs instead of close 2025-10-09 21:12:15 +02:00
4e38d15878
feat: close buffer if tab close icon is clicked 2025-10-09 20:52:00 +02:00
ce87dcfa2b
refactor: pass relative click position to button click handlers
This a big refactor just to clean-up type definitions used by Button and Menu.
The goals is to pass the click position as a cursor object.
2025-10-09 19:11:25 +02:00
35ccf7f1df
feat: optionally customize tab clean indicator 2025-10-09 17:11:28 +02:00
52e29b7825
feat: add optional tab padding 2025-10-09 17:11:07 +02:00
94adc72283
feat: render close icon in tabs on hover 2025-10-09 16:50:29 +02:00
e2c0325a7a
fix: incorrect tab width when file type icons are turned on 2025-10-09 15:23:37 +02:00
78b29c321e
fix: don't render color for black or white file type icons in tabs 2025-10-09 14:33:09 +02:00