Meredith Oleander
a0f8d33781
tui/editor.zig: add disable_selection, and make check_selection play nice with inclusive selections
2025-01-22 18:47:55 +11:00
Meredith Oleander
80c8795c3b
Merge branch 'master' into helix-mode-selections
2025-01-22 13:47:37 +11:00
84655c4ff8
feat(buffers): add dirty state indicator to buffer switcher
2025-01-21 22:53:09 +01:00
3f06f6b19c
feat(buffers): add buffer switcher
2025-01-21 22:32:43 +01:00
efb3ab42fd
feat(buffers): add tracking of last modified and last used times for buffers
2025-01-21 21:59:55 +01:00
4dddadb46d
feat(buffers): add home screen save all command
2025-01-21 21:44:05 +01:00
661808f316
feat(buffers): render buffer dirty state in open recent files palette
2025-01-21 21:43:35 +01:00
aa1e0674cc
feat(buffers): move buffer lifetime management to new Buffer.Manager module
2025-01-21 21:42:36 +01:00
fbeaefe7ff
feat(buffers): add reset_to_last_saved buffer function
2025-01-21 21:40:51 +01:00
e404c830c9
feat(buffers): define explicit errors for Buffer store functions
2025-01-21 21:40:27 +01:00
ba5f15dab8
feat(buffers): define explicit errors for Buffer load functions
2025-01-21 20:23:47 +01:00
672f85a58c
build: make contrib/make_release callable from a different destdir
2025-01-21 12:51:45 +01:00
Jonathan Marler
99aefc8d22
remove direct2d dependency and update zigwin32
...
Since we removed the direct2d renderer we no longer need to reference
the direct2d-zig repository. Instead we now directly reference the
zigwin32 repository. I've also updated that repository with a few fixes
and additions which allowed us to remove some code from flow.
2025-01-21 08:40:44 +01:00
142f6e51ae
feat(tui): show screen dimentions on resize
2025-01-20 20:30:24 +01:00
4842002136
fix(win32 gui): translate mouse wheel events from screen to window coordinates
2025-01-20 19:55:18 +01:00
91eba39019
fix(win32 gui): prevent index out of bounds in d3d11.paint
2025-01-20 19:46:22 +01:00
102a00098e
build: update thespian for minor performance improvements
2025-01-20 19:45:44 +01:00
feca5e8fd9
build: always optimize dependencies (again)
2025-01-20 16:40:46 +01:00
29f8b4680d
fix: disable mouse_idle_timer
...
It's not very important and it's too spammy which makes debug builds slow.
2025-01-20 15:49:16 +01:00
51e8e9c1ab
build: update zig-tracy to support win32
2025-01-20 15:33:52 +01:00
5b5fd26bdf
feat(win32 gui): add tracy zones to win32 gui renderer
2025-01-20 15:07:42 +01:00
Jonathan Marler
620e44ef02
win32 gui: fix high cpu usage, validate window in WM_PAINT
...
Looks like I probably accidently removed the calls to BeginPaint and
EndPaint in WM_PAINT, which, would cause the OS to think that the
window contents are never validated and will continuously send us WM_PAINT
messages. I've added these back in and now flow is back to low CPU usage
especially when idle.
2025-01-20 14:56:32 +01:00
4f5fa4a3ba
feat(keybind): move selection mode into keybind mode configuration
2025-01-19 19:21:44 +01:00
Meredith Oleander
70f0d8bea6
add helix selection internal tweaks
2025-01-19 17:37:36 +01:00
Meredith Oleander
3e65503902
develop helix cursor mode
2025-01-19 17:37:33 +01:00
386094001d
fix(vim-mode): prefer smart_move_begin of vim normal mode 'I' binding
2025-01-19 14:17:29 +01:00
e705d4ba01
fix(vim-mode): vim-mode bindings to enter insert mode
2025-01-19 14:15:44 +01:00
7dd61c4ba5
fix(keybind): provide fallback handling for legacy terminals the don not provide shifted key info
2025-01-19 14:05:36 +01:00
70c4c78138
feat(vim-mode): simplify vim mode bindings
2025-01-19 14:04:33 +01:00
42bc301426
fix(win32 gui): fix windows build broken by rename_symbol
2025-01-19 14:03:38 +01:00
9fc8e3edc3
fix(editor): send editor view and cursor position updates when number of document lines changes
...
closes #162
2025-01-19 12:10:59 +01:00
9f29853cd6
Merge pull request #149 from travisstaloch/lsp-rename
...
implement lsp rename
2025-01-18 23:33:25 +01:00
461726e10e
feat: add pause_undo and resume_undo commands
...
closes #91
2025-01-18 22:59:50 +01:00
4277f0f57b
feat(lsp): rename_symbol: add support for LSPs that do send document updates for renames
2025-01-18 20:34:14 +01:00
80cb31f75a
feat: copy current line if there is no selection
...
closes #160
2025-01-18 17:16:00 +01:00
edwloef
9ed9ec6360
add systemverilog lsp and formatter
2025-01-18 17:07:04 +01:00
f61c6c7f87
fix: cancel when clicking outside of a palette instead of activating the current item
2025-01-18 12:52:55 +01:00
0eec33c35e
fix: remove incomplete add_split bindings
2025-01-17 21:14:25 +01:00
48efa5536f
fix: use after free on fast project switching
2025-01-17 21:13:47 +01:00
d2735a5dd7
fix: prevent an integer overflow in editor.cancel_all_selections() on project switch
2025-01-17 20:52:34 +01:00
e1b1591167
feat(win32 gui): add font selection palette
...
closes #102
2025-01-17 20:32:20 +01:00
Jonathan Marler
3e953981fe
win32 gui: add Fonts type to get list of available fonts
...
Adds a Fonts type the render interface. Here's an example of how
you could use this in `gui.zig`:
```zig
const fonts = render.Fonts.init();
defer fonts.deinit();
const count = fonts.count();
std.log.info("{} fonts", .{count});
for (0..count) |font_index| {
const name = fonts.getName(font_index);
std.log.info("font {} '{}'", .{ font_index, std.unicode.fmtUtf16Le(name.slice()) });
}
```
2025-01-17 16:19:19 +01:00
04b77b4d28
fix(lsp): rename_symbol: convert columns to byte offsets and back
2025-01-17 15:56:46 +01:00
c8aa40895e
build(version): add tracking branch and upstream to version output
2025-01-17 13:02:30 +01:00
61d9f583a8
feat(emacs): add lsp-mode emacs keybindings
2025-01-17 12:33:02 +01:00
f659fcf586
feat(lsp): rename_symbol: add checks to file uri decoding
2025-01-16 23:40:10 +01:00
00efee6c02
fix(lsp): rename_symbol: fix error.InvalidMessage on multifile responses
2025-01-16 23:24:48 +01:00
155c1f663d
feat(lsp): rename_symbol: treat out-of-file edits as references
2025-01-16 23:02:52 +01:00
a449e0ec97
feat(lsp): rename_symbol: add cursors at rename points for interactive rename
2025-01-16 22:23:03 +01:00
e597fee2e5
feat(lsp): rename_symbol: decode and normalize file uri
2025-01-16 22:22:34 +01:00