Commit Graph
25009 Commits
Author SHA1 Message Date
Antonio Scandurra c34005cc3c Rename BufferView to Editor in ui_name 2021-09-06 12:51:11 +02:00
Antonio Scandurra 9ef97ca7f4 Pass how many lines the editor should expand to in auto height mode 2021-09-06 12:50:04 +02:00
Antonio Scandurra e21751dc18 Return errors instead of panicking when interacting with the keychain
Closes #134
2021-09-06 10:40:19 +02:00
Max Brunsfeld 534b5a4e3b Avoid invalid lifecycle state for flex element when total child flex is zero 2021-09-04 16:27:38 -07:00
Antonio Scandurra c7f0983acd Bundle and use Inconsolata v2.012
There's a newer version of the font available but ligatures seem
broken googlefonts/Inconsolata#58 and googlefonts/Inconsolata#52.

As part of this commit I also upgraded rust-embed to use the new
exclusion feature, which allows us to skip embedding OS files like
`.DS_Store`.
2021-09-04 17:02:20 +02:00
Max Brunsfeld f21440451c Fix cargo feature name in seed-db script 2021-09-03 16:54:58 -07:00
Antonio Scandurra cee475c806 Merge pull request #132 from zed-industries/fix-key-window
Ensure key window is a GPUIWindow before returning its id
2021-09-03 17:59:02 +02:00
Antonio ScandurraandNathan Sobo 3d6fa48dc0 Add a min width for the ChatPanel
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-03 17:56:07 +02:00
Antonio ScandurraandNathan Sobo 1c82597e34 Rename Hooks to Hook
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-03 17:56:01 +02:00
Antonio ScandurraandNathan Sobo 1d566cbaae Honor max constraint in Flex even if children overflow
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-03 17:47:45 +02:00
Antonio Scandurra e9ba582128 Use on_after_layout to cap the rendered sidebar item's width 2021-09-03 17:19:57 +02:00
Antonio Scandurra 5a6d004b2b Exclude selections from editor splits in Editor::active_selection_sets 2021-09-03 14:54:24 +02:00
Antonio Scandurra 16c83aec44 Clone Editor::build_style on split 2021-09-03 14:40:31 +02:00
Antonio Scandurra dcfac2c672 Ensure key window is a GPUIWindow before returning its id 2021-09-03 14:20:59 +02:00
Antonio Scandurra 9401b69a19 Update theme selector matches when search query changes 2021-09-03 13:23:28 +02:00
Antonio Scandurra d641e08399 Use Flexible in file finder and theme switcher instead of Expanded 2021-09-03 13:20:41 +02:00
Antonio Scandurra d136acd9e4 Add a new Hooks element to invoke a callback before layout
This is useful to cap the width of sidebars when dragging the
resize handles beyond the maximum bounds of the sidebar.
2021-09-03 12:18:31 +02:00
Antonio Scandurra ea623554dc Add a Flexible element that works like in Flutter 2021-09-03 11:40:18 +02:00
Antonio Scandurra 86ca20a969 Round corners in the chat panel's input editor 2021-09-03 09:49:47 +02:00
Max Brunsfeld 09a3aefee3 Add placeholder text as a feature of Editor, use it in chat panel 2021-09-02 17:36:56 -07:00
Max BrunsfeldandAntonio Scandurra b433bf899f In theme, add an InputEditorSyle for styling small editors
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-09-02 11:20:30 -07:00
Antonio ScandurraandMax Brunsfeld 2d1d6daeb8 Use macOS API to retrieve the local timezone
The `time` crate currently doesn't have a reliable way to get that.
In the future, `NSSystemTimeZoneDidChangeNotification` could be
used to keep the cached timezone up-to-date.

Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-02 19:15:05 +02:00
Antonio ScandurraandMax Brunsfeld c230b71335 Reset visible bounds when painting an Overlay element
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-02 18:46:48 +02:00
aea839f9f8 Include sanitized message in SendChannelMessageResponse
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-02 18:31:24 +02:00
Antonio ScandurraandNathan Sobo 53916c87a6 Fix calculation of visible glyph bounds
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:24:52 +02:00
Antonio ScandurraandNathan Sobo a99346e00d Always inherit parent layer's clip bounds
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:24:08 +02:00
Antonio ScandurraandNathan Sobo b5c3798c39 Make scrolling up in chat panel smoother
This increases the threshold at which we start loading new messages
as well as the amount of messages we get back from the server every
time we fetch.

Also, we restructured the seed binary to use the methods in `Db` to
generate seed data and added random chat messages.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:05:34 +02:00
Antonio ScandurraandNathan Sobo 57df5c0363 Make Line::paint interface consistent with Line::paint_wrapped
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 14:33:52 +02:00
Antonio ScandurraandNathan Sobo 5e2b61b98b Paint only glyphs that intersect the visible bounds in Text
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 14:14:05 +02:00
Antonio Scandurra 8d023ffd7c Introduce a visible_bounds parameter to Element::paint
We're not using this yet but this will be useful to avoid rendering
unnecessary portions of text.
2021-09-02 11:42:23 +02:00
Antonio Scandurra 18be9e1114 Toggle sidebar items on mouse down instead of on click 2021-09-02 10:20:58 +02:00
Antonio Scandurra ef4c92a9f1 Implement channel switching 2021-09-02 10:16:20 +02:00
Antonio Scandurra 168591dc78 Don't return channels that were released in ChannelList::get_channel 2021-09-02 10:15:02 +02:00
Antonio Scandurra 9bc3d9b669 Reset rendered range when calling ListState::reset 2021-09-02 10:14:32 +02:00
Max Brunsfeld ef1664a1d7 Add a with_style method to Editor 2021-09-01 17:15:21 -07:00
Max BrunsfeldandNathan Sobo 57d665bcbf Improve styling of chat messages and channel select
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 16:14:51 -07:00
Max BrunsfeldandNathan Sobo 8455f733d8 Allow uniform margins and paddings to be specified as single numbers
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 16:14:25 -07:00
Max BrunsfeldandNathan Sobo 065cdaf1fe Add refreshing field to LayoutContext
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 16:02:12 -07:00
Max BrunsfeldandNathan Sobo 388d731364 Fix list's scrollwheel direction
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 15:36:22 -07:00
Max BrunsfeldandNathan Sobo 6ef947ddb9 Clean up List::layout
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 15:27:23 -07:00
Max BrunsfeldandNathan Sobo 529979a0a6 Return correct scroll top from layout when list is not full
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 14:27:38 -07:00
3c51448e77 Get randomized test passing
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-09-01 13:25:12 -07:00
Antonio ScandurraandNathan Sobo 308a9f0b36 Adjust the stored scroll top during layout if it exceeds scroll max
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 17:29:26 +02:00
Antonio ScandurraandNathan Sobo ded08a28a7 WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-01 16:19:01 +02:00
Antonio Scandurra e517e267d0 WIP 2021-09-01 13:50:39 +02:00
Antonio Scandurra eb45e0a97f Fix off-by-one error in StateInner::visible_range
I even wonder if we should keep this function around, as it feels
like it can only be called at certain times (e.g. layout) and not
after a splice or a scroll where we may not have rendered the
elements we actually need.
2021-09-01 12:20:48 +02:00
Antonio Scandurra 200a2c2eda Save last layout width in List to avoid unnecessary re-renders 2021-09-01 12:20:11 +02:00
42f616785f Start work on partial rendering for List element
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-08-31 21:57:56 -07:00
Antonio ScandurraandNathan Sobo b34a25f177 Maintain logical scroll top when splicing List elements
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-08-31 16:35:57 +02:00
Antonio ScandurraandNathan Sobo 047585ebc1 Express scroll position with an element index and an offset
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-08-31 15:57:03 +02:00