Commit Graph
941 Commits
Author SHA1 Message Date
Isaac Clayton 3a4657614f Added theme to language 2022-07-08 18:11:28 +02:00
Isaac Clayton 0b85613a86 Done! Finish transition to async, very close to merging 2022-07-07 16:21:20 +02:00
Isaac Clayton 50db545b00 Fix most warnings 2022-07-07 16:19:49 +02:00
Isaac Clayton ae5262e93a Fix all residual errors, need to polish off warnings and TODOS 2022-07-07 16:17:03 +02:00
Isaac Clayton 69b1324a93 Further unpropogate async 2022-07-07 16:16:58 +02:00
Antonio Scandurra 3b345cba67 Allow providing an external format in format_on_save setting 2022-07-07 11:04:03 +02:00
Max Brunsfeld 4adcffcc9f Enable and disable nav buttons based on pane's navigation stack
Also, make the `NavHistory` type private to the `workspace` crate.
Expose only the `ItemNavHistory` type, via a method on Pane called
`nav_history_for_item`.
2022-07-06 15:46:43 -07:00
Antonio Scandurra f879f75a45 Move autosave logic up into Workspace and Pane 2022-07-06 16:33:22 +02:00
Mikayla Maki 7dd8f2289d Merge pull request #1286 from zed-industries/grid-renderer
Switch from line-and-character renderer to a direct grid renderer
2022-07-05 17:16:00 -07:00
Mikayla Maki ccab931a69 changed renderer 2022-07-05 17:10:01 -07:00
Keith Simmons 679122e7d1 Merge pull request #1271 from zed-industries/matching-bracket-highlights
Highlight matching bracket when newest selection head is on a bracket
2022-07-05 16:51:46 -07:00
Keith Simmons dcc3f6731f highlight both brackets, only when empty selection, and add test 2022-07-05 15:19:05 -07:00
Antonio Scandurra 633498c9a6 Remove non-determinism from autosave after delay 2022-07-05 17:54:54 +02:00
Antonio Scandurra 0d3eee7ab5 Always finish previous autosave before starting a new one 2022-07-05 17:51:01 +02:00
Antonio Scandurra 68d5f24dc6 Add unit test for autosave 2022-07-05 17:51:01 +02:00
Antonio Scandurra 57d6cb29b4 Honor Autosave setting in Editor 2022-07-05 17:51:01 +02:00
Max Brunsfeld 9a766d7087 Delete the autoclosing bracket when deleting the opening bracket 2022-07-04 10:46:35 -07:00
Keith Simmons 570d69ee5a Highlight matching bracket when newest selection head is on a bracket 2022-07-01 15:06:16 -07:00
Mikayla Maki 975793d8d5 Fixed cursor positioning bugs in multi-byte charcters. Still have at least one though :/ 2022-07-01 14:53:19 -07:00
Mikayla Maki 7c8247b147 rendering cursor correctly 2022-07-01 13:03:26 -07:00
Mikayla Maki a3d873b15d Fixed a major bug and now use the same cursor paint logic as the editor 2022-06-30 20:43:51 -07:00
Keith Simmons 38c6b275a8 add hover popover setting 2022-06-27 16:21:22 -07:00
Keith Simmons 98c942fa28 bump protocol version and fix panic from storing display points instead of anchors 2022-06-27 15:10:36 -07:00
Keith Simmons 859579f85f Fix usage of existing definitions 2022-06-27 10:07:44 -07:00
Keith Simmons 895c185326 Change mouse cursor when link is visible 2022-06-24 21:55:57 -07:00
Keith Simmons 4839b4aa54 fix rebase merge error 2022-06-24 15:11:57 -07:00
Keith Simmons a76be2126c working jump to definition with tests 2022-06-24 15:09:31 -07:00
Keith Simmons b2c6087d10 Working underline based on symbol origin 2022-06-24 15:05:35 -07:00
Keith Simmons 3586b6459a wip 2022-06-24 15:03:24 -07:00
Keith Simmons 9efa2c61f7 wip 2022-06-24 15:03:24 -07:00
Max Brunsfeld a6e865af05 Merge pull request #1234 from zed-industries/fix-editor-cloning
Clone fold and selection state correctly when splitting an editor
2022-06-23 13:27:40 -07:00
Max Brunsfeld 90c556cb47 Clone fold and selection state correctly when splitting an editor 2022-06-23 13:15:50 -07:00
Keith Simmons 5c67560264 Use NonZeroU32 to ensure settings tabsize cannot be zero 2022-06-23 12:55:38 -07:00
Antonio ScandurraandNathan Sobo c737c7c3f7 Don't override top-level settings with language defaults
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-23 16:40:57 +02:00
Keith Simmons 757263be5d Add comment linking to long term plan 2022-06-21 12:38:27 -07:00
Keith Simmons 6f0e2f163a Don't trigger hover popover action when mouse is over context menu 2022-06-21 11:23:25 -07:00
Keith Simmons 1ed49ac974 hide hover on editor blur 2022-06-21 10:37:59 -07:00
Antonio Scandurra 20d4bbf136 Respect close in language configuration when autoclosing bracket 2022-06-20 11:50:44 +02:00
Antonio Scandurra 18631fd3d0 Merge pull request #1204 from zed-industries/accurate-is-dirty
Determine `Buffer::is_dirty` based on the rope's fingerprint
2022-06-17 16:08:07 +02:00
Antonio Scandurra 50530929eb Fix editor tests after changing the semantics of is_dirty 2022-06-17 12:57:40 +02:00
Antonio Scandurra 5ad9e9e6c8 Determine Buffer::is_dirty based on the rope's fingerprint 2022-06-17 12:38:25 +02:00
Antonio Scandurra 4d65ad3543 Introduce a new fingerprint field to TextSummary
This is calculated in `Rope` and uses the `bromberg_sl2` homomorphic
hash function to determine the fingerprint of a single chunk and
compose each chunk fingerprint into a single fingerprint for the entire
rope that is equivalent to hashing all the rope's bytes at once.
2022-06-17 12:12:37 +02:00
Max Brunsfeld 54abc9864a Disable auto-indent entirely for markdown 2022-06-16 14:20:09 -07:00
Antonio Scandurra 33c3c5f0bb Cap context menu's width to cover at most 70% of the window 2022-06-16 10:40:12 +02:00
Antonio Scandurra 2296e5a08d Add tooltip to follow collaborators 2022-06-15 17:08:39 +02:00
Antonio Scandurra 4a29ea7da8 Autoscroll to newest selection when adding it via the cursor 2022-06-15 13:21:01 +02:00
Antonio Scandurra 4899f60708 Fix surrounding text with bracket pairs with multiple selections
This was probably a regression that was introduced with the new batched
`Buffer::edit` API and was caused by providing selection ranges in a
non-ordered fashion (we were passing all the starts first and then all the
ends).

With this commit we are adding a unit test to verify the behavior of
`Editor::surround_with_bracket_pair` and changing the order in which
we pass edit ranges to respect the selection order.
2022-06-15 11:48:21 +02:00
Antonio Scandurra eceb736095 Simplify EditorElement::layout_blocks 2022-06-10 13:57:43 +02:00
Antonio Scandurra d467da1afc Introduce a new BlockStyle field for blocks
This new field allows blocks to specify how they want to be laid out:

- If `Fixed` they can take up all the width they want and they will impact
the scroll width of the editor. This is useful for diagnostic messages and
allows scrolling the editor further to the right to visualize the entire message.
- If `Flex` they can extend all the way to the scroll width without impacting it
any further. This is useful for the rename editor that we insert as a block
decoration when hitting `F2`.
- If `Sticky`, they will be as wide as the editor element and won't participate
in the horizontal scrolling of the editor. This is useful for headers in general,
where we want e.g. the filename and the jump button to always be visible
independently of how much the user has scrolled to the right.
2022-06-10 13:47:40 +02:00
Keith Simmons c921ddae3a Always delay hover display 2022-06-09 18:08:23 -07:00