Commit Graph

22176 Commits

Author SHA1 Message Date
Antonio Scandurra
1f0bda71f6 Remove underlines from tab titles
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-07 18:40:42 +02:00
Antonio Scandurra
d08ec438ed Make titlebar taller and position traffic lights accordingly
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-07 18:37:45 +02:00
Antonio Scandurra
c4dac3c6b1 Open a window with an empty buffer when launching zed with no args 2021-09-07 15:00:24 +02:00
Antonio Scandurra
058691d2b2 Focus chat input editor after signing in 2021-09-07 13:57:30 +02:00
Antonio Scandurra
09bb42c168 Show "sign in" prompt when opening the chat panel while signed out 2021-09-07 12:27:43 +02:00
Antonio Scandurra
a8011fcde4 Render underlines in front of paths and glyphs 2021-09-07 11:19:44 +02:00
Antonio Scandurra
5b71901912 Flush pending underline when we are at the end of the line 2021-09-07 11:04:44 +02:00
Antonio Scandurra
cf68ad3a82 Trim pending underline when text runs don't cover the whole line 2021-09-07 11:03:43 +02:00
Antonio Scandurra
8cf16c6ecc Use Label's base style underline when no highlights are provided 2021-09-07 11:03:08 +02:00
Max Brunsfeld
8be85fd8de Fix typo in highlighting regex for constants 2021-09-06 19:03:21 -07:00
Nathan Sobo
6323e8cc59 WIP: Try rendering underlines after all other quads
I thought this would allow underlines to show up in tabs, but it doesn't seem to be working.
2021-09-06 16:57:58 -06:00
Max Brunsfeld
9346aa300d Start work on underlined text
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-06 15:36:09 -07:00
Max Brunsfeld
8e5c709057 Block for up to 1ms when reparsing
This way, we'll avoid rendering two frames on edits that lead to fast reparses.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-06 12:50:38 -07:00
Max Brunsfeld
11b8577d1b Update FoldMap snapshot versions when only the parse tree changes
even if the buffer's text has not changed

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-06 11:57:55 -07:00
Antonio Scandurra
94959d18c4 Load embedded fonts when initializing settings 2021-09-06 14:08:42 +02:00
Antonio Scandurra
6e71c43d29 Delete Editor::newline and just use the Insert action 2021-09-06 13:17:44 +02:00
Antonio Scandurra
2aadc97126 Simplify how we determine if enter should insert a newline or propagate 2021-09-06 13:08:19 +02:00
Antonio Scandurra
ffc873252e Rename BufferView to Editor in ui_name 2021-09-06 12:51:11 +02:00
Antonio Scandurra
77d1574679 Pass how many lines the editor should expand to in auto height mode 2021-09-06 12:50:04 +02:00
Antonio Scandurra
cb62d53b49 Return errors instead of panicking when interacting with the keychain
Closes #134
2021-09-06 10:40:19 +02:00
Max Brunsfeld
cff6ffb716 Avoid invalid lifecycle state for flex element when total child flex is zero 2021-09-04 16:27:38 -07:00
Antonio Scandurra
00f6bdcb24 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
0e4f77750a Fix cargo feature name in seed-db script 2021-09-03 16:54:58 -07:00
Antonio Scandurra
c3f1d43861
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 Scandurra
e9d50159ee Add a min width for the ChatPanel
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-03 17:56:07 +02:00
Antonio Scandurra
f0775aeebc Rename Hooks to Hook
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-03 17:56:01 +02:00
Antonio Scandurra
2f0f6e210d 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
0ae70b62cb Use on_after_layout to cap the rendered sidebar item's width 2021-09-03 17:19:57 +02:00
Antonio Scandurra
1b8ea08377 Exclude selections from editor splits in Editor::active_selection_sets 2021-09-03 14:54:24 +02:00
Antonio Scandurra
bd13584807 Clone Editor::build_style on split 2021-09-03 14:40:31 +02:00
Antonio Scandurra
215db4243c Ensure key window is a GPUIWindow before returning its id 2021-09-03 14:20:59 +02:00
Antonio Scandurra
2320205911 Update theme selector matches when search query changes 2021-09-03 13:23:28 +02:00
Antonio Scandurra
4c7eaaebb1 Use Flexible in file finder and theme switcher instead of Expanded 2021-09-03 13:20:41 +02:00
Antonio Scandurra
776f7dd5a9 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
a0dd41cdf6 Add a Flexible element that works like in Flutter 2021-09-03 11:40:18 +02:00
Antonio Scandurra
ec36d818c0 Round corners in the chat panel's input editor 2021-09-03 09:49:47 +02:00
Max Brunsfeld
522bef2e3a Add placeholder text as a feature of Editor, use it in chat panel 2021-09-02 17:36:56 -07:00
Max Brunsfeld
1c43121ae0 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 Scandurra
f59e02cf25 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 Scandurra
3d4ff43f9e Reset visible bounds when painting an Overlay element
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-02 18:46:48 +02:00
Antonio Scandurra
6fec9e1f70 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 Scandurra
2d5abee655 Fix calculation of visible glyph bounds
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:24:52 +02:00
Antonio Scandurra
26fe285408 Always inherit parent layer's clip bounds
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-02 16:24:08 +02:00
Antonio Scandurra
a27a17b8e2 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 Scandurra
6a071e865f 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 Scandurra
bdc35f03f2 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
0490c609fb 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
38dc023942 Toggle sidebar items on mouse down instead of on click 2021-09-02 10:20:58 +02:00
Antonio Scandurra
1d697df1bc Implement channel switching 2021-09-02 10:16:20 +02:00
Antonio Scandurra
836b6dfbaf Don't return channels that were released in ChannelList::get_channel 2021-09-02 10:15:02 +02:00