Commit Graph
5172 Commits
Author SHA1 Message Date
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
Keith Simmons a9c3aa48b3 Merge fix 2022-06-09 17:07:32 -07:00
Keith Simmons b1b41425db fix compile error in EditorLspTestContext 2022-06-09 17:03:45 -07:00
Keith Simmons 9c561064c8 Test fixes 2022-06-09 17:03:45 -07:00
Keith Simmons 9f53cfb758 Fix delayed lsp request 2022-06-09 17:03:45 -07:00
Keith Simmons d75a411aad test and build fixes 2022-06-09 17:03:45 -07:00
Keith Simmons 2232ebf584 Add hover test and tweak dismiss logic 2022-06-09 17:03:45 -07:00
Keith Simmons 6cbb582c48 Hide hover when font changes, and handle case where delay was preventing hover with large symbol range 2022-06-09 17:03:44 -07:00
Keith Simmons 5f1e3a5933 Rework hover delay, respect editor font size, and enable hover in multibuffers 2022-06-09 17:03:44 -07:00
Keith Simmons a07c3b8731 wip 2022-06-09 17:03:44 -07:00
Max Brunsfeld 2e11995a75 Merge pull request #1155 from zed-industries/golang
Add Go support
2022-06-09 14:18:37 -07:00
Max Brunsfeld 01aca3b128 Add tests and fix bugs for editor indent/outdent commands w/ hard tabs 2022-06-09 10:26:09 -07:00
Antonio Scandurra 77719c2e5c Snap overlay's bottom/right edge to same window's edge on overflow 2022-06-09 13:48:02 +02:00
Antonio Scandurra e19d19ba7a Add unit test to ensure changing enable_language_server works 2022-06-09 10:48:06 +02:00
Max Brunsfeld 60335c5d1c Add support for hard tabs
* Add a `hard_tabs` setting that causes indentation to be performed
  using a tab instead of multiple spaces.
* Change Buffer's indentation-related APIs to return an `IndentSize`
  struct with a length and a kind, instead of just a single u32.
* Use hard tabs by default in Go.
2022-06-08 18:30:10 -07:00
Antonio Scandurra 96602c79bc Render a "Jump to Buffer" icon on all excerpt headers 2022-06-08 15:31:29 +02:00
Antonio Scandurra 92e9c9a6c0 Move ProjectDiagnosticsEditor::jump to Editor::jump 2022-06-08 15:08:11 +02:00
Antonio Scandurra 6b02cce095 Expose a unique key: usize in ExcerptBoundary 2022-06-08 15:02:52 +02:00
Antonio Scandurra 19047bd204 Snapshot file instead of path when creating a buffer snapshot 2022-06-08 14:29:14 +02:00
Antonio Scandurra 6a4995357b Introduce an optional primary field to ExcerptRange 2022-06-08 12:23:12 +02:00