Commit Graph
601 Commits
Author SHA1 Message Date
Antonio Scandurra afbc61a344 Prevent default when mousing down on a button that responds to clicks
This ensures that ancestors that track focus don't accidentally steal
it on mouse down, which was preventing the editor from deploying the
code actions menu.
2023-12-19 14:27:19 +01:00
Antonio Scandurra 02e53025f3 Track caller on h_stack and v_stack 2023-12-19 14:26:30 +01:00
Marshall Bowers 734bbfa66f Use status colors for contact availability indicators (#3704)
This PR updates the availability indicators in the contact list to use
the status colors from the theme.

Release Notes:

- N/A
2023-12-18 16:56:44 -05:00
Marshall Bowers 9785481aba Make Disclosure accept an ID (#3701)
This PR makes the `Disclosure` component accept an ID rather than using
a static ID for all disclosures.

Release Notes:

- N/A
2023-12-18 15:21:04 -05:00
Marshall Bowers 0aa690f915 Always show channel toggle when collapsed (#3698)
This PR makes the channel toggle disclosure always visible when a
channel tree is collapsed, as opposed to just being visible on hover.

This makes it possible to visually identify collapsed channel trees
without having to hover over each entry.

Release Notes:

- N/A
2023-12-18 13:27:47 -05:00
Nate Butler eeaa1e5cf9 Add github icon 2023-12-18 12:56:57 -05:00
Nate Butler d72cd3795a Fix implementation of full_width and icon_position in button 2023-12-18 12:56:50 -05:00
Nate Butler 50a44dd8ba Improve tooltip with keybinding styling 2023-12-15 11:07:17 -05:00
Nate Butler 62ea58618c Merge branch 'main' into story-enhancements 2023-12-15 10:26:59 -05:00
Conrad Irwin 7e1d61d116 Merge branch 'main' into user-menu 2023-12-14 20:18:20 -07:00
Nate Butler e4f9bddbab Remove unused imports 2023-12-14 17:56:42 -05:00
Nate Butler 936c78be94 WIP IconButton story 2023-12-14 17:51:08 -05:00
Nathan Sobo d13a21c238 Don't move in paint 2023-12-14 15:15:18 -07:00
Nathan Sobo fb3382bcc5 Merge remote-tracking branch 'origin/main' into perf-2 2023-12-14 14:16:59 -07:00
Nathan Sobo 1ae25f52a1 WIP 2023-12-14 10:31:45 -07:00
Marshall Bowers ceede28fab Ensure the outer ListItem element has a unique ID (#3644)
This PR fixes an issue where the outer `ListItem` element was using a
static ID instead of the one provided to the component.

Now that active states are fixed, this meant that any time there were
sibling list items they would share active states if one of them was
clicked.

Release Notes:

- N/A
2023-12-13 21:14:21 -05:00
Marshall Bowers 474f09ca3f Remove unneeded left-click filtering in ListItem (#3643)
This PR removes the left-click filtering from the `on_click` handler for
`ListItem`s.

It's no longer needed after #3584.

Release Notes:

- N/A
2023-12-13 21:03:50 -05:00
Marshall Bowers 057b235c56 Implement VisibleOnHover for IconButton (#3642)
This PR implements the `VisibleOnHover` trait for `IconButton`s.

I noticed that in a lot of places we were wrapping an `IconButton` in an
extra `div` just so we could call `visible_on_hover` on it. By
implementing the trait on `IconButton` directly it allows us to avoid
the interstitial `div` entirely.

Release Notes:

- N/A
2023-12-13 20:42:27 -05:00
Marshall Bowers 137e4e9251 Add .visible_on_hover helper method (#3639)
This PR adds a `.visible_on_hover` helper method that can be used to
make an element only visible on hover.

I noticed we were repeating this similar stanza in a bunch of different
spots:

```rs
some_element
    .invisible()
    .group_hover("", |style| style.visible())
``` 

so it seemed like a nice thing to factor out into a reusable utility.

Release Notes:

- N/A
2023-12-13 19:12:20 -05:00
d59de96921 Style collab panel (#3638)
This PR styles the collab panel.

Release Notes:

- N/A

---------

Co-authored-by: Nate Butler <iamnbutler@gmail.com>
Co-authored-by: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-12-13 18:20:04 -05:00
Conrad Irwin 7899833367 Don't hang the app when signing in offline 2023-12-13 15:52:43 -07:00
Marshall BowersandNate ee509e043d Rework ListItem and ListHeader to use slot-based APIs (#3635)
This PR reworks the `ListItem` and `ListHeader` components to use
slot-based APIs, making them less opinionated about their contents.

Splitting this out of the collab UI styling PR so we can land it to
avoid conflicts.

Co-authored-by: Nate <nate@zed.dev>

Release Notes:

- N/A
2023-12-13 16:08:31 -05:00
Max Brunsfeld e09b07ddae Allow dragging tabs (#3616) 2023-12-12 16:20:37 -08:00
6362221363 Scroll the tab bar to show the active tab
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-12-12 15:42:33 -08:00
a579713a45 Allow dragging and dropping tabs
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-12-12 15:07:03 -08:00
Max Brunsfeld a4a501603e Start work on dragging tabs 2023-12-12 15:04:49 -08:00
Julia 2e00da5a79 zed2 notification panel (#3603)
Release Notes:

- N/A
2023-12-12 18:04:47 -05:00
Marshall Bowers e489e2e583 Enable scrolling in tab bar (#3614)
This PR enables scrolling horizontally in the tab bar.

Currently this requires holding down <kbd>Shift</kbd> for the scroll to
activate. We'll need to look into this.

Scrolling also currently works when there is a split in the editor, as
the non-split view goes down a different rendering path that does not
constrain the pane width, which breaks a number of things.

Release Notes:

- N/A
2023-12-12 16:38:25 -05:00
Marshall Bowers d2feaa41a5 Extract TabBar component (#3613)
This PR extracts a new `TabBar` component from the tab bar
implementation in the workspace.

Release Notes:

- N/A
2023-12-12 15:50:05 -05:00
Julia fd6320b136 Finish fixing up Avatar using URI 2023-12-12 11:49:04 -05:00
JuliaandAntonio Scandurra 44d40625fe Start changing Avatar to use URI
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2023-12-12 11:27:40 -05:00
Kirill Bulatov ca8e8d1065 Finish removing all dangerous focus APIs 2023-12-12 16:11:14 +02:00
Max Brunsfeld cbce49ff68 Start work on dragging entries in the project panel 2023-12-11 15:52:58 -08:00
Max Brunsfeld a208229a2c Use Box instead of Rc for List event handlers 2023-12-11 15:52:06 -08:00
Marshall Bowers 75c1f0e997 Add w_vw and h_vh to StyledExt for setting sizes in viewport units (#3600)
This PR adds `w_vw` and `h_vh` methods to `StyledExt`.

These methods are the same as their `w` and `h` counterparts, but
operate in viewport units, giving us the equivalent of `vw` and `vh` in
CSS.

You can see them in action in this story:

```
cargo run -p storybook2 -- components/viewport_units
```

Release Notes:

- N/A
2023-12-11 18:19:11 -05:00
Mikayla 3198eb6c6d Merge branch 'main' into splits 2023-12-11 10:16:32 -08:00
Piotr Osiewicz ddbd5cf2cb Merge branch 'main' into project_search2 2023-12-11 16:47:48 +01:00
Conrad Irwin 4290c67b6a Restore namespace parameter to actions!
This does not yet fix `derive(Action)`, but will conflict with a lot so
wanted to merge quickly.
2023-12-09 15:18:31 -07:00
Mikayla fd34d1da31 Add back semi-funcitonal pane resizing code 2023-12-08 16:29:42 -08:00
Julia 40b219f861 zed2: Position terminal context menu, wire up dismis, and unbork context menu (#3561)
Release Notes:

- N/A
2023-12-08 14:47:28 -05:00
JuliaandMax Brunsfeld 79e6dedb7a Track focus shenanigans with context menu
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2023-12-08 13:49:42 -05:00
Joseph T. Lyons f4c93abad5 🚧 Feedback modal UI 🚧 (#3536)
[[PR Description]]

TODO: 
- [x] Add placeholder text to editor
- [x] Add external link icon to "Community repo" button
- [x] Show `not-allowed` cursor for disabled buttons
- [ ] Add `Headline` ui component
- [ ] Finish UI pass
- [ ] Fix `IconPosition` on button (should swap the icon side)
- [ ] Add conditional tooltip for disabled "Send feedback" button.
- [ ] Add common/top feedback link.
- [ ] Add `vw`/`vh` units to allow sizing the modal based on viewport
size.

Release Notes:

- N/A
2023-12-08 13:30:42 -05:00
Piotr Osiewicz d0a673ec62 buffer_search: Add tooltips, polish keybinds 2023-12-08 12:37:20 +01:00
Max Brunsfeld 5e3d0a6d03 Add following UI in collab titlebar (#3544)
* [x] restructure titlebar to show facepiles for each collaborator and
their followers
* [x] allow following collaborators by clicking their avatars in the
titlebar
* [x] show grayscale avatar for collaborators not focused on this
project
* [x] show collaborators' microphone activity and muted status in the
titlebar
* [x] in facepile, show leader in front of followers
2023-12-07 14:38:30 -08:00
Max Brunsfeld d1b47b4059 Indicate collaborators' presence (grayscale), speaking and muted status 2023-12-07 14:18:34 -08:00
Marshall Bowers 853daf953b Remove padding from ButtonSize::None (#3541)
This PR removes the padding from buttons when using `ButtonSize::None`.

This fixes the size of the tab close buttons.

Release Notes:

- N/A
2023-12-07 14:11:30 -05:00
Joseph T. Lyons 439df24526 Merge branch 'main' into feedback-modal-ui 2023-12-07 12:58:53 -05:00
Joseph T. LyonsandMarshall Bowers 7c19650a40 Remove when_else
Co-Authored-By: Marshall Bowers <1486634+maxdeviant@users.noreply.github.com>
2023-12-07 12:37:07 -05:00
Marshall Bowers 393be3cedf Extract Tab component (#3539)
This PR extracts a new `Tab` component from the tabs implementation in
the workspace.

This will allow us to reuse this component anywhere that we need to use
tabs.

Like our other newer components, the `Tab` component has a relatively
open API.

It accepts `children` (or `child`) as well as a `start_slot` and
`end_slot` to position content in the slots on either end of the
content. These slots also respect the `TabCloseSide` and will switch
positions based on this value.

<img width="763" alt="Screenshot 2023-12-07 at 12 19 42 PM"
src="https://github.com/zed-industries/zed/assets/1486634/78e4db6a-f807-431e-8777-f52f2631e6ed">

Release Notes:

- N/A
2023-12-07 12:30:43 -05:00
Nate Butler 5e5eb25aab WIP
[no-ci]
2023-12-07 10:50:07 -05:00