Antonio Scandurra
4a96a5c9ff
Use a negative delta to scroll down in layout unit test for List
2021-09-16 11:46:53 +02:00
Max Brunsfeld
df4b5890fd
Run fewer iterations of the gpui list test by default
2021-09-15 18:06:21 -07:00
Nathan Sobo
7e4d5b7d04
Clear cached credentials when establishing a websocket connection with an invalid token
2021-09-14 20:36:03 -06:00
Nathan Sobo
99a2dc4880
Render an offline icon in titlebar when connection is lost
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 17:47:43 -06:00
Nathan Sobo
0f415a594f
Style avatar image with border and rounded corners
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 16:59:38 -06:00
Nathan Sobo
426d52d8c1
Mix quad border color with background color based on its alpha channel
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 16:59:09 -06:00
Nathan Sobo
b63b717eac
Preserve aspect ratio when scaling images
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-14 16:39:35 -06:00
Max Brunsfeld
84d4bb6186
Introduce HttpClient trait, use it to fetch avatars in UserStore
...
* Add a FakeHttpClient for tests
2021-09-14 13:42:44 -07:00
Nathan Sobo
f0019e3725
WIP
2021-09-14 12:29:56 -06:00
Antonio Scandurra
bd4d73bb27
Extract image rasterization into ImageCache
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-14 18:11:59 +02:00
Antonio Scandurra
d15eda53f6
Use AtlasAllocator
in SpriteCache
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-14 17:57:01 +02:00
Antonio Scandurra
95da665095
Allow passing a corner radius and borders to rendered images
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-14 17:49:11 +02:00
Antonio Scandurra
96ade8668f
Start on image rendering
2021-09-14 16:48:44 +02:00
Antonio Scandurra
8de18b5a84
Re-join channel when reconnecting
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-09-09 15:34:46 +02:00
Max Brunsfeld
c3e29e0a2d
Finish implementing DeterministicExecutor::advance_clock
...
* Start by running all non-timer futures to completion, to ensure that
timers have a chance to be registered.
* Release executor's state lock before waking any timers
2021-09-08 11:27:30 -07:00
Antonio Scandurra
900010160f
WIP
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-09-08 18:58:59 +02:00
Max Brunsfeld
08bac7b9a3
Introduce test-only Buffer::set_sync_parse_timeout
...
When testing buffer's asynchronous reparsing, set the sync
parse timeout to zero, so that we can exercise the async code path.
2021-09-07 16:23:49 -07:00
Max Brunsfeld
36fb559c03
Rework tabs
...
* Tabs are no longer flexible in width
* Move status icons to the left side of the tab
* The close button is always visbile for the active tab
Co-Authored-By: Nate Butler <nate@zed.dev>
2021-09-07 14:28:14 -07:00
Nathan Sobo
13143e64a2
Style resize handles
...
We want the draggable area to be larger than the visual appearance, so we added a padding facility to MouseEventHandler that enlarges the "hit area" by the specified padding.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-09-07 13:22:21 -06:00
Antonio Scandurra
7db78b3961
Merge branch 'chat'
2021-09-07 19:21:03 +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
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
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
Antonio Scandurra
94959d18c4
Load embedded fonts when initializing settings
2021-09-06 14:08:42 +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
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
215db4243c
Ensure key window is a GPUIWindow before returning its id
2021-09-03 14:20:59 +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
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
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
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
4876e40a98
Reset rendered range when calling ListState::reset
2021-09-02 10:14:32 +02:00