Commit Graph
17 Commits
Author SHA1 Message Date
Antonio ScandurraandNathan Sobo 05ab1bdddf Synchronize FoldMap with buffer's contents lazily
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-05-04 18:27:56 +02:00
Antonio Scandurra 7bd192bdfb Add FoldMap::chars_at to randomized test 2021-05-04 14:13:28 +02:00
Antonio Scandurra 3ba463020c Test FoldMap to_display_offset, to_display_point, to_buffer_point 2021-05-04 12:16:35 +02:00
Antonio Scandurra d326e80657 Rework randomized test, ensuring order of folds is maintained correctly 2021-05-04 11:27:32 +02:00
Antonio Scandurra a0428667d0 Fix folds_in_range and add a test for it
With the current ordering, a linear scan is required in order to
determine which folds intersect the given range.
2021-05-04 11:24:33 +02:00
Nathan SoboandMax Brunsfeld 837f34a498 Fix cases where new folds that end where existing folds start
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-05-03 14:30:50 -06:00
Max Brunsfeld 189ee7c140 Add failing unit test for adjacent folds 2021-05-03 12:39:47 -07:00
Antonio Scandurra 4b38f2850d WIP 2021-05-03 18:58:39 +02:00
Antonio Scandurra 8cd451f3ca Implement move_line_up and move_line_down
This does not restore folds yet.
2021-05-03 11:37:36 +02:00
Nathan Sobo 870925e2ac Rerender tabs when buffers' file handles change
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 14:16:35 -07:00
Nathan Sobo 97a8a8ed43 Remove unsafe code from App::test_async
I don't actually think it was correct to allow the future to borrow a mutable app reference. I went back to passing a wrapper around the refcell to async tests. They'll be a bit more annoying to write but also totally safe.
2021-04-10 00:05:09 -06:00
Max Brunsfeld 079050541f Get app running and test passing after gpui App+Platform restructure 2021-04-09 16:56:32 -07:00
Max BrunsfeldandNathan Sobo 46f8665e41 Add save command
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-05 16:52:33 -07:00
Antonio Scandurra a88b63d83c Ensure FoldMap always contains at least one transform
Previously, when splicing an edit that deleted all transforms, we would
leave the `FoldMap` empty, thus violating a bunch of downstream
invariants and e.g. causing the `BufferRows` iterator to not return any
buffer row.

This commit ensures we always have at least one transform (an isomorphic
one, specifically) and adds additional test coverage for the
`FoldMap::buffer_rows` method by adding it to the randomized tests.
2021-03-29 10:18:28 +02:00
Nathan Sobo cfe3aae2de WIP: Get everything compiling again and keep window open 2021-03-19 12:12:10 -06:00
Nathan Sobo 23308e17a9 WIP on rebuilding with extracted UI framework 2021-03-18 13:13:31 -06:00
Nathan Sobo 356bc41752 WIP 2021-03-09 21:00:51 -07:00