Piotr Osiewicz
8b033223fb
Go back to previous mode on rejection of semantic indexing
2023-08-09 12:28:15 +02:00
Piotr Osiewicz
d34da2db69
fix dismiss tooltip for project search
2023-08-09 01:37:17 +02:00
Piotr Osiewicz
22f630e985
chore: remove unused function
2023-08-09 01:30:45 +02:00
Piotr Osiewicz
f978acdd34
buffer: use shared func for nav button rendering
2023-08-09 01:29:22 +02:00
Piotr Osiewicz
e2b8e6ce63
chore: fix compiler warnings
2023-08-09 01:16:24 +02:00
Piotr Osiewicz
a583d1c6cc
Do not display match count when query is empty
2023-08-09 01:15:17 +02:00
Piotr Osiewicz
b282bdfe5a
buffer: finish up moving things around
2023-08-09 01:09:07 +02:00
Piotr Osiewicz
e1724daf35
buffer: WIP style sides of buffer search
2023-08-09 00:38:50 +02:00
Piotr Osiewicz
a7bd05ec0a
buffer: use icons for search options
2023-08-09 00:16:12 +02:00
Nathan Sobo
b2d9ccc0a2
Move more window methods off AsyncAppContext
2023-08-08 11:38:07 -06:00
Nathan Sobo
d896d89842
Store an AnyWindowHandle in WindowContext
2023-08-08 11:08:37 -06:00
Piotr Osiewicz
2c570fbb72
Move option button rendering to search_bar
2023-08-08 16:26:19 +02:00
Piotr Osiewicz
343e9d080e
Finish migration to modes for buffer search
2023-08-08 15:57:07 +02:00
Piotr Osiewicz
fecea03c90
Add modes to buffer search
2023-08-08 15:25:32 +02:00
Piotr Osiewicz
0374fdfd06
Move mode cycling to mode module
2023-08-08 15:20:34 +02:00
Piotr Osiewicz
7547fa2679
Move mode rendering to a search_bar module
2023-08-08 15:11:32 +02:00
Piotr Osiewicz
31a56720d9
Move nav buttons generation to search_bar
2023-08-08 14:56:21 +02:00
Piotr Osiewicz
c53554ead3
Remove SearchOptions::REGEX.
...
A bit WIP as it awaits migration of buffer search to modes
2023-08-08 14:42:11 +02:00
Piotr Osiewicz
0ca29e56c2
Update keybinds to use new names
2023-08-08 14:33:51 +02:00
Piotr Osiewicz
d497f279f0
Move ButtonSide to new module
2023-08-08 14:24:26 +02:00
Piotr Osiewicz
95891d28d8
Move SearchMode and SearchHistory to separate modules
2023-08-08 14:14:39 +02:00
Nathan Sobo
f0da6b05fd
Remove TestAppContext::add_view
...
Instead, we now call this on window handles.
2023-08-07 22:46:48 -06:00
Piotr Osiewicz
7a1f40405a
Add dismiss button to project search
2023-08-07 12:22:10 +02:00
Nathan Sobo
adc50469ff
WIP
2023-08-06 12:45:31 -06:00
Piotr Osiewicz
9889449a81
Adjust row count for project search.
...
Instead of using the same row count as for the breadcrumbs, we double the height so that there's some space for padding.
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-04 18:54:27 +02:00
Piotr Osiewicz
de8e1852a8
Align match count
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-04 18:21:46 +02:00
Piotr Osiewicz
8fa082c28b
Center the query editor (for real now)
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-04 17:49:54 +02:00
Piotr Osiewicz
82eb6d8bc3
Change styling of match nav buttons
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-04 17:35:59 +02:00
Piotr Osiewicz
2c0e3886a5
Align search bar in the middle
2023-08-04 15:38:53 +02:00
Piotr Osiewicz
fcefb37ca0
Prevent modes from being vertically centered when row_count changes
2023-08-04 13:54:50 +02:00
Piotr Osiewicz
792f29e288
Refresh windows on toggle_filters.
2023-08-04 12:25:18 +02:00
Piotr Osiewicz
50d03ffc8c
Revert "Focus filters when enabled"
...
This reverts commit 13a6b65a35
.
2023-08-04 12:24:57 +02:00
Piotr Osiewicz
13a6b65a35
Focus filters when enabled
2023-08-04 02:33:48 +02:00
Nathan Sobo
485c0a482e
Don't refcount window handles
2023-08-03 17:11:47 -06:00
Nathan Sobo
afcc0d621b
WIP
2023-08-03 17:03:39 -06:00
KCaverly
c14a99d8fa
updated project_search text
2023-08-03 17:02:46 -04:00
Piotr Osiewicz
31fb503418
Rewrite permission queries (it no longer blocks)
...
Co-authored-by: Kyle <kyle@zed.dev>
Co-authored-by: Max <max@zed.dev>
2023-08-03 20:26:56 +02:00
Piotr Osiewicz
d157e3598d
Query semantic_permissioned on demand.
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-03 19:27:27 +02:00
Piotr Osiewicz
799adf6c25
Query Semantic Index Engine for permission state.
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-03 19:18:14 +02:00
KCaverly
8dd330a160
add semantic search prompt for the indexing permission on first search
...
Co-authored-by: Piotr <piotr@zed.dev>
2023-08-03 12:52:20 -04:00
KCaverly
358e4e5ccf
update minor text when actively searching
2023-08-03 10:22:31 -04:00
Piotr Osiewicz
822b1ec002
Clean up compiler warnings
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-03 16:12:08 +02:00
KCaverly
b4f6d6eadc
update search text for no results
2023-08-02 17:14:15 -04:00
KCaverly
a125e318fe
catch up with main
2023-08-02 16:48:11 -04:00
Nathan Sobo
884cee6dfd
Get tests compiling returning WindowHandle<V: View> from add_window
2023-08-02 14:05:03 -06:00
KCaverly
71bbd5f2f6
update keymaps for cycle search mode and toggle filters
2023-08-02 15:08:54 -04:00
KCaverly
acf78f5fb4
add kill_search function to stop searching on mode change
2023-08-02 14:18:28 -04:00
KCaverly
7b43b0d4f1
refactored search mode to ensure state is consistent
...
Co-authored-by: Piotr <piotr@zed.dev>
2023-08-02 12:29:19 -04:00
Piotr Osiewicz
5b30caa333
Add borders to button sides
2023-08-02 11:27:59 -04:00
KCaverly
caaa4b1618
add theme for search mode option buttons, and adjust padding
...
Co-authored-by: Piotr <piotr@zed.dev>
2023-08-02 11:23:55 -04:00
Piotr Osiewicz
e0eaf23c28
Add borders to button sides
2023-08-02 16:33:35 +02:00
Piotr Osiewicz
d39585b240
Fix query editor 'floating' when filters are enabled
2023-08-02 14:05:09 +02:00
Piotr Osiewicz
0253ff3043
Touch up rounding on the sides of mode switcher
2023-08-02 13:52:02 +02:00
Piotr Osiewicz
4ef59899d1
WIP: Add ButtonSide element
2023-08-02 13:05:29 +02:00
KCaverly
cf060f0011
added major and minor display text to project search, and fixed icon padding
...
Co-authored-by: Piotr <piotr@zed.dev>
2023-08-01 13:28:21 -04:00
KCaverly
7d5ff60ff0
added svg right margin in search bar
...
Co-authored-by: Piotr <piotr@zed.dev>
2023-08-01 12:34:02 -04:00
Piotr Osiewicz
444b98e32f
Update case insensitive button.
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-08-01 17:56:09 +02:00
KCaverly
c28ba3a11a
add cycle mode to project search
...
Co-authored-by: Piotrek <piotr@zed.dev>
2023-08-01 11:47:30 -04:00
Piotr Osiewicz
2e2d0a3884
Hide whole word/case sensitive options under semantic search
2023-08-01 17:07:21 +02:00
Piotr Osiewicz
b29a535f04
Use icons instead of text in toggles
2023-08-01 11:20:23 +02:00
Piotr Osiewicz
a33d8519f2
Move buttons inside of query editor (WIP)
2023-08-01 02:06:40 +02:00
Piotr Osiewicz
52a48de9ca
Add WIP Normal button (resuses parts of semantic button, gotta wire it proper)
2023-08-01 00:44:52 +02:00
Kirill Bulatov
634baeedb4
Add project search history
2023-08-01 01:31:28 +03:00
Kirill Bulatov
646dabe113
Add buffer search history
2023-08-01 01:31:28 +03:00
Conrad Irwin
5d8370e2a1
Don't highlight project search matches either ( #2807 )
...
@JosephTLyons this is probably worth merging alongside #2803
- vim: Fix a bug where focusing project search results unexpectedly
entered visual mode
2023-07-28 12:25:32 -06:00
Conrad Irwin
fac0e2dd56
Don't highlight project search matches either
2023-07-28 12:17:32 -06:00
Kirill Bulatov
cf6e524c9a
Make project search includes and excludes more user-friendly
...
Allow search results that start with the include/exclude path part
2023-07-28 12:56:44 +03:00
Piotr Osiewicz
b9cdb851d2
Update results text
2023-07-27 16:31:24 +02:00
Piotr Osiewicz
dff9bf7d7e
Make row_count of toolbaritem dynamic (WIP).
...
Move result count to the left hand side.
2023-07-27 16:03:26 +02:00
Piotr Osiewicz
4761197d62
Add filter button.
...
Move semantic & regex buttons to the right hand side.
Add default tab name for the new project search.
2023-07-27 13:08:31 +02:00
Piotr Osiewicz
f2a35a7e1d
Use a three-way layout
2023-07-27 12:18:19 +02:00
Piotr Osiewicz
91c32ed307
WIP: project search redesign
2023-07-27 11:43:32 +02:00
KCaverly
0ac919f6e0
catchup with main
2023-07-26 09:50:38 -04:00
KCaverly
75999204ad
update project search to only show semantic button visible with semantic_index enabled
2023-07-25 16:26:37 -04:00
KCaverly
e8210b827d
move visible text to just start anchor with context lines for semantic search
2023-07-25 15:24:27 -04:00
Kirill Bulatov
7dccb487de
Fixes a crash when SelectAllMatches action was called on no matches
2023-07-24 15:42:10 +03:00
Kirill Bulatov
595bc16749
Add search in directory action in the project panel
2023-07-21 22:47:57 +03:00
Max Brunsfeld
81b05f2a08
Optimize glob filtering of semantic search
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-20 14:23:11 -07:00
KCaverly
e02d6bc0d4
add glob filtering functionality to semantic search
2023-07-20 13:46:27 -04:00
Max Brunsfeld
342dbc6945
Fix rendering of project search while semantic index is indexing or running
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-18 12:01:42 -07:00
Max Brunsfeld
8d0614ce74
Populate project search results multi-buffer from semantic search
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-18 11:44:58 -07:00
KCaverly
b9fdfd60f0
catch up with main
2023-07-18 10:26:28 -04:00
Max Brunsfeld
afc4c10ec1
Start work on exposing semantic search via project search view
...
Co-authored-by: Kyle <kyle@zed.dev>
2023-07-17 18:10:51 -07:00
Conrad Irwin
c9bf407431
Avoid optional on select_match
2023-07-17 12:49:59 -06:00
Conrad Irwin
f887a17ffe
Merge branch 'main' into vim-search
2023-07-17 09:27:02 -06:00
Kirill Bulatov
b14cd5f56d
Add a new button for the action
2023-07-14 17:32:10 +03:00
Kirill Bulatov
ccc78000bd
Preserve serach index for multicaret selection editor events
2023-07-14 14:47:12 +03:00
Kirill Bulatov
f710efca3b
Use a better name
2023-07-14 14:47:12 +03:00
Kirill Bulatov
29cbeb39bd
Allow selecting all search matches in buffer
2023-07-14 14:47:12 +03:00
Piotr Osiewicz
6c8cb6b2a9
project_search: display result count on cmd-enter
...
It also focuses the first result (just like a normal enter).
2023-07-10 14:21:55 +02:00
Conrad Irwin
b4b0f622de
Rebuild vim search experience on refactored code
2023-07-07 15:57:54 -06:00
Conrad Irwin
232d14a3ae
Make search less magic
...
Co-Authored-By: Antonio <antonio@zed.dev>
2023-07-07 15:57:54 -06:00
Conrad Irwin
dbec2ed1f1
vim: add */#/g*/g# for jumping to next word
...
As in vim, this toggles the normal search experience.
2023-07-07 15:57:35 -06:00
Conrad Irwin
75fe77c11d
search: Allow running a search with different options
...
Refactor search options to use bitflags so that we can represent
the entire set of settings in one place.
2023-07-07 15:56:37 -06:00
Antonio Scandurra
5ea5368c07
Re-enable buffer search in assistant
2023-06-23 09:57:31 +02:00
Piotr Osiewicz
0256f89dd6
Rename on/off states to active/inactive
2023-06-20 16:05:23 -07:00
Piotr Osiewicz
e92015b12f
Split out Interactive<T> into Toggle<T> and Interactive<T>
2023-06-20 16:05:20 -07:00
Piotr Osiewicz
01621972c5
Change "Project search" to "Project Search"
2023-06-01 12:31:37 +02:00
Piotr Osiewicz
e1a6dc9077
search: Add a default tooltip for empty searches
...
Z-1074
2023-06-01 11:17:33 +02:00
Kirill Bulatov
d593377e45
Improves project search panel shortcut handling
...
* ESC (project_search::ToggleFocus) toggles focus from
include/exclude fields to the editor
* Cmd+Shift+F (workspace::NewSearch) can be triggered from the editor,
and moves focus to the query editor
2023-05-29 16:58:06 +03:00
Julia
f40c498491
Fix tests
2023-05-25 14:29:28 -04:00
Julia
8d662edb6c
Remove concept of git diff refresh from Item
trait
2023-05-25 14:29:28 -04:00
Kirill Bulatov
065f71d671
Do not refocus project search query on ESC press
2023-05-19 22:06:47 +03:00
Max Brunsfeld
459cc9c959
Optimize matching of multiple file-watch globs using the globset crate
2023-05-19 09:13:34 -07:00
Max Brunsfeld
67a25126d4
Define theme/ui text style settings in theme crate
2023-05-17 14:44:59 -07:00
Max Brunsfeld
89204e85c0
Merge branch 'main' into setting-store
2023-05-17 09:55:24 -07:00
Max Brunsfeld
6403bb86e1
Define workspace settings in workspace crate
2023-05-16 20:25:18 -07:00
Max Brunsfeld
65e3713d4d
Define editor settings in editor crate
2023-05-16 17:30:29 -07:00
Max Brunsfeld
39618ae32d
Define language settings in the language crate
2023-05-16 17:29:53 -07:00
Kirill Bulatov
eec60556ab
Highlight include/exclude inputs when errors happen there
2023-05-10 11:11:31 +03:00
Kirill Bulatov
dfdf7e4866
Test the search inclusions/exclusions
2023-05-10 11:11:31 +03:00
Kirill Bulatov
80fc1bc276
Use placeholder in include/exclude editors
2023-05-10 11:11:31 +03:00
Kirill Bulatov
0e31d13a1e
Rework tab and escape key handling in search panel
...
Fixes
https://linear.app/zed-industries/issue/Z-1238/focus-the-results-multibuffer-in-project-search-on-esc
and adds a tab shortcut for project search inputs
co-authored-by: Julia <julia@zed.dev>
2023-05-10 11:11:31 +03:00
Kirill Bulatov
3da55c14a6
Fix arrow layout
2023-05-10 11:11:31 +03:00
Kirill Bulatov
6fb8679184
Trim glob input
2023-05-10 11:11:31 +03:00
Kirill Bulatov
13296d502c
Extra rows approach draft
...
co-authored-by: Max <max@zed.dev>
2023-05-10 11:11:31 +03:00
Kirill Bulatov
b5abac6af6
Draft search include/exclude logic
2023-05-10 11:11:31 +03:00
Kirill Bulatov
915154b047
Add initial include/exclude project search UI
2023-05-10 11:11:31 +03:00
Antonio Scandurra
80ad59a620
Make focusing the parent an effect to avoid querying ancestors
2023-05-05 10:04:54 +02:00
Antonio Scandurra
7f137ed3dd
Compute view ancestry at layout time
2023-05-03 16:36:14 +02:00
Antonio Scandurra
d815fc88ae
Remove ViewContext::dispatch_any_action
2023-05-01 14:24:00 +02:00
Antonio Scandurra
83436213ad
Remove Jump
internal action
2023-04-28 14:13:07 +02:00
Antonio Scandurra
57beec6071
Allow direct read/update of WeakViewHandle
only in AsyncAppContext
2023-04-26 12:20:57 +02:00
Antonio Scandurra
2b6830c798
Remove unnecessary calls to WeakViewHandle::upgrade
2023-04-26 11:13:46 +02:00
Antonio Scandurra
94c2eaad23
Replace ViewContext::spawn
with ViewContext::spawn_weak
2023-04-26 10:23:27 +02:00
Max Brunsfeld
3db67a48b5
Preserve previous focus when re-focusing project search
2023-04-25 09:28:50 -07:00
Max Brunsfeld
ebbe52e6b0
🎨 Specify more dependencies at the workspace level
2023-04-24 17:41:55 -07:00
Max Brunsfeld
abdccf7393
Use a workspace dependency for the futures crate
2023-04-24 09:43:31 -07:00
Nathan Sobo
fe492eacbf
Refine naming of element-related types and traits
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 13:06:37 -06:00
Antonio Scandurra
03619dfa55
Rename Drawable::boxed to into_element and make containers generic
...
Multi-element are now generic over any drawable child, which can be converted
into an element.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-04-21 12:43:19 -06:00
Antonio Scandurra
5b40641fde
Take a target view when marking an element as draggable
2023-04-21 15:52:05 +02:00
Antonio Scandurra
c76b9794e4
Merge branch 'main' into window_context_2
2023-04-21 10:58:08 +02:00
Max Brunsfeld
32c57bcd22
Store buffer's diagnostic sets in a smallvec
2023-04-20 08:58:41 -07:00
Antonio Scandurra
c52b6328b7
Merge branch 'main' into window_context_2
2023-04-20 16:01:47 +02:00
Joseph Lyons
9afd804062
Remove unnecessary lifetimes from tab_tooltip_text
2023-04-18 14:03:02 -04:00
Antonio Scandurra
d03c431f9a
Fix warnings/errors now that AsyncAppContext::update
returns Result
2023-04-18 14:58:57 +02:00
Joseph Lyons
ebe57254e0
Add tab tooltips
2023-04-15 06:46:14 -04:00
Nathan Sobo
25ad635577
WIP
2023-04-12 12:38:26 -06:00
Nathan Sobo
a25f962185
WIP
2023-04-12 12:13:35 -06:00
Antonio Scandurra
83070a19c4
WIP
2023-04-12 15:55:43 +02:00
Nathan Sobo
b54f08db77
WIP
2023-04-12 06:51:03 -06:00
Nathan Sobo
e115baa60c
WIP
2023-04-11 18:21:56 -06:00
Nathan Sobo
6638407ff9
WIP: Everything shredded
2023-04-10 16:10:32 -06:00
Nathan Sobo
2615a11f7c
Don't export platform::* from gpui
...
I'd like to avoid cluttering the top-level namespace with all the platform-
specific types.
2023-04-07 11:45:53 -06:00
Nathan Sobo
de9bf6dfbd
Merge MutableAppContext into AppContext
...
There may have been a good reason for the difference at some point, or I was
still learning Rust. But now it's just &mut AppContext vs &AppContext.
2023-04-06 15:49:03 -06:00
Nathan Sobo
82a713fd1d
Store AnyViewHandle inside ViewHandle and Deref to it
2023-04-02 14:59:55 -06:00
Antonio Scandurra
5471217089
Use the same serde version across the entire workspace
2023-03-28 09:42:00 -07:00
Max Brunsfeld
cbeb6e692d
Move postage crate version specification to workspace Cargo.toml
2023-03-21 11:26:13 -07:00
Antonio Scandurra
1af8f4be19
Deserialize Theme
directly into the heap to avoid stack overflow
...
Co-Authored-By: Julia Risley <julia@zed.dev>
2023-03-17 15:58:52 +01:00
Mikayla Maki
8734bd8435
Seperate out x-mark width
2023-03-01 00:18:45 -08:00
Mikayla Maki
637e8ada42
Fix bugs in code folding
2023-02-28 16:34:28 -08:00
Petros Amoiridis
81ece4fd44
Deduplicate tab theme related code
...
We've noticed that the search theme struct had two fields for a tab icon width and spacing. But we already have those in the tab theme struct. We decided to remove the duplicate and reuse the tab fields.
We also wanted to move where the spacing is being used. Instead of doing it at the left of the label, we do it at the right of the icon to match how it is done in other areas of the UI.
Co-Authored-By: Julia <30666851+ForLoveOfCats@users.noreply.github.com>
2023-02-22 20:28:57 +02:00
Mikayla Maki
b500ed3171
Changed label and text to be generic over static strings and owned strings
2023-02-21 16:47:29 -08:00
Mikayla Maki
d80dba1fe3
Switch from vec to smallvec
2023-02-13 12:49:57 -08:00
Antonio Scandurra
76c066baee
Focus results editor only when starting a new project search
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2023-02-08 17:22:14 +01:00
Petros Amoiridis
9bff82f161
Use truncate_and_trailoff function
...
A function that already works with unicode characters.
2023-02-07 19:25:57 +02:00
Mikayla Maki
d060114f00
Added complete scripts for generating third party license files
2023-01-23 12:47:12 -08:00
Antonio Scandurra
0a7111d216
Fix tests
2023-01-19 16:26:27 +01:00
Antonio Scandurra
a58b39f884
Merge branch 'main' into optimize-large-multi-buffers
2023-01-19 16:18:21 +01:00
Antonio Scandurra
c124caeb0d
Add test for stream_excerpts_with_context_lines
2023-01-19 15:54:32 +01:00
Antonio Scandurra
5ce065ac92
Introduce MultiBuffer::stream_excerpts_with_context_lines
...
This allows us to push excerpts in a streaming fashion without blocking
the main thread.
2023-01-19 15:42:14 +01:00
Antonio Scandurra
a8f466b422
Don't starve the main thread adding too many search excerpts at once
2023-01-18 14:22:23 +01:00
Max Brunsfeld
8651320c9f
Make workspace items expose their underlying models, remove file-related methods
2023-01-17 17:21:06 -08:00
Julia
2b1118f597
Add dismiss buffer search button & fix some faulty icon button styling
...
Co-Authored-By: Nate Butler <nate@zed.dev>
2023-01-01 23:50:46 -05:00
Julia
de9c58d216
Merge pull request #1983 from zed-industries/multi-buffer-git-gutter
...
Multi buffer git gutter
2022-12-19 10:53:42 -05:00
Julia
2cd9987b54
Git diff recalc in project search
2022-12-13 12:35:58 -05:00
Max Brunsfeld
f797dfb88f
Merge branch 'main' into multibuffer-following
2022-12-12 11:47:39 -08:00
Kay Simmons
cffb064c16
Refactor editor scrolling and implement scroll commands from vim mode
2022-12-07 16:39:32 -08:00
Mikayla Maki
a47f2ca445
Added UUID based, stable workspace ID for caching on item startup. Completed first sketch of terminal persistence. Still need to debug it though....
2022-12-03 16:06:01 -08:00
Kay Simmons
d20d21c6a2
Dock persistence working!
...
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-12-03 16:06:01 -08:00
Kay Simmons
c1f7902309
wip
2022-12-03 16:06:01 -08:00
Max Brunsfeld
6120d6488b
Start work on following in multi-buffers
2022-11-29 14:50:43 -08:00
Mikayla Maki
53f8744794
Tried alternate stratergy
2022-11-08 11:54:26 -08:00
Antonio Scandurra
0b231e58fd
Show placeholder text for pickers
2022-11-04 10:18:47 +01:00
Nathan Sobo
6e363e464c
Start on view-level dispatch approach for keyboard events
2022-10-16 11:46:31 -06:00
Antonio Scandurra
a5a60eb854
Log view name alongside error in ChildView
2022-10-13 15:44:01 +02:00
K Simmons
1d8717f4de
Remove focus filtering from gpui so all focus events result in focus-in and focus-out calls
...
Remove pane focused event in favor of focus_in at the workspace level
Added is_child to ViewContext to determine if a given view is a child of the current view
Fix issue where dock would get in a infinite loop when activated after dragging an item out of it
Fix issue where the last focused view in an item was not correctly refocused when a pane is focused after switching active tabs
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-10-12 15:10:00 -07:00
K Simmons
6b26965074
Permanent fix to repeat MouseRegion Tag failure in Workspace
...
Polish tab bar buttons
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-11 15:34:10 -07:00
K Simmons
31ecb2f7bc
Introduced ItemEvent and to_item_events function to Item trait which converts the Item's events into a standard ItemEvent similar to how SearchableItems work.
...
Add breadcrumb_location and breadcrumbs functions to item trait which handles rendering of the breadcrumb elements
Change breadcrumb toolbar to use these new functions rather than having hard coded breadcrumb logic
Add breadcrumb support to the terminal tabs
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-06 16:05:36 -07:00
K Simmons
ab81093ef5
WIP pull breadcrumb rendering out into item trait
2022-09-06 14:39:58 -07:00
Mikayla Maki
ebae991cb2
Finished terminal search
2022-09-01 13:45:46 -07:00
Mikayla Maki
3f11fd3b8b
Terminal implements important half of search protocol
2022-08-31 17:41:53 -07:00
K Simmons
d7e6e8c5a1
Add match associated type and fix failing test
2022-08-30 21:53:49 -07:00
K Simmons
91a5d0b036
SearchableItem trait is completed and editor searches appear to be working
2022-08-30 15:37:54 -07:00
Max Brunsfeld
d15ba8efb4
Revert "Merge pull request #1481 from zed-industries/trigger-search-automatically"
...
This reverts commit ae8dd1e3fd
, reversing
changes made to 96d5dcadf1
.
2022-08-19 09:17:43 -07:00
ForLoveOfCats
8ba2f77148
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
K Simmons
f5a6a112c8
Address picker issues
2022-08-09 17:15:54 -07:00
K Simmons
6f180ed822
Pane focus working. Modals seem broken now
2022-08-09 17:15:54 -07:00
K Simmons
690ea57211
WIP compiling but failing with circular reference
2022-08-09 17:15:52 -07:00
K Simmons
4271eb3624
Event dispatch moved to MutableAppContext. No longer dispatches from presenter. Not currently handling key presses properly
2022-08-09 17:09:16 -07:00
ForLoveOfCats
db52593d9b
Automatically trigger project search to occur when deploying
2022-08-08 13:17:19 -04:00
Mikayla Maki
314c26e4ec
Removed icons
2022-08-04 08:42:42 -07:00
Max Brunsfeld
fa5af4383d
Introduce AutoindentMode parameter to Buffer::edit
...
This controls whether or not we preserve the relative indentation
of inserted text blocks.
Co-authored-by: Mikayla Maki <mikayla.c.maki@gmail.com>
2022-07-28 14:03:31 -07:00
K Simmons
225055ed5d
Address some issues where panes don't get focused properly, make the focused pane more obvious, and prevent splitting of the pane with no items
2022-07-20 18:52:32 -07:00
Nate Butler
bcc554a3db
Merge branch 'main' into theme-improvements
2022-07-19 20:12:02 -04:00
Nate Butler
46384e71b7
Add icon sets for sizes 8, 12 and 16, remove old icons
2022-07-19 17:11:15 -04:00
K Simmons
8add81350e
Rework presenter and MouseRegion to use Handler hashmap rather than individual fields
2022-07-17 23:19:32 -07:00
Antonio Scandurra
fd5cb02ea9
Truncate description in tab title when it is too long
2022-07-14 15:12:16 +02:00
Antonio Scandurra
07d269234f
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
Max Brunsfeld
e51dc25e1d
Start moving default settings into a JSON file
...
Co-authored-by: Antonio Scandurra <me@as-cii.com>
2022-07-12 11:00:02 -07:00
Antonio Scandurra
b937c1acec
Move autosave logic up into Workspace
and Pane
2022-07-06 16:33:22 +02:00
Antonio Scandurra
980730a4e1
Report whether a view was focused or blurred when observing focus
2022-07-06 15:53:40 +02:00
Keith Simmons
66486870aa
Fix vim editor focus selection issues, cancel vim operators on escape and unbound keys
2022-06-30 12:36:02 -07:00
Antonio Scandurra
88d8696414
Display tooltip for select prev/next match buttons
2022-06-16 14:37:33 +02:00
Antonio Scandurra
649185da9c
Allow toggling search options via the command palette
2022-06-16 14:28:37 +02:00
Antonio Scandurra
29e57c8e3c
Toggle project search options via the keyboard
2022-06-16 14:18:45 +02:00
Antonio Scandurra
d0d6c27ae9
Don't select next match when toggling buffer search option
2022-06-16 14:06:47 +02:00
Antonio Scandurra
a835dcefa2
Toggle buffer search options via the keyboard
2022-06-16 13:44:00 +02:00
Antonio Scandurra
ffb75b0f02
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
6b4e7da7d6
Prepopulate project search query when deploying it from an editor
2022-06-07 10:02:04 +02:00
Antonio Scandurra
3a69943df3
Require that PartialEq
is implemented for Action
2022-06-06 09:18:44 +02:00
Antonio Scandurra
339069b1d3
Cap MessageStream
buffer size to 1MB
...
We temporarily let it grow when the message size exceed the limit,
but restore the buffer's capacity shortly after. This ensures that,
for each connection in its entire lifetime, we only ever use 1MB.
2022-05-31 11:16:32 +02:00
Antonio Scandurra
5b2d6e41f3
Introduce keyboard navigation in context menus
2022-05-26 16:36:30 +02:00
Nathan Sobo
b110fd5fb7
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
Antonio Scandurra
3ac6fc89c1
Pretty-print JSON of server snapshot
2022-05-26 09:34:39 +02:00
Max Brunsfeld
0becbe482a
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
fbd589b589
Start work on handling multibuffers properly when closing unsaved buffers
2022-05-22 16:48:33 -07:00
Max Brunsfeld
ef0b584532
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
a2fd41174f
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
c3a36e6d8a
Rename selected_ranges and selected_display_ranges to remove redundant selected
2022-05-13 15:55:27 -07:00
Keith Simmons
de9dc27980
store buffer and display_map model handles on selections collection
2022-05-13 15:55:27 -07:00
Keith Simmons
db0a9114c2
Passing tests and removed local argument. Also pulled autoscroll argument out to change_selections
2022-05-13 15:55:27 -07:00
Keith Simmons
c9dcfff607
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
61346f734d
WIP
2022-05-05 15:15:58 +02:00
Max Brunsfeld
d4492086b3
Abstract more local project setup inside Project::test helper
2022-05-04 10:28:09 -07:00
Keith Simmons
d4bef67cf2
Merge pull request #929 from zed-industries/non-uniform-batched-edits
...
Allow batched edits where each range is associated with different insertion text
2022-04-29 16:14:38 -07:00
Keith Simmons
b4b61b4bbc
Consolidate edit and edit_batched functions
2022-04-28 16:52:04 -07:00
Max Brunsfeld
d9497d49de
🎨 Use Interactive wrapper for search option buttons
2022-04-28 15:29:03 -07:00
Keith Simmons
04fc1d5982
Building, but failing test WIP
2022-04-27 17:25:38 -07:00
Max Brunsfeld
490b65b55f
Reuse Confirm action in chat panel, go-to-line, and project search
2022-04-21 15:24:05 -07:00
Nathan Sobo
9820c6ba64
Merge pull request #822 from zed-industries/focus-project-search-query
...
Fix focus bugs in `ProjectSearchView`
2022-04-14 12:25:59 -06:00
Max Brunsfeld
3cdda79fc3
Merge pull request #817 from zed-industries/dynamic-editor-highlights
...
Store accessors for editor highlight colors not colors themselves
2022-04-14 10:36:38 -07:00
Antonio Scandurra
ce3a31d8bd
Persist project search focus state
...
...so that we can re-focus the previously-active editor when switching back
to the project search tab.
2022-04-14 18:36:42 +02:00
Nathan Sobo
27057fdb1b
Only process a single focus effect per batch
...
This allows us to focus the query editor of the project search when deploying it. Previously, a complex interplay between focus events was preventing this from working in an intuitive way. What happened previously:
- We'd activate the project search, which enqueued a focus effect for the project search view
- We'd focus the query editor, which enqueued an effect
- We'd process the focus effect for the search view, which would enqueue an effect to transfer focus to the results editor
- We'd process the effect to focus the query editor
- We'd process the effect to focus the results editor
Now...
- We activate the project search pane item, enqueuing a focus effect for the project search itself
- We focus the query editor and *remove* the previous pending focus change effect
- We process the focus effect
2022-04-14 08:52:24 -06:00
Nathan Sobo
c4203868ea
Revert "Focus Project Search query editor always when deployed"
2022-04-14 07:53:15 -06:00
Keith Simmons
292d075f81
Store accessors for editor highlight colors not colors themselves
2022-04-13 15:30:57 -07:00
Keith Simmons
8cde15cb72
Notify when buffer search matches change
2022-04-13 14:49:18 -07:00
Max Brunsfeld
54d49c13d9
Merge pull request #795 from zed-industries/cancel-buffer-search
...
Handle editor cancel in pane in order to dismiss find toolbar
2022-04-11 17:47:44 -07:00
Max Brunsfeld
300feb5d57
Merge pull request #797 from zed-industries/project-search-focus
...
Focus Project Search query editor always when deployed
2022-04-11 17:41:08 -07:00
Max Brunsfeld
b3c64e47f1
Merge branch 'main' into cancel-buffer-search
2022-04-11 17:38:26 -07:00
Max Brunsfeld
25e1e3d2df
Merge pull request #786 from zed-industries/load-keymaps
...
Allow key bindings to be customized via a JSON file
2022-04-11 17:31:22 -07:00
Max Brunsfeld
2807d85a60
Merge pull request #791 from zed-industries/project-search-focus-fix
...
Properly activate project search item on mouse click
2022-04-11 17:31:06 -07:00
Keith Simmons
28da5b4afc
Don't focus active editor when deploying project search and focus query editor on project search focus
2022-04-11 17:05:24 -07:00
Max Brunsfeld
92a5c30389
Merge branch 'main' into load-keymaps
2022-04-11 15:55:10 -07:00
Keith Simmons
4b295f566a
Handle editor cancel in pane in order to dismiss find toolbar
2022-04-11 15:11:23 -07:00
Keith Simmons
3c116e32cb
Reraise editor events in Project Search and activate workspace item from them
2022-04-11 10:13:07 -07:00
Max Brunsfeld
1e2eeaa22a
Load project and buffer search key bindings from JSON file
2022-04-10 11:30:08 -07:00
Nathan Sobo
17195e615e
Merge pull request #781 from zed-industries/structured-logging
...
Introduce structured logging
2022-04-09 07:40:24 -06:00
Max Brunsfeld
fd4b81c8fc
Allow actions to be deserialized from JSON
...
Introduce separate macro for implementing 'internal' actions which
are not intended to be loaded from keymaps.
2022-04-08 15:47:51 -07:00
Nathan Sobo
7e5a3f9f6b
Introduce structured logging
...
We're enabling the log crate feature everywhere, but only using it on the server for now.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-04-08 10:06:51 -06:00
Max Brunsfeld
5242a3a6dc
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
Keith Simmons
1812480cbb
Tab size is pulled properly from settings instead of hardcoded
2022-04-06 10:23:37 -07:00
Max Brunsfeld
866ffdd4ae
Move Settings to its own crate
...
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-04-06 10:23:33 -07:00
Antonio Scandurra
703f1c3be0
Introduce workspace::Item::reload
to manually trigger a reload
2022-04-01 14:02:49 +02:00
Antonio Scandurra
cd5389b4d8
Let toolbar items specify flex
when they have a primary location
2022-04-01 10:55:38 +02:00
Antonio Scandurra
7f9ff47089
Hide breadcrumbs when project search has no results
2022-04-01 10:00:21 +02:00
Antonio Scandurra
9f939bd007
Fix styling of project search bar
2022-04-01 09:59:36 +02:00
Nathan Sobo
903810f22e
Style search in buffer below breadcrumbs
...
We still have issues with project search styling.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-03-31 11:44:16 -06:00
Nathan Sobo
8bfac63e0d
Render the search UI on a separate row from the breadcrumbs
...
- In project search, render it above the breadcrumbs
- In buffer search, render it below
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-03-31 10:36:39 -06:00
Antonio Scandurra
0453dd1101
Allow flex items to float to the end of the flex axis
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-30 16:46:14 +02:00
Antonio Scandurra
621e67bca7
Revert deletion of FindEditor
in theme
2022-03-30 13:35:17 +02:00
Antonio Scandurra
94097a56a1
Fix buffer search unit tests
2022-03-30 13:18:31 +02:00
Antonio Scandurra
a11665ecc7
Render project search query editor in toolbar
2022-03-29 17:04:39 +02:00
Antonio Scandurra
a6bdb6dc5d
Embed match index inside of search query editor
2022-03-29 15:53:36 +02:00
Antonio Scandurra
d7a39a2116
Honor SearchBar
being dismissed when changing the active item
2022-03-29 15:08:33 +02:00
Antonio Scandurra
9df2dacd85
Restructure Pane
to have a single Toolbar
with multiple items
2022-03-29 11:48:21 +02:00
Nathan Sobo
2c232d585a
Merge branch 'main' into unfold-on-select-match
2022-03-24 14:13:27 -06:00
Nathan Sobo
ccc276da7a
Merge pull request #672 from zed-industries/fix-unfollowing-on-edit
...
Automatically unfollow leader only for edits that originate from the follower editor
2022-03-24 13:26:28 -06:00
Keith Simmons
92c7b5d6ef
Remove result from anchor cmp functions
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-03-24 11:48:31 -07:00
Antonio Scandurra
7fa7b7e507
Unfold range when selecting the next match
...
Selected matches are unfolded when in project search, buffer search and
when hitting `cmd-d` to select the next match.
2022-03-24 17:16:21 +01:00
Antonio Scandurra
a739c362d9
Rename editor::Event::Edited
to editor::Event::BufferEdited
...
This is to distinguish it from a new event we're about to add which
represent edits originating from that specific editor.
2022-03-24 08:55:46 +01:00
Antonio Scandurra
5cd94b5b92
WIP
2022-03-23 19:05:46 +01:00
Antonio Scandurra
3117554568
Automatically unfollow when editing, scrolling or changing selections
2022-03-22 09:17:01 +01:00
Max Brunsfeld
845457e2c4
Always read project entry id from workspace::Item
...
We cannot store a workspace item's project entry id separately,
since buffers' entry ids can change (for example when doing
a *save as*).
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-03-17 10:58:20 -07:00
Antonio Scandurra
6f9c37851c
Add Editor::for_multibuffer
and repurpose Editor::for_buffer
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-17 14:39:02 +01:00
Antonio Scandurra
44d997c00c
Rename app_state
to global
in gpui
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-03-17 14:33:01 +01:00
Antonio Scandurra
0efce8f70a
Rename ItemView
to Item
2022-03-17 11:32:46 +01:00
Antonio Scandurra
aced1e2315
Finish refactoring of how editors are opened
2022-03-17 11:29:46 +01:00
Nathan Sobo
728c708150
WIP: Massage opening of editors
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2022-03-16 17:40:09 -06:00
Nathan Sobo
0036e5c86c
Replace ProjectEntry struct with ProjectEntryId
...
Previously, we tracked the worktree_id and entry_id separately, but now that entry ids are unique across all worktrees this is unnecessary.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-03-16 15:59:47 -06:00
Max Brunsfeld
a88320dc5f
Remove workspace::Item trait
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Keith Simmons <keith@zed.dev>
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2022-03-16 13:34:06 -07:00
Max Brunsfeld
b33a049958
Merge branch 'main' into settings-file
2022-03-13 10:43:23 -07:00
Max Brunsfeld
48848de82c
Store settings as a global via a gpui app_state
2022-03-11 15:58:58 -08:00
Nathan Sobo
ac1eb19f83
Start on text highlight support
2022-03-09 20:51:35 -07:00
Antonio Scandurra
317a1bb07b
Remove language servers from buffers
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
Co-Authored-By: Keith Simmons <keith@zed.dev>
2022-03-08 15:16:07 -08:00
Antonio Scandurra
dc5a09b3f7
Merge pull request #525 from zed-industries/preserve-worktrees
...
Grow worktrees monotonically when sharing and move most messages to the background
2022-03-04 09:48:18 +01:00
Max Brunsfeld
05df1dfae9
Disable doctests for all libraries
...
We don't use them, and they add a lot of noise to the test output
when running all tests in the workspace.
2022-03-03 16:15:56 -08:00
Antonio Scandurra
68cfce1fb8
Rename weak
to visible
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-03-02 14:38:16 -08:00
Antonio Scandurra
466db69780
Pass a reference to TestAppContext
in tests
...
This allows us to drop the context *after* we ran all futures to
completion and that's crucial otherwise we'll never drop entities
and/or flush effects.
2022-03-01 12:01:02 +01:00
Antonio Scandurra
720056d0db
Add unit test for project search
2022-02-28 11:10:22 +01:00
Antonio Scandurra
ed89475cf6
Extract a common match_index_for_direction
and active_match_index
2022-02-28 10:34:11 +01:00
Nathan Sobo
8eba96424e
Fix warning
2022-02-27 18:17:15 -07:00
Nathan Sobo
cb230ad574
Re-activate the most recently-activated project search on cmd-shift-F
...
This commits adds the beginnings of an application state facility as a non-static place to store the most recently-activated search for each project.
I also store workspace items by descending order of their entity id so that we always fetch the newest item of a given type when calling `Workspace::item_of_type`.
2022-02-27 18:07:46 -07:00
Nathan Sobo
1ddae2adfd
Focus the project find results editor on a tab in the query editor
2022-02-27 16:15:06 -07:00
Nathan Sobo
7d119dcd54
Select first match when results are ready
2022-02-27 14:24:06 -07:00
Nathan Sobo
7831979be0
Fix warning
2022-02-27 14:21:28 -07:00
Nathan Sobo
64d22925c2
Implement navigation between project search matches
2022-02-27 14:18:04 -07:00
Nathan Sobo
7ef98fb935
Make versions oldest_selection and newest_selection that don't require snapshots
...
I thought I needed this but actually didn't, but I still kinda think it's a good change for the public interface of Editor.
2022-02-27 13:02:09 -07:00
Nathan Sobo
19b5de2181
Introduce ProjectSearchView constructor
...
We had some duplication when cloning on split, so this is to unify that before we add any more complexity to construction.
2022-02-27 09:49:16 -07:00
Nathan Sobo
136699e7bd
Add log dependency in search crate
2022-02-27 09:25:40 -07:00