Nathan Sobo and Max Brunsfeld
33dbbf271e
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-08-24 18:09:36 -07:00
Max Brunsfeld and Nathan Sobo
91c2b5825e
Add LineWrapper::wrap_shaped_line
...
This allows us to perform wrapping based on
glyph positions in an already-shaped line. We
plan to use this in the new Text element,
because there we'll already need to do text
shaping as part of layout. This text isn't editable
so it won't need to be rewrapped with the same
frequency as the text editor's content.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-24 18:09:36 -07:00
Nathan Sobo and Max Brunsfeld
3ac489a8b6
Fix panic when scrolling non-overflowing lists
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-08-24 17:51:37 -06:00
Nathan Sobo
8559be9f92
Default unstyled text to be red instead of transparent
2021-08-24 17:11:27 -06:00
Max Brunsfeld and Nathan Sobo
8179f90589
Add initial unit test for channel list
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-24 13:12:02 -07:00
Antonio Scandurra
54b4a4bf6a
Allow editor to be created in auto-height mode
2021-08-24 14:17:15 +02:00
Max Brunsfeld
baded7d416
Start work on subscribing to model from ChatPanel
2021-08-23 17:21:06 -07:00
Max Brunsfeld and Nathan Sobo
6df80d94ad
Allow subscription/notification to be cancelled by dropping the returned Subscription
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:54:24 -07:00
Max Brunsfeld and Nathan Sobo
fa0739ee2e
Remove model and view specific observe/subscribe methods
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:07:50 -07:00
Max Brunsfeld
5ecedd894d
Add ChannelList to AppState
2021-08-23 15:03:45 -07:00
Max Brunsfeld and Nathan Sobo
43bb38206f
Add generic subscribe and observe methods to contexts
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:03:12 -07:00
Max Brunsfeld and Nathan Sobo
8e191f27d9
Simplify state associated with observations
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:03:08 -07:00
Max Brunsfeld and Nathan Sobo
d02eaf9e3a
Fix scrolling in List element
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 11:02:30 -07:00
Antonio Scandurra and Nathan Sobo
a182db863f
WIP: Render dummy chat messages to test List
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 17:29:46 +02:00
Antonio Scandurra and Nathan Sobo
94e9a83326
Give up on entities being Send and Sync
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 17:04:32 +02:00
Antonio Scandurra and Nathan Sobo
3543aceff3
Implement scrolling and painting for List
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 16:41:48 +02:00
Antonio Scandurra and Nathan Sobo
bd89dc4114
Perform a full layout of List when width changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 16:04:23 +02:00
Antonio Scandurra and Nathan Sobo
03b7c3c8c6
Implement and test splice for ListState
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 16:00:05 +02:00
Antonio Scandurra and Nathan Sobo
2c3ba00d3e
Remove vestiges of after_layout
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:23:06 +02:00
Antonio Scandurra and Nathan Sobo
6dddb72e82
WIP: Create infrastructure for testing element layout
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 15:20:23 +02:00
Antonio Scandurra and Nathan Sobo
6129bda068
Fix boxed cloning of AnyAction
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-23 14:45:13 +02:00
Antonio Scandurra
ab2977c65c
Pass action instead of action argument to handlers
2021-08-23 12:00:31 +02:00
Nathan Sobo
86effd64a2
Get project compiling with type-safe actions
2021-08-22 21:02:48 -06:00
Nathan Sobo
638b533fc7
WIP
2021-08-22 13:29:54 -06:00
Nathan Sobo
24639ec900
WIP
2021-08-22 11:58:19 -06:00
Nathan Sobo
030de803fe
WIP: Start on List::layout
...
Perform layout on any elements that we haven't yet laid out.
2021-08-21 13:40:45 -06:00
Nathan Sobo
d68e0b0b97
Remove after_layout from Element trait
...
Now that layout takes a MutableAppContext we don't need an after_layout phase.
2021-08-20 16:40:45 -06:00
Nathan Sobo
d0a5bc694c
WIP
2021-08-20 16:34:46 -06:00
Nathan Sobo
c3dda14490
WIP: Move sum_tree module into gpui so we can use it in List
2021-08-20 16:18:39 -06:00
Max Brunsfeld and Antonio Scandurra
a7ac37a318
Make titlebar_height available during render
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-08-20 10:45:42 -07:00
Max Brunsfeld and Antonio Scandurra
5cfb948b2b
Make the default window size non-zero
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-08-20 10:01:24 -07:00
Max Brunsfeld
c7c7a197d1
Merge remote-tracking branch 'origin/sexy' into chat-theme-prep
2021-08-20 09:50:58 -07:00
Antonio Scandurra and Nathan Sobo
98f691d16d
Make database interactions deterministic in test
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-20 16:24:33 +02:00
Nathan Sobo
a4882169c2
Fetch messages when joining a channel
2021-08-19 15:25:20 -06:00
541f58e12c
Start on subscribing to messages in channel entity instances
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-08-18 11:45:29 -06:00
Nathan Sobo
149fb574c7
Expose titlebar_height in LayoutContext
2021-08-06 09:11:16 -06:00
Nathan Sobo
e16c62ed0e
Add platform::Window::titlebar_height
2021-08-06 09:08:29 -06:00
Nathan Sobo
34eb2c446f
Start on custom titlebar
2021-08-05 11:48:35 -06:00
Max Brunsfeld and Nathan Sobo
d37a98782e
Improve border parsing in themes
...
The `top`, `left`, `bottom` and `right` fields are optional.
If none are specified, then they are all set to true.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-04 17:19:42 -07:00
Nathan Sobo
85a076312a
Merge branch 'main' into theme-variables
2021-08-04 16:47:43 -06:00
Max Brunsfeld and Nathan Sobo
802f1f4e78
Get new theme structure working
...
* Fix precedence of extends directives
* Always group color with font properties for text theming
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-04 14:07:19 -07:00
Nathan Sobo and Max Brunsfeld
56354c7623
Avoid crashes when laying out lines containing byte order marks
...
This solution isn't perfect and we'll probably have layout bugs with these lines, but this prevents us from triggering undefined behavior.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-08-04 11:52:21 -06:00
Nathan Sobo and Max Brunsfeld
90b51c3356
Implement themes::ThemeRegistry::get
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-08-03 19:35:15 -06:00
Max Brunsfeld
81041d7841
Restructure Theme with new style objects
2021-08-03 13:36:58 -07:00
Max Brunsfeld and Nathan Sobo
ef0ffbe819
Use custom color wrapper type everywhere in gpui & zed
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-03 12:48:58 -07:00
Max Brunsfeld and Nathan Sobo
fa01273466
Extract {Container,Label}Style structs from those elements
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-03 11:07:03 -07:00
Nathan Sobo
4c53470800
Notify all views when a theme is selected
2021-08-02 16:57:10 -06:00
Max Brunsfeld and Nathan Sobo
b30d0daabf
Add a theme picker
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-02 14:55:27 -07:00
Max Brunsfeld and Nathan Sobo
e080739d57
Remove use of replace_with crate for managing element lifecycles
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-08-02 13:11:11 -07:00
Max Brunsfeld
8785f1f9c6
Use deterministic executor in randomized synchronous tests
...
Remove App::test function
2021-07-30 14:07:37 -07:00