ForLoveOfCats and Mikayla
fbea44bc5c
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev >
2022-08-10 16:51:01 -07:00
K Simmons
9fcea3e805
Pane focus working. Modals seem broken now
2022-08-09 17:15:54 -07:00
K Simmons
b76bd98ed8
WIP compiling but failing with circular reference
2022-08-09 17:15:52 -07:00
K Simmons
20770e7240
Event dispatch moved to MutableAppContext. No longer dispatches from presenter. Not currently handling key presses properly
2022-08-09 17:09:16 -07:00
K Simmons
ed91cee43d
working diagnostic popover. Also renamed GoToNextDiagnostic to GoToDiagnostic and adjusted it's action to jump to the popover's diagnostic if it is visible
2022-07-20 19:02:33 -07:00
Nate Butler
958a9bd730
Merge branch 'main' into theme-improvements
2022-07-19 20:12:02 -04:00
Nate Butler
5a3eba5a0a
Add icon sets for sizes 8, 12 and 16, remove old icons
2022-07-19 17:11:15 -04:00
K Simmons
d264ba8e16
Rework presenter and MouseRegion to use Handler hashmap rather than individual fields
2022-07-17 23:19:32 -07:00
Nate Butler
76f4712d6a
Update icons in rust
...
Updated icons
- Diagnostic states
- Sidebar icons (project, contacts)
- Navigation arrows
2022-07-16 11:51:10 -04:00
Antonio Scandurra
9de9d517fd
Differentiate among tabs with the same name
...
This commit introduces a new, optional `Item::tab_description` method
that lets implementers define a description for the tab with a certain
`detail`. When two or more tabs match the same description, we will
increase the `detail` until tabs don't match anymore or increasing the
`detail` doesn't disambiguate tabs any further.
As soon as we find a valid `detail` that disambiguates tabs enough, we
will pass it to `Item::tab_content`. In `Editor`, this is implemented by
showing more and more of the path's suffix as `detail` is increased.
2022-07-14 11:54:11 +02:00
Antonio Scandurra
f879f75a45
Move autosave logic up into Workspace and Pane
2022-07-06 16:33:22 +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
3322206aa9
Add tooltip for project diagnostics
2022-06-15 17:12:47 +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
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
6a4995357b
Introduce an optional primary field to ExcerptRange
2022-06-08 12:23:12 +02:00
Antonio Scandurra
cbbdef5434
Extract an ExcerptRange containing a context field in multi_buffer
...
This lays the groundwork for adding an optional `primary` field that can
be supplied to provide the "jump to" feature.
2022-06-08 12:13:04 +02:00
Antonio Scandurra and Max Brunsfeld
7aa9895eb1
Fix tracking of in-progress disk-based diagnostics on indicator
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2022-06-07 19:35:53 +02:00
Antonio Scandurra and Max Brunsfeld
33183cfdab
Avoid refreshing diagnostics for language servers that didn't update
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2022-06-07 19:05:06 +02:00
Antonio Scandurra
77224e023a
Require that PartialEq is implemented for Action
2022-06-06 09:18:44 +02:00
Antonio Scandurra
b51a485a11
Use anchors to jump to diagnostic whenever possible
2022-06-02 09:30:07 +02:00
Antonio Scandurra
0e628e04cf
Simplify usage of tooltip
...
Now you simply specify a text, an action and a style and GPUI will
take of rendering it properly. This is simpler compared to always
providing a custom element and should make tooltip more consistent
across the UI.
2022-06-02 09:12:50 +02:00
Antonio Scandurra
10977b1f9c
Show tooltip when hovering over jump to diagnostic icon
2022-06-01 09:55:45 +02:00
Antonio Scandurra
eaf133b04e
Jump to primary diagnostic when clicking on header's jump icon
2022-05-31 16:25:14 +02:00
Antonio Scandurra
4150dcfecc
Show a clickable jump icon for each diagnostic group header
2022-05-31 15:57:22 +02:00
Antonio Scandurra
0b765ebdc6
Pass a &mut BlockContext when rendering blocks
...
This wraps and derefs to `RenderContext<Editor>`, so that we can
easily use `MouseEventHandler`s in blocks.
2022-05-31 15:50:34 +02:00
Nathan Sobo
287aff941e
Render a context menu when right-clicking in project panel
...
It doesn't currently do anything, but I managed to get it rendering in an absolutely positioned way.
2022-05-26 09:59:25 +02:00
Max Brunsfeld and Nathan Sobo
65c8bea372
Distinguish between singleton and non-singleton workspace items
...
* Prompt to save singleton items before non-singleton ones
* Don't prompt to save multi-buffers if they contain excerpts to items that are open elsewhere and not being closed.
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-05-23 16:03:00 -07:00
Max Brunsfeld
259d76aa40
Start work on handling multibuffers properly when closing unsaved buffers
2022-05-22 16:48:33 -07:00
Max Brunsfeld
e6011794ca
Remove AppState from workspace actions
...
This allows those actions to be bound to keystrokes in the keymap.
Also, remove the WorkspaceParams struct, simplify how Workspaces are
constructed.
2022-05-19 14:37:26 -07:00
Keith Simmons
b03abdb6df
Reduce accessibility of multibuffer read to reduce risk of borrowing snapshot and buffer refcells twice
2022-05-13 16:58:30 -07:00
Keith Simmons
9bb347b513
Review fixes
2022-05-13 15:55:27 -07:00
Keith Simmons
c95f74648a
Rename selected_ranges and selected_display_ranges to remove redundant selected
2022-05-13 15:55:27 -07:00
Keith Simmons
2a984285a2
store buffer and display_map model handles on selections collection
2022-05-13 15:55:27 -07:00
Keith Simmons
851e04d46b
Passing tests and removed local argument. Also pulled autoscroll argument out to change_selections
2022-05-13 15:55:27 -07:00
Keith Simmons
9b46bb0ee6
Move selection helpers to SelectionCollection, add update_anchor_selections, add a number of invariant preserving mutation functions to the MutableSelectionCollection
2022-05-13 15:55:17 -07:00
Antonio Scandurra
58367fccfb
WIP
2022-05-05 15:15:58 +02:00
Max Brunsfeld
3e9daa2377
Give hover state to picker items, keystrokes in command palette
2022-04-28 15:17:56 -07:00
Max Brunsfeld
936f7a9b94
Give no-error diagnostic indicator a hover state
2022-04-28 12:35:20 -07:00
Max Brunsfeld
7f6ddbc12e
Restructure status bar theme to style interactive elements more concisely
...
Introduce an `Interactive` wrapper type that allows themes to selectively
override properties of items in a hovered or active state.
2022-04-28 10:59:32 -07:00
Max Brunsfeld
0a4914f4bd
Combine diagnostic status w/ diagnostic message indicators
...
Improve the indicator styling
2022-04-27 14:25:39 -07:00
Max Brunsfeld
526ec9e283
Start re-styling diagnostic indicator in status bar
2022-04-27 14:25:39 -07:00
Max Brunsfeld and Nathan Sobo
476165f242
Allow dumping the project diagnostic view's state as JSON
...
Also, improve DebugElements action so that it shows the JSON in an editor.
Co-authored-by: Nathan Sobo <nathan@zed.dev >
2022-04-11 19:51:46 -07:00
Max Brunsfeld
8bc0050578
Load all keybindings from JSON file
2022-04-10 14:29:45 -07:00
0cf9925cb1
Restructure action macro to assign a namespace to every action
...
Also, allow arbitrary types to be used as Actions via the impl_actions macro
Co-authored-by: Nathan Sobo <nathan@zed.dev >
Co-authored-by: Keith Simmons <keith@zed.dev >
2022-04-07 16:20:49 -07:00
Max Brunsfeld
1e1f153e89
Fix diagnostic updates after restarting an LSP w/ a pending diagnostic job
2022-04-06 22:02:27 -07:00
Max Brunsfeld
b00373f24c
Update breadcrumbs when multibuffers' excerpts change
2022-04-06 17:12:36 -07:00
Max Brunsfeld and Keith Simmons
dce66e6f9e
Move Settings to its own crate
...
Co-authored-by: Keith Simmons <keith@zed.dev >
2022-04-06 10:23:33 -07:00
Antonio Scandurra
cc11f45a1a
Introduce workspace::Item::reload to manually trigger a reload
2022-04-01 14:02:49 +02:00