Commit Graph

10964 Commits

Author SHA1 Message Date
Nathan Sobo
be18c47912 Remove unnecessary with_element_id calls 2023-11-14 01:38:13 -07:00
Nathan Sobo
a5306c2312 Remove div module 2023-11-14 01:25:10 -07:00
Nathan Sobo
80014a28ea No compile errors or warnings 2023-11-14 01:23:09 -07:00
Nathan Sobo
27fb381cca Checkpoint 2023-11-14 01:15:48 -07:00
Mikayla
8aa076692e
Add missing global 2023-11-14 00:09:42 -08:00
Mikayla
ee4957dd47
Implement most core actions 2023-11-14 00:06:33 -08:00
Nathan Sobo
ce30a689a0 Checkpoint 2023-11-13 23:15:45 -07:00
Mikayla
ec16e70336
Sketch in core zed actions code 2023-11-13 22:13:07 -08:00
Nathan Sobo
9382a304c4 Checkpoint 2023-11-13 23:03:14 -07:00
Nathan Sobo
1668330764 Checkpoint 2023-11-13 22:51:44 -07:00
Nathan Sobo
4a3a1ad0c3 Checkpoint 2023-11-13 22:42:19 -07:00
Nathan Sobo
54a817a5ab Checkpoint 2023-11-13 22:28:33 -07:00
Nathan Sobo
f71afdb0f2 Checkpoint 2023-11-13 22:22:09 -07:00
Nathan Sobo
83a5f74493 Checkpoint 2023-11-13 22:02:05 -07:00
Conrad Irwin
ad017a5df5 Allow clicking on commands in the command palette 2023-11-13 21:42:27 -07:00
Conrad Irwin
4ef95f05e8 Fix elevation on go_to_line2 2023-11-13 21:42:04 -07:00
Conrad Irwin
e0416e9d2a Fix SingleLine editor font size 2023-11-13 21:41:41 -07:00
Nathan Sobo
044d9679ab Checkpoint 2023-11-13 21:40:02 -07:00
Conrad Irwin
c5878cbd5f Add Text::styled() and use it in command palette
Prevents jumping while typing
2023-11-13 19:53:55 -07:00
Nathan Sobo
872b5186e2 Checkpoint 2023-11-13 19:23:07 -07:00
Nathan Sobo
922bb3195b WIP 2023-11-13 18:58:42 -07:00
Conrad Irwin
06f3c60be8 Fix action dispatching... 2023-11-13 18:56:59 -07:00
Conrad Irwin
abdaa3105b Update command matches faster 2023-11-13 18:21:08 -07:00
Nathan Sobo
76754c559c WIP 2023-11-13 18:18:25 -07:00
Mikayla Maki
ca3341f066
Improve actions macros (#3292)
- `actions!` now uses `#[action]` on each struct to reduce duplication.
- The `#[action]` macro now works on unit structs.
- Renamed `menu::unused` to `menu::init` and added more explanation in
comments.

Release Notes:

- N/A
2023-11-13 17:14:56 -08:00
Mikayla
8bbced50c2
Add test tag 2023-11-13 16:51:59 -08:00
Nate Butler
38888696db Allow a button to take a color 2023-11-13 19:46:15 -05:00
Mikayla
d197660d3b
Fix broken tests and comment out remaining tests 2023-11-13 16:46:06 -08:00
Mikayla
7d1593b90c
Merge branch 'main' into editor-tests 2023-11-13 15:53:22 -08:00
Mikayla
a4e9fea133
WIP
co-authored-by: conrad <conrad.irwin@zed.dev>
2023-11-13 15:53:04 -08:00
Marshall Bowers
0430e8fbf2 Use "One Dark" as default theme 2023-11-13 18:44:17 -05:00
Nathan Sobo
aec7955ccf Checkpoint 2023-11-13 16:40:29 -07:00
Marshall Bowers
92f2e8eb34 Combine related conditions 2023-11-13 18:22:04 -05:00
Marshall Bowers
53117eb5e5 Merge branch 'main' into one-themes 2023-11-13 18:16:45 -05:00
Nate Butler
fea5436ba9 Remove unused imports 2023-11-13 17:54:22 -05:00
Nate Butler
1c74662dc4
Reorganize theme2 crate (#3312)
[[PR Description]]

- Colocates defaults with their defs
- Organizes each style module into the `styles` subfolder
(`src/styles/players`, etc)
- Standardizes the use of `dark()` and `light()` throughout (ex:
`StatusColors::dark()`)
- Documents and extents StatusColors

Release Notes:

- N/A
2023-11-13 17:53:29 -05:00
Nate Butler
701f954448 Start refining tab 2023-11-13 17:51:58 -05:00
Conrad Irwin
25bc898807 Add KeyBindings to CommandPalette 2023-11-13 15:40:49 -07:00
Nate Butler
dd434588ee WIP 2023-11-13 17:38:44 -05:00
Nate Butler
97d6e7f2f5 Add one syntax theme 2023-11-13 17:09:55 -05:00
Max Brunsfeld
2eedd2ad03 Merge branch 'main' into project-panel2 2023-11-13 13:39:13 -08:00
Conrad Irwin
f8bc9be284 Fix test 2023-11-13 13:53:08 -07:00
Nate Butler
c1887747b7 Add one_dark theme 2023-11-13 15:48:05 -05:00
Nate Butler
e0547d9acd Allow arrays of colors to be passed in 2023-11-13 15:47:57 -05:00
Nate Butler
916df3c614 Add color converter util 2023-11-13 15:28:20 -05:00
Conrad Irwin
f464d69ff8 Merge branch 'main' into dispatch-tree 2023-11-13 13:21:57 -07:00
Mikayla
0e3fd92bd0
Get editor tests compiling 2023-11-13 12:10:14 -08:00
Marshall Bowers
04ad19d01b Choose appropriate player colors based on theme appearance 2023-11-13 15:07:13 -05:00
Conrad Irwin
7e7b065535 Fix on_action on focusable
We were accidentally dropping the key context
2023-11-13 12:48:36 -07:00
Max Brunsfeld
c0f34e3302 Add delete, open file, and rename actions to the project panel
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-13 11:38:47 -08:00
Max Brunsfeld
1968becf94 Merge branch 'main' into project-panel2 2023-11-13 11:26:51 -08:00
Max Brunsfeld
91b634fc59 Get some project panel actions working
Add styling for hovered and selected items

Co-authored-by: Marshall <marshall@zed.dev>
Co-authored-by: Julia <julia@zed.dev>
2023-11-13 11:08:51 -08:00
Nate Butler
889d20d046 Reorganize theme2 crate 2023-11-13 13:58:23 -05:00
Max Brunsfeld
13dd912817 Get left, right, and bottom docks rendering in the right places in the workspace
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-13 10:47:15 -08:00
Conrad Irwin
2625051f75 Better fix for multiple focuses in one frame 2023-11-13 11:32:05 -07:00
Nate Butler
8432b713cc Resolve errors
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-13 13:16:05 -05:00
Nate Butler
f6c54b8043 Redine command palette style
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
Co-Authored-By: Conrad Irwin <conrad.irwin@gmail.com>
2023-11-13 13:13:40 -05:00
Mikayla
4c5d5105f3
Merge branch 'main' into editor-tests 2023-11-13 09:54:02 -08:00
Nate Butler
7be12cb7b1 Checkpoint Broken 2023-11-13 12:44:50 -05:00
Antonio Scandurra
348760556a 💄 2023-11-13 18:33:08 +01:00
Antonio Scandurra
a6c95ad331 Fix panic when querying available actions 2023-11-13 18:29:18 +01:00
Nate Butler
5361a499ae Checkpoint 2023-11-13 12:09:31 -05:00
Nate Butler
521972ed9e Update Status Colors 2023-11-13 11:56:42 -05:00
Kirill Bulatov
031d841305
Make inlay hint cache tests pass (#3310)
Release Notes:

- N/A
2023-11-13 18:42:16 +02:00
Kirill Bulatov
dbd26ac651 Make inlay hint cache tests pass
Co-Authored-By: Conrad  <conrad.irwin@gmail.com>
2023-11-13 18:25:21 +02:00
Marshall Bowers
3654dd8da0 Remove unnecessary map 2023-11-13 11:10:08 -05:00
Marshall Bowers
5b254b03df Move Sized bound to StyledExt trait 2023-11-13 11:10:00 -05:00
Antonio Scandurra
45fef27aa1 Clear all the state when clearing KeyDispatcher 2023-11-13 15:31:35 +01:00
Antonio Scandurra
44534b926d Register actions on the right div 2023-11-13 15:21:47 +01:00
Antonio Scandurra
c8fb8e2859 💄 2023-11-13 15:20:43 +01:00
Antonio Scandurra
d0b5c654aa Clear pending keystrokes when finding action 2023-11-13 14:48:08 +01:00
Antonio Scandurra
827b16bf5c Capture node in dispatch tree even if it's not focusable 2023-11-13 14:42:16 +01:00
Antonio Scandurra
26d26fadb3 Fix focus story 2023-11-13 14:35:49 +01:00
Kirill Bulatov
e257f7d0b1 Ignore tests for now 2023-11-13 15:02:24 +02:00
Kirill Bulatov
a9c17e7407 Uncomment all inlay hint cache code and tests 2023-11-13 14:07:48 +02:00
Kirill Bulatov
f0f0b47058 pane: When opening a buffer, actually scroll to the selected tab. Previously it might've reused a shared state.
Deals with https://github.com/zed-industries/community/issues/2262 also fixes influencer's feedback.

Co-Authored-By: Piotr <piotr@zed.dev>
2023-11-13 13:09:02 +02:00
Antonio Scandurra
9c18253863 Register key and action listeners using Interactive::initialize
Co-Authored-By: Thorsten <mrnugget@gmail.com>
2023-11-13 11:37:57 +01:00
Antonio Scandurra
318cb784b2 Fix panic when calling with_key_dispatch recursively
Co-Authored-By: Thorsten <mrnugget@gmail.com>
2023-11-13 10:17:52 +01:00
Mikayla
13255ef133
Poke at getting the project panel showing up 2023-11-12 23:22:02 -08:00
Nate Butler
800ad1d3dc Update command palette style 2023-11-12 22:13:54 -05:00
Nathan Sobo
7eaba8fabc WIP 2023-11-10 14:47:45 -07:00
Nate Butler
6bdb6e486e Refactor command palette, picker and code action styles.
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-10 16:13:25 -05:00
Nate Butler
3d66ba35a3 Add ui::Divider component
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-10 16:12:32 -05:00
Nate Butler
5dca5caf9f Add elevation to StyledExt
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-10 16:12:14 -05:00
Nathan Sobo
74a0d9316a Add a DispatchTree which will replace the existing key dispatch strategy
Instead of freezing a stack, we will record the entire dispatch tree so we can
change focus.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-11-10 11:56:14 -07:00
Antonio Scandurra
1c02690199
Wire up code actions in editor2 (#3302)
Release Notes:

- N/A
2023-11-10 16:47:09 +01:00
Antonio Scandurra
c2c6921734 🔥 2023-11-10 16:41:21 +01:00
Antonio Scandurra
198a854370 Fix bad import 2023-11-10 16:41:21 +01:00
Antonio Scandurra
468a014bfc Allow measuring arbitrary items in UniformList 2023-11-10 16:41:21 +01:00
Antonio Scandurra
c44db3b7ec Confirm code action on mouse down 2023-11-10 16:41:21 +01:00
Antonio Scandurra
fb450e35f7 Wire up keyboard interaction in code actions menu 2023-11-10 16:41:21 +01:00
Antonio Scandurra
bf576d47b1 Make code actions menu prettier 2023-11-10 16:41:21 +01:00
Antonio Scandurra
c76fd93015 Use padded bounds to draw uniform list items 2023-11-10 16:41:21 +01:00
Antonio Scandurra
1d37191320 Ensure UniformList style is painted beneath its items 2023-11-10 16:41:21 +01:00
Antonio Scandurra
6929a71827 Ceil measured width for Text element 2023-11-10 16:41:13 +01:00
Kirill Bulatov
d38a2b793e Do not add diagnostics for any selection in the diagnostics panel 2023-11-10 13:35:58 +02:00
Antonio Scandurra
a30b47aa5f Show a very basic code actions menu 2023-11-10 12:26:35 +01:00
Antonio Scandurra
23fd1e19dc Ignore element offset when manually drawing AnyElement 2023-11-10 11:35:57 +01:00
Antonio Scandurra
a0987f1121 Merge remote-tracking branch 'origin/main' into code-actions-2 2023-11-10 11:01:23 +01:00
Conrad Irwin
cc9fb9dea0 Fix panic caused by focusing the same thing twice 2023-11-09 22:25:46 -07:00
Conrad Irwin
5a711886d4 Refactor to make ModalLayer a View 2023-11-09 22:15:44 -07:00
Conrad Irwin
d4b1d1b528 Move from register_modals to register_workspace_action 2023-11-09 21:51:48 -07:00
Conrad Irwin
e6d6806693 Tidy up some more modal behaviour 2023-11-09 21:11:44 -07:00
Conrad Irwin
a73265ace4 Merge branch 'main' into command_palette2 2023-11-09 20:58:54 -07:00
Conrad Irwin
77d92ff65a Tidy up 2023-11-09 20:58:35 -07:00
Max Brunsfeld
b9e098ead8 Start work on creating gpui2 version of project panel 2023-11-09 16:51:03 -08:00
Marshall Bowers
cb8c534dac
theme_importer: Support importing themes containing comments (#3298)
This PR updates the `theme_importer` with support for parsing theme
files containing comments.

Up until now we've been manually removing comments from the VS Code
theme files.

Release Notes:

- N/A
2023-11-09 19:22:15 -05:00
Marshall Bowers
6bc1cf0fae
Re-import the Synthwave 84 theme (#3297)
This PR re-imports the Synthwave 84 theme now that we support 3-value
hex colors.

Release Notes:

- N/A
2023-11-09 18:56:42 -05:00
Max Brunsfeld
6f23894b40 Fix editor settings deserialization in editor2 2023-11-09 15:37:46 -08:00
Conrad Irwin
ff15ddf3e0 Render more than one item 2023-11-09 16:36:36 -07:00
Marshall Bowers
8bd02fdadc
Extend RGBA hex color parsing to support 3-value and 4-value variants (#3295)
This PR extends our support for parsing hex color codes to `Rgba` to
additionally support 3-value (`#rgb`) and 4-value (`#rgba`) formats.

See [here](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color)
for more details on these hex color variants.

Release Notes:

- N/A
2023-11-09 18:27:47 -05:00
Marshall Bowers
82861e3123 Improve digit duplication 2023-11-09 18:19:58 -05:00
Marshall Bowers
8f5adeb9c3 Improve error conditions when parsing hex colors 2023-11-09 18:00:17 -05:00
Marshall Bowers
417279e01b Add support for parsing 3-value and 4-value hex codes 2023-11-09 17:45:05 -05:00
Nate Butler
2347576fb5
Extend theme converter to allow multimatching against vscode colors (#3294)
[[PR Description]]

Adds the ability to specify a vec of VScode syntax scopes to match
against for a given syntax style.

Example:

```rust
pub fn to_vscode(&self) -> Vec<&'static str> {
        use ZedSyntaxToken::*;

        match self {
            SyntaxAttribute => vec!["entity.other.attribute-name"],
            SyntaxBoolean => vec!["constant.language"],
            SyntaxComment => vec!["comment"],
            SyntaxCommentDoc => vec!["comment.block.documentation"],
            SyntaxConstant => vec!["constant.character"],
            SyntaxConstructor => vec!["entity.name.function.definition.special.constructor"],
            SyntaxEmbedded => vec!["meta.embedded"],
            SyntaxEmphasis => vec!["markup.italic"],
            SyntaxEmphasisStrong => vec![
                "markup.bold",
                "markup.italic markup.bold",
                "markup.bold markup.italic",
            ],
            SyntaxEnum => vec!["support.type.enum"],
            SyntaxFunction => vec![
                "entity.name.function",
                "variable.function",
                "support.function",
            ],
            SyntaxKeyword => vec!["keyword"],
            SyntaxLabel => vec![
                "label",
                "entity.name",
                "entity.name.import",
                "entity.name.package",
            ],
            // .. more styles
}}
```

Useful `settings.json` for testing themes:

```json5
{
  // --- Dark Themes ---
  "theme": "Ayu Dark"
  // "theme": "Ayu Mirage"
  // "theme": "Dracula"
  // "theme": "Gruvbox Dark Hard"
  // "theme": "Gruvbox Dark Medium"
  // "theme": "Gruvbox Dark Soft"
  // "theme": "Night Owl"
  // "theme": "Noctis Obscuro"
  // "theme": "Noctis"
  // "theme": "Nord"
  // "theme": "Palenight (Mild Contrast)"
  // "theme": "Palenight Operator"
  // "theme": "Palenight"
  // "theme": "Rose Pine Moon"
  // "theme": "Rose Pine"
  // "theme": "Solarized Dark"
  // "theme": "Synthwave 84"
  // --- Light Themes ---
  // "theme": "Ayu Light"
  // "theme": "Gruvbox Light Hard"
  // "theme": "Gruvbox Light Medium"
  // "theme": "Gruvbox Light Soft"
  // "theme": "Noctis Lux"
  // "theme": "Rose Pine Dawn"
  // "theme": "Solarized Light"
}
```

Release Notes:

- N/A
2023-11-09 17:40:10 -05:00
Max Brunsfeld
b6eef26f91 Merge branch 'main' into search-query-suggestion-fixes 2023-11-09 14:18:17 -08:00
Conrad Irwin
fa153a0d56 Make command dispatching work 2023-11-09 15:14:23 -07:00
Max Brunsfeld
6b8ce3cc85 Add a setting for when to seed the search query from the text under the cursor 2023-11-09 14:03:14 -08:00
Nate Butler
6b65acaa99 regenerate themes, format 2023-11-09 16:48:35 -05:00
Nate Butler
024fb4f818 Remove unused import 2023-11-09 16:41:58 -05:00
Nate Butler
4cd37e6e62 Extend theme converter to allow multimatching against vscode colors 2023-11-09 16:38:48 -05:00
Max Brunsfeld
28d3d21108 Generalize Refineable derive macro to derive arbitrary traits on the refinement type 2023-11-09 13:23:31 -08:00
Max Brunsfeld
dba41e99dd Avoid suggesting search query if cursor is not on a word 2023-11-09 12:33:30 -08:00
Marshall Bowers
31a6409a4c
Refine theme styles (#3291)
This PR refines a number of styles in the default theme, as well as
updates the theme importer to support importing syntax styles from VS
Code themes.

Release Notes:

- N/A
2023-11-09 15:32:10 -05:00
Marshall Bowers
7b489f5e2e Allow user-theme related methods to be unused 2023-11-09 15:16:59 -05:00
Nathan Sobo
408a495aaf Call init 2023-11-09 13:14:11 -07:00
Nate Butler
1c6a960bbf Deal with special case where a VSCode theme doesn't have a foreground color
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:53:04 -05:00
Nate Butler
54157eb99a Finish passing Syntax from VSCode themes to Zed Themes
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 14:41:26 -05:00
Max Brunsfeld
c6b76d908f
Use normal JS comments within JSX tags and JSX expression blocks (#3290)
This fix only required changing the `overrides` queries for JavaScript
and TSX. I've made the fix in both the `zed2` and `zed` crates.

Release Notes:

- Fixed an issue in JavaScript and TSX files, where the 'toggle
comments' command used the wrong comment syntax inside of JSX tags and
expressions within JSX.
2023-11-09 11:15:08 -08:00
Max Brunsfeld
e50318e7e1 Duplicate buffer test changes in language2 version 2023-11-09 11:09:49 -08:00
Max Brunsfeld
4c89b2885e Use normal JS comments within JSX tags and JSX expression blocks
Co-authored-by: Kirill <kirill@zed.dev>
2023-11-09 10:58:33 -08:00
Nathan Sobo
f5f9d881d7 Polish actions macros 2023-11-09 11:57:13 -07:00
Nate Butler
ff053890cf Extend UserSyntax to allow font_style and font_weight to be specified
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 13:46:08 -05:00
Conrad Irwin
72de5cb6ce
Fix escape in GoToLine with new event emitter (#3289)
[[PR Description]]

Release Notes:

- N/A
2023-11-09 11:23:26 -07:00
Marshall Bowers
978cff8095 Use IndexMap for a deterministic order when importing syntax colors 2023-11-09 13:12:36 -05:00
Antonio Scandurra
1a0ddc424b WIP 2023-11-09 19:11:17 +01:00
Marshall Bowers
1f0fccc353 Reorganize theme_importer 2023-11-09 13:07:32 -05:00
Antonio Scandurra
b029083441 Start on rendering context menu in editor2
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Mikayla <mikayla@zed.dev>
2023-11-09 19:03:10 +01:00
Marshall Bowers
34e31fd489 Properly emit UserHighlightStyles 2023-11-09 12:59:20 -05:00
Conrad Irwin
3c689ba33e Fix escape in GoToLine with new event emitter 2023-11-09 10:52:17 -07:00
Piotr Osiewicz
a1d9f351db Some more woogaloo around action dispatch
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:51:41 +01:00
Marshall Bowers
ff19a0ca18 Add importing-themes feature flag to theme2 crate
When this feature is set the `themes` module won't be compiled.
This allows us to run the `theme_importer` even when the `themes` module
has compile errors in it.
2023-11-09 12:49:16 -05:00
Marshall Bowers
60eae3e50a Emit unique highlights for each syntax token 2023-11-09 12:46:37 -05:00
Antonio Scandurra
5d15886675 Render code actions indicator
Co-Authored-By: Nathan <nathan@zed.dev>
2023-11-09 18:43:26 +01:00
Piotr Osiewicz
194d615691 Fix up keybindings propagation
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:33:36 +01:00
Nate Butler
efd1db1b09 WIP – Add Syntax themes to importer
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 12:30:53 -05:00
Piotr Osiewicz
d184e0d426 Start working on command_palette2 2023-11-09 17:54:05 +01:00
Julia
9cb14c189b zed2: Get tsserver running again 2023-11-09 11:43:40 -05:00
Nate Butler
4b5ca3e420 Allow imported themes to refine StatusColors
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-11-09 11:30:59 -05:00
Antonio Scandurra
cfee1401ed Extract AnyElement::{measure,draw}
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-09 17:30:41 +01:00
Nate Butler
7253160b04 Add more vscode colors 2023-11-09 11:01:18 -05:00
Kirill Bulatov
b157453630
Do not use prettier for formatting node_modules/** files (#3286)
Fixes

> the most annoying thing i'm running into right now is that when i'm
patching something inside node_modules, Zed tries to pretty-format it
according to my prettier config. this messes up the patch because it has
formatting changes now. i need the pretty formatting on save to be off
inside node_modules, that never makes sense

feedback from #influencers 

Do note though, that language servers will still format any file inside
node_modules, but at least it's not prettier now.
VSCode seem to format the node_modules/** files via language servers
too, so that seems ok for now, and the rest could be fixed during

> "project diagnostics" (eslint) seem to be running inside node_modules,
e.g. i'm seeing 3182 "errors" in my project. that doesn't make sense and
probably wastes resources in addition to being annoying

feedback later.

Release Notes:

- Fixed prettier formatting files inside node_modules
2023-11-09 17:42:58 +02:00
Kirill Bulatov
f55d89088b Port changes to gpui2 2023-11-09 17:18:41 +02:00
Julia
27b3378020
Get tsserver running again (#3277)
Release Notes:

- Fixed a few issues preventing Javascript/Typescript language server
from working with latest upstream changes.
2023-11-09 10:14:36 -05:00
Kirill Bulatov
2e957bc564 Do not propose prettier formatters for documents in node_modules/ 2023-11-09 14:49:37 +02:00
Kirill Bulatov
ce40d5e0c5 Adjust the tests 2023-11-09 14:40:32 +02:00
Kirill Bulatov
8be07eddcc Change locate prettier method signature 2023-11-09 14:23:33 +02:00
Mikayla
656eb9d455
WIP 2023-11-09 00:18:00 -08:00
Mikayla
43eb7f28d1
checkpoint 2023-11-08 23:16:04 -08:00
Nate Butler
bdeb32c34b Extend VSCode theme importer 2023-11-09 01:39:31 -05:00
Nate Butler
25c8b19dfb WIP 2023-11-09 01:21:22 -05:00
Mikayla
f569628088
Merge branch 'more-gpui2-apis' into editor-tests 2023-11-08 22:19:11 -08:00
Mikayla
86630bbe59
Add extra clone 2023-11-08 22:16:08 -08:00
Mikayla
269c3ea244
Uncomment tests 2023-11-08 22:11:51 -08:00
Mikayla
7a7ef1025d
Add Context::read_window, WindowHandle::root, and change ViewContext.view() to return a reference 2023-11-08 22:11:19 -08:00
Nate Butler
b5f60b7e50 Merge branch 'main' into update-workspace-styles 2023-11-09 00:38:06 -05:00
Mikayla
4404e76a2d
Merge branch 'main' into editor-integration 2023-11-08 21:33:14 -08:00
Mikayla
0bfd18ba09
WIP 2023-11-08 21:32:59 -08:00
Mikayla Maki
ad3b0bd227
port notifications2 and integration tests (#3283)
Release Notes:

- N/A
2023-11-08 21:32:33 -08:00
Nathan Sobo
8c44f6a814
Simplify input handling (#3282)
This PR takes a different approach to input handling.

Rather than returning the optional input handler, focus handle pair from
the element trait, we instead allow you to register an input handler
imperatively on the window context with `WindowContext::handle_input`.
You pass a focus handle reference and any implementer of
`PlatformInputHandler`. There's an `ElementInputHandler<V>` that
implements `PlatformWindowHandler` so long as `V` implements
`InputHandler`.

Release Notes:

- N/A
2023-11-08 22:27:36 -07:00
Mikayla
7888dc4592
Add notifications2 2023-11-08 21:23:31 -08:00
Nathan Sobo
d52c5646b4 Add docs 2023-11-08 22:03:26 -07:00
Nathan Sobo
7c922ad6ee Remove comments 2023-11-08 21:49:21 -07:00
Nathan Sobo
8278a07354 Actually set the input handler 2023-11-08 21:43:14 -07:00
Mikayla Maki
8330fb5f10
port rope2 to zed2 (#3224)
port rope2 to zed2

Release Notes:

- NA
2023-11-08 20:19:05 -08:00
Mikayla
2c67cc80ba
Merge branch 'main' into event-emitter 2023-11-08 20:10:38 -08:00
Nathan Sobo
9a022671a2 Simplify IME support 2023-11-08 21:06:00 -07:00
Mikayla
3c57b912b9
Update editor to use new event emitter 2023-11-08 19:52:43 -08:00
Mikayla
a97c8bf58f
Get workspace compiling with new event emitters 2023-11-08 19:29:00 -08:00
Conrad Irwin
97ce9e9586
de-dbg (#3280)
Remove some debugging from GoToLine

Release Notes:

- N/A
2023-11-08 18:45:42 -07:00
Conrad Irwin
47a63d5cb7 de-dbg 2023-11-08 18:36:12 -07:00
Max Brunsfeld
4350801399 Merge branch 'main' into bounds-for-range 2023-11-08 17:31:00 -08:00
Max Brunsfeld
277fbda356 Fix vertical position in first_rect_for_character_range 2023-11-08 17:27:32 -08:00
Max Brunsfeld
86865431b9 Assign gutter widht on editor view when painting element 2023-11-08 17:01:50 -08:00
Mikayla
26fc36ee0e
First pass at allowing multiple event types to be emitted by an entity 2023-11-08 16:34:38 -08:00
Marshall Bowers
15f6fbf53b Merge branch 'bounds-for-range' of github.com:zed-industries/zed into bounds-for-range 2023-11-08 19:25:18 -05:00
Marshall Bowers
9a41c58779 Hard-code the gutter margin temporarily 2023-11-08 19:25:12 -05:00
Max Brunsfeld
b77fab0fae 🎨 2023-11-08 16:24:11 -08:00
Conrad Irwin
b90e34aeb2
go to line2 (#3261)
- MODAL
- center a div
- MOAR CODE
- Beautiful go to line modal


Release Notes:
- N/A
2023-11-08 17:16:00 -07:00
Max Brunsfeld
7a8f219251 Account for element's bounds in Editor::bounds_for_range
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 16:15:10 -08:00
Conrad Irwin
cef8fa5570 tidy tidy 2023-11-08 17:09:38 -07:00
Max Brunsfeld
1a37d9edc6 Register text input handlers via new element hook
Provide element bounds to the input handler's `bounds_for_rect` method.

Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 15:48:55 -08:00
Conrad Irwin
1b9f76c01d Refactor GoToLine to use cx.observe_new_views() 2023-11-08 16:23:05 -07:00
Max Brunsfeld
d273fa6dd0 Fix DisplaySnapshot::x_for_point always returning 0
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 13:55:39 -08:00
Max Brunsfeld
c81440424b
Fix blinking in editor2 (#3272)
This also introduces new APIs in `ViewContext` for observing window
focus changes.

Release Notes:

- N/A
2023-11-08 13:53:43 -08:00
Julia
c7139db39e Get tsserver running again 2023-11-08 16:51:54 -05:00
Conrad Irwin
cbdd4aca89 Merge branch 'main' into go-to-line2 2023-11-08 14:46:52 -07:00
Conrad Irwin
6a802e2fda Make Modals dismissable in theory 2023-11-08 14:45:54 -07:00
Nate Butler
e505fb330c WIP 2023-11-08 16:43:32 -05:00
Nate Butler
23a97f5b61
Document ColorScaleSteps (#3271)
[[PR Description]]

Adds documentation to ColorScaleSteps:

```rust
/// Returns the specified step in the [`ColorScale`].
    #[inline]
    pub fn step(&self, step: ColorScaleStep) -> Hsla {
        // Steps are one-based, so we need convert to the zero-based vec index.
        self.0[step.0 - 1]
    }

    /// `Step 1` - Used for main application backgrounds.
    ///
    /// This step provides a neutral base for any overlaying components, ideal for applications' main backdrop or empty spaces such as canvas areas.
    ///
    #[inline]
    pub fn step_1(&self) -> Hsla {
        self.step(ColorScaleStep::ONE)
    }

    /// `Step 2` - Used for both main application backgrounds and subtle component backgrounds.
    ///
    /// Like `Step 1`, this step allows variations in background styles, from striped tables, sidebar backgrounds, to card backgrounds.
    #[inline]
    pub fn step_2(&self) -> Hsla {
        self.step(ColorScaleStep::TWO)
    }

    /// `Step 3` - Used for UI component backgrounds in their normal states.
    ///
    /// This step maintains accessibility by guaranteeing a contrast ratio of 4.5:1 with steps 11 and 12 for text. It could also suit hover states for transparent components.
    #[inline]
    pub fn step_3(&self) -> Hsla {
        self.step(ColorScaleStep::THREE)
    }

    /// `Step 4` - Used for UI component backgrounds in their hover states.
    ///
    /// Also suited for pressed or selected states of components with a transparent background.
    #[inline]
    pub fn step_4(&self) -> Hsla {
        self.step(ColorScaleStep::FOUR)
    }

    /// `Step 5` - Used for UI component backgrounds in their pressed or selected states.
    #[inline]
    pub fn step_5(&self) -> Hsla {
        self.step(ColorScaleStep::FIVE)
    }

    /// `Step 6` - Used for subtle borders on non-interactive components.
    ///
    /// Its usage spans from sidebars' borders, headers' dividers, cards' outlines, to alerts' edges and separators.
    #[inline]
    pub fn step_6(&self) -> Hsla {
        self.step(ColorScaleStep::SIX)
    }

    /// `Step 7` - Used for subtle borders on interactive components.
    ///
    /// This step subtly delineates the boundary of elements users interact with.
    #[inline]
    pub fn step_7(&self) -> Hsla {
        self.step(ColorScaleStep::SEVEN)
    }

    /// `Step 8` - Used for stronger borders on interactive components and focus rings.
    ///
    /// It strengthens the visibility and accessibility of active elements and their focus states.
    #[inline]
    pub fn step_8(&self) -> Hsla {
        self.step(ColorScaleStep::EIGHT)
    }

    /// `Step 9` - Used for solid backgrounds.
    ///
    /// `Step 9` is the most saturated step, having the least mix of white or black.
    ///
    /// Due to its high chroma, `Step 9` is versatile and particularly useful for semantic colors such as
    /// error, warning, and success indicators.
    #[inline]
    pub fn step_9(&self) -> Hsla {
        self.step(ColorScaleStep::NINE)
    }

    /// `Step 10` - Used for hovered or active solid backgrounds, particularly when `Step 9` is their normal state.
    #[inline]
    pub fn step_10(&self) -> Hsla {
        self.step(ColorScaleStep::TEN)
    }

    /// `Step 11` - Used for text and icons requiring low contrast or less emphasis.
    #[inline]
    pub fn step_11(&self) -> Hsla {
        self.step(ColorScaleStep::ELEVEN)
    }

    /// `Step 12` - Used for text and icons requiring high contrast or prominence.
    #[inline]
    pub fn step_12(&self) -> Hsla {
        self.step(ColorScaleStep::TWELVE)
    }
```

Release Notes:

- N/A
2023-11-08 16:25:17 -05:00