Nathan Sobo
2f427769df
Allow a new search to be created with cmd-enter
...
This replaces the `cmd-alt-shift-F` binding to open a new search. Instead, you can preserve the existing search results by entering a query and then hitting `cmd-enter` instead of `enter`. This opens a new project find view and restores the previous view to whatever query it was previously displaying. It's a bit strange, but I don't want to rely on splitting as the only way of creating multiple sets of search results.
2022-02-26 13:23:05 -07:00
Nathan Sobo
ae1a46a4e4
Render a magnifier icon and the query in project search tab
...
Also: Wire up events so the modified status updates correctly.
2022-02-26 08:21:38 -07:00
Antonio Scandurra
a78fe4ef6a
Don't focus results editor on cmd-shift-f
when there are no results
2022-02-26 14:43:02 +01:00
Nathan Sobo
f6b7cbd5cf
Always open a new project find on alt-cmd-shift-F
2022-02-25 19:48:43 -07:00
Nathan Sobo
dea40c5d1a
Don't show buffer search UI on ProjectSearchView
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-25 16:14:45 -07:00
Nathan Sobo
e822c6a64e
Handle project-wide search on guests
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-25 15:09:47 -07:00
Antonio Scandurra
368301fcec
Reuse a previous project find whenever possible
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-25 18:30:28 +01:00
Antonio Scandurra
e278c423d3
Don't assume that cloning on split will reuse the same underlying model
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-25 18:30:04 +01:00
Antonio Scandurra
7123407f42
Don't share query editor state after project find has been split
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-25 18:10:48 +01:00
Antonio Scandurra
1e04411066
Don't focus query editor if there are matches on tab switch
2022-02-25 17:23:03 +01:00
Antonio Scandurra
b506db7c93
Use the new split pane's navigation history when cloning an item
2022-02-25 17:22:30 +01:00
Antonio Scandurra
88bfe5acb0
Allow splitting project find and maintain the searches in sync
2022-02-25 16:20:02 +01:00
Antonio Scandurra
f649074d36
Refine project find's UX
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-25 15:27:34 +01:00
Nathan Sobo
51c645f6b4
Toggle focus between query editor and results on cmd-shift-F
2022-02-25 05:04:45 -07:00
Antonio Scandurra
5be93044f6
Focus results editor when project find matches are updated
2022-02-25 12:17:25 +01:00
Antonio Scandurra
a077210873
Focus query editor when deploying project-find
2022-02-25 10:58:32 +01:00
Antonio Scandurra
0bf944e038
Use Project::search
in ProjectFind
and show search results
2022-02-25 10:32:45 +01:00
Max Brunsfeld
5644336df3
Merge branch 'main' into project-find
2022-02-24 17:22:09 -08:00
Max Brunsfeld
47b654063e
Provide editor styling information separately from editor settings
...
* Since regular editors' font sizes and families are controlled by
the settings and not the theme, don't store a dummy text style in
the theme. Instead, only store a font color, and synthesize
the text style for regular editors using both the theme and the
settings.
* Style single-line and auto-height editors (now called "field
editors") using a single function that takes the entire theme and
selects a relevant sub-object.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-24 16:42:00 -08:00
Antonio Scandurra
6d9b003634
WIP: Start sketching in ProjectFindView
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-02-24 19:07:00 +01:00
Antonio Scandurra
fed6f708c0
Start on project-wide find
2022-02-24 11:57:53 +01:00
Antonio Scandurra
04cbb7f20e
Allow matching on active editor's stale results if find is slow
2022-02-18 17:01:22 +01:00
Antonio Scandurra
ea39eb384d
Select closest match when find query changes
2022-02-18 16:45:59 +01:00
Antonio Scandurra
0eb0faa2a1
Allow going to next/prev match even if FindBar
has been dismissed
2022-02-18 16:33:26 +01:00
Max Brunsfeld
10580f96a3
Automatically include current view id in element state ids
2022-02-17 13:44:46 -08:00
Antonio Scandurra
2fcdcac080
Fetch code actions on cursor movement instead of on-demand
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-11 14:41:19 +01:00
Nathan Sobo
5049c1b286
Make Editor::newest_anchor_selection return a non-optional value
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-02-10 10:16:54 -07:00
Max Brunsfeld
93bcde953c
Consolidate logic for completion alongside code actions in Project
...
This way, completions are dealt with more consistently with code actions,
and the logic is not spread across so many places. The `language::File`
trait and the multibuffer no longer need to deal with completions. Completions
are no longer generic over an anchor type.
2022-02-08 14:24:45 -08:00
Antonio Scandurra
807049af51
Always populate find bar on cmd-f
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:13:58 +01:00
Antonio Scandurra
7a8765a016
Dismiss the focused find bar on escape
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-04 16:11:48 +01:00
Antonio Scandurra
ab26a175a4
Opt into language-aware features when getting buffer chunks
...
We use chunks a lot to transform points and sync the various display maps,
and always querying tree-sitter or the LSP diagnostics in those cases is
unnecessarily expensive.
2022-02-03 11:21:30 +01:00
Max Brunsfeld
88adddb324
Remove theme parameters from buffer/display map's chunks methods
...
Change Chunks to contain highlight ids instead of actual highlight
styles. Retrieve the actual highlight style from the theme in the
editor element layer.
This is to set us up to perform syntax highlighting in other code
paths where the theme is not available.
2022-02-02 16:33:04 -08:00
Antonio Scandurra
b89a39bcb3
Filter and sort suggestions in autocomplete
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-02-01 15:11:20 +01:00
Antonio Scandurra
bcbd265de9
Dismiss autocomplete when moving outside of a word
2022-02-01 13:27:49 +01:00
Antonio Scandurra
3ccbd77269
Move match index before the navigation buttons
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-01-31 14:06:49 +01:00
Antonio Scandurra
51ec350635
Assign a background to find buttons
2022-01-31 14:00:35 +01:00
Antonio Scandurra
eb537214ed
Fix panic when moving to next/prev result but there are no matches
2022-01-31 11:04:53 +01:00
Antonio Scandurra
803cdd00a6
Add some basic styling to FindBar
2022-01-31 11:00:29 +01:00
Antonio Scandurra
611538f6bd
Clear highlighted matches when dismissing FindBar
2022-01-31 09:58:03 +01:00
Nathan Sobo
b1639e5677
Add cmd-g and cmd-shift-g to jump to next / previous result
...
I added the action handler on Pane so we can use these bindings when the find bar isn't focused.
2022-01-30 20:59:20 -07:00
Antonio Scandurra
f90193beea
Populate query and select it only if find bar isn't already deployed
2022-01-30 16:44:42 +01:00
Antonio Scandurra
83423a4344
Use cmd-f to move focus back to the editor when find bar is focused
2022-01-30 16:30:07 +01:00
Antonio Scandurra
9ce1eda305
Bind cmd-e
to deploy FindBar
without focusing it
2022-01-30 16:11:48 +01:00
Antonio Scandurra
c53b6b907a
Populate query with text under selection when hitting cmd-f
2022-01-30 16:01:05 +01:00
Antonio Scandurra
2a1b1adfab
Bind enter
and shift-enter
in FindBar
2022-01-30 15:20:57 +01:00
Antonio Scandurra
e8105c9a99
Show a message when no matches were found
2022-01-29 18:23:14 +01:00
Antonio Scandurra
c16bd98f56
Fix panic when no matches were found
2022-01-29 18:21:19 +01:00
Antonio Scandurra
969d81b632
Determine active match index correctly when cursor is after last match
2022-01-29 16:44:26 +01:00
Antonio Scandurra
df4cc45790
Select next/prev find match based on whether we intersect active match
...
Also, capture the next/prev selection logic in a unit test.
2022-01-29 16:16:48 +01:00
Antonio Scandurra
1d55872e7a
Display active match and allow going to next or previous match
...
We still need to write a unit test for this, as well as add a keybinding.
2022-01-29 14:38:58 +01:00