Commit graph

4228 commits

Author SHA1 Message Date
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
21206800bc Add "Close Window" command 2022-05-20 16:53:03 -07:00
Max Brunsfeld
b08cad9ef5 Add "Save As" command 2022-05-20 16:24:42 -07:00
Max Brunsfeld
8ed33cadeb Add "Add Folder to Project" command to application menu 2022-05-20 16:19:43 -07:00
Max Brunsfeld
e72f5cea22 Add "New Window" command 2022-05-20 11:01:20 -07:00
Max Brunsfeld
c4fc3d9c7f
Merge pull request #1023 from zed-industries/app-menu-improvements
Correctly populate application menus' keystrokes and enabled status
2022-05-20 10:22:20 -07:00
Max Brunsfeld
b72d97ce78 Disable menu item key equivalents while there are pending keystrokes 2022-05-20 10:04:43 -07:00
Max Brunsfeld
21862faa58 Convert function keys to the correct macOS codes for menu items 2022-05-19 17:37:46 -07:00
Max Brunsfeld
df4cfa56cf Add application menu items 2022-05-19 16:50:40 -07:00
Max Brunsfeld
ea85473f4f Enable and disable application menu items based on the active view 2022-05-19 16:50:40 -07:00
Max Brunsfeld
c4554c1720 Replace build_workspace fn with an initialize function that takes a workspace
This makes it clearer that the function is not providing necessary
dependencies to a workspace, but rather configuring it with all of
the panels and widgets which are defined in downstream crates.
2022-05-19 16:50:22 -07:00
Max Brunsfeld
9e47e19f4e Pass UserStore to ContactsPanel instead of AppState 2022-05-19 14:43:36 -07:00
Max Brunsfeld
de99dcb0c3 Add cmd-n and cmd-o to the default keymap 2022-05-19 14:39:06 -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
1bf5f361d3
Merge pull request #1022 from zed-industries/editor-clone-selections
Clone selections on editor split
2022-05-19 12:49:43 -07:00
Keith Simmons
bacfed37b7 Clone selections on editor split 2022-05-19 11:22:53 -07:00
Max Brunsfeld
7445197f4d Derive application menu key equivalents from the keymap 2022-05-19 10:04:01 -07:00
Max Brunsfeld
8dd6ad3116
Merge pull request #1018 from zed-industries/generate-themes-on-build
Remove checked-in theme JSON files
2022-05-18 14:26:54 -07:00
Max Brunsfeld
fbacc12672 Delete theme files more selectively when regenerating them
Avoid deleting files that will be rewritten later, so that Zed
won't observe states where themes are missing if two zed
processes are running at once.
2022-05-18 14:17:26 -07:00
Max Brunsfeld
89e91939e4 Write theme files atomically 2022-05-18 14:07:32 -07:00
Max Brunsfeld
47591ec9a7 Ensure /assets/themes directory exists 2022-05-18 12:43:26 -07:00
Max Brunsfeld
185bafcc05 Install node for run tests CI job
Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-18 12:43:26 -07:00
Max Brunsfeld
ec41dd9f18 Remove checked-in theme JSON files
* Generate the themes on build
* In debug builds, watch the theme sources. When they change, re-generate
  the themes and reload the current theme, removing the need for the
  `theme_selector::Reload` command.

Co-authored-by: Keith Simmons <keith@zed.dev>
2022-05-18 12:43:26 -07:00
Max Brunsfeld
bdeac6b66a 🔥 .zed.toml 2022-05-18 11:01:35 -07:00
Nate Butler
56553c3f90
Merge pull request #1012 from zed-industries/clean-up-themes
Clean up themes
2022-05-18 11:52:39 -04:00
Nate Butler
50e3745b92 Clean up themes
- Allow themes to have only a light or dark variant
- Added a commented template file
- Run formatter
2022-05-18 11:41:56 -04:00
Antonio Scandurra
610812eca0
Merge pull request #1010 from zed-industries/fix-stale-wrap-snapshot
Bump `FoldSnapshot` version if excerpt gets edited outside of its bounds
2022-05-18 10:44:08 +02:00
Antonio Scandurra
c0bf4a5bfd Bump FoldSnapshot version if excerpt gets edited outside of its bounds
This will cause layers above `FoldMap` to grab a fresh snapshot of the `FoldMap`
and, as a result, of the underlying `MultiBufferSnapshot`. It is a necessary change
because, even though the coordinate space is not affected, a buffer edit taking place
*before* an excerpt range could cause the excerpt buffer rows to change, e.g. if
lines were added or removed. This manifested itself in a randomized test.
2022-05-18 10:13:18 +02:00
Max Brunsfeld
efd9563b25
Merge pull request #1007 from zed-industries/dedup-contact-notifications
Avoid creating duplicate notifications
2022-05-17 11:29:10 -07:00
Max Brunsfeld
9b29245590 Avoid duplicate notifications
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-05-17 11:19:22 -07:00
Nate Butler
d5c7a96f98
Merge pull request #1005 from zed-industries/update-light-theme-borders
Update light theme borders
2022-05-17 13:30:15 -04:00
Nate Butler
72ab5740f1 Update light theme borders 2022-05-17 13:14:11 -04:00
Nathan Sobo
1c9ad942df v0.34.0 2022-05-17 11:10:21 -06:00
Nathan Sobo
1e366b8093
Merge pull request #1003 from zed-industries/moar-logs
Log JSON in Kubernetes
2022-05-17 11:09:10 -06:00
Nathan Sobo
fb246ac343 Log JSON in Kubernetes
If you set LOG_JSON=true, we'll output JSON from the tracing subscriber instead of pretty-printing trace output.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2022-05-17 11:05:22 -06:00
Antonio Scandurra
ad94b4cc73
Merge pull request #1001 from zed-industries/request-to-join-project
Request to join projects instead of sharing/unsharing
2022-05-17 16:30:25 +02:00
Antonio Scandurra
2d986c7968 Show guest only once even if they joined on two different windows
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-17 16:21:09 +02:00
Antonio Scandurra
692be10b10 Dynamically load all themes listed under styles/src/themes/*.ts
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-05-17 16:08:14 +02:00
Antonio Scandurra
8f88803695 Automatically follow host when joining a project 2022-05-17 15:35:57 +02:00
Antonio Scandurra
225536accc Merge branch 'main' into request-to-join-project 2022-05-17 14:55:20 +02:00
Antonio Scandurra
8393bfe032 Ensure join request reaches the server before disconnecting host in test 2022-05-17 14:50:28 +02:00
Antonio Scandurra
a828282771 Fix Store::remove_connection not removing guests from projects 2022-05-17 14:50:00 +02:00
Antonio Scandurra
7b161b81b5 WIP: accept to join requests if user is already participating
There's a panic caused by `Store::check_invariants` that we still
need to figure out.
2022-05-17 13:21:20 +02:00
Antonio Scandurra
e0c772db3e Hold a weak handle to Presenter when dispatching events
This ensures that the only strong reference to the presenter is held
by `App`. This is important because we want to call `flush_effects`
when removing a window and implicit drops of the `Presenter` would
make that hard.

Before this commit, if a rendered view contained strong handles to
views and models, we would only drop them on the next `flush_effects`.
This was manifesting itself in `Project`s not being released when
closing their containing window.
2022-05-17 13:04:38 +02:00
Antonio Scandurra
cc598a6f71 Send LeaveProject when waiting room is dismissed while waiting 2022-05-17 11:25:14 +02:00
Nathan Sobo
d821e7a4c1 Cancel join requests when the requester closes the window 2022-05-16 20:29:36 -06:00
Nathan Sobo
7c3eebf93e Refine messages on waiting to join screen and include host avatar 2022-05-16 16:52:31 -06:00
Keith Simmons
25427f0ff8
Merge pull request #999 from zed-industries/update-theme-system
Rework color schemes
2022-05-16 15:28:18 -07:00
Nate Butler
af5bb92847 Rework color schemes
Co-Authored-By: Keith Simmons <keith@the-simmons.net>
2022-05-16 18:11:22 -04:00