Commit Graph
21 Commits
Author SHA1 Message Date
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
Max BrunsfeldandNathan Sobo 985788b855 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
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
Max Brunsfeld 81041d7841 Restructure Theme with new style objects 2021-08-03 13:36:58 -07:00
Max BrunsfeldandNathan 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 BrunsfeldandNathan 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
Max Brunsfeld 6ef447866a Rename context parameters to cx in gpui 2021-05-28 15:32:35 -07:00
Max BrunsfeldandNathan Sobo 3f71867af8 Improve styling of tabs
* Enforce a min width per tab
* Center the title within tab, regardless of icon
* Render icon over the top of the tab title
* Ensure there is always a fixed minimum amount of filler to the right of all tabs

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-14 15:14:46 -07:00
Nathan Sobo 9f6f27f305 Order debug JSON and allow elements to be named; copy to clipboard 2021-04-07 21:54:14 -06:00
Nathan Sobo 0664321125 Add ability to debug element trees as JSON 2021-04-07 21:54:14 -06:00
Max Brunsfeld 187eb95b13 Throw a little between filename and modified icon
We probably need a primitive to right-align an element within
its parent, but I don't have strong opinions about how that
should be designed, so I'm just adding this as a temporary
measure so that the tabs won't look too ugly in the meantime.
2021-04-07 15:39:09 -07:00
Nathan Sobo 995acefce5 Inset container contents to account for container border 2021-04-01 10:31:00 -06:00
Antonio ScandurraandNathan Sobo a9c428ad05 Remove Overdraw
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 17:58:43 +02:00
Antonio ScandurraandNathan Sobo d5a9bab4a0 Fix tabs layout
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 17:57:00 +02:00
Antonio Scandurra 43abd96769 Apply padding correctly when painting Container's children 2021-03-23 10:59:35 +01:00
Nathan Sobo 66dcb73263 Respect margins when painting Container 2021-03-22 21:11:08 -06:00
Antonio ScandurraandNathan Sobo bfc57cb4f6 Start on rendering shadows
This still doesn't work properly because shadows are rendered beneath
quads and we still don't have a layering mechanism.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-22 18:05:16 +01:00
Nathan Sobo 119aa452b6 Overhaul the entire element system
Now the Element trait is designed to be wrapped in a Lifecycle enum that gets placed inside an ElementBox. This allows the framework to store data on behalf of the Element implementation, such as sizes, bounds, and also implementation-specific LayoutState and PaintState types. This makes it easier to reason about which data is available in each Element method.
2021-03-21 20:54:23 -06:00
Nathan SoboandAntonio Scandurra 046fe3fff9 Dispatch keystrokes and fix rerendering when window invalidated
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-03-21 11:38:23 -06:00
Nathan Sobo d14c943150 Start on Scene 2021-03-19 13:31:25 -06:00
Nathan Sobo 356bc41752 WIP 2021-03-09 21:00:51 -07:00