Close #579 - Leave some space before the Input to support mouse down to position cursor at start of line. - Fix to match with size appearance. - Keep padding left and right to Input, even setup `appearance: false`. ## Break Changes - The `xlarge`, `large`, `small`, `xsmall` ... method has been moved to use `ui::Sizable` trait to same as other component. |
||
|---|---|---|
| .cargo | ||
| .github | ||
| assets | ||
| crates | ||
| script | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| DEVELOPMENT | ||
| LICENSE-APACHE | ||
| README.md | ||
GPUI Component
This is still an early stage of development, we may change API frequently. But the features is ok to use, you must keep tracking our changes.
UI components for building fantastic desktop application by using GPUI.
Features
- Theming
- TitleBar
- Dock, Tiles
- TextInput, TextArea, OtpInput
- Button, Link
- Label
- Icon
- Checkbox, Radio, Switch
- Dropdown
- Tabs
- Notification
- Tooltip
- Popover
- Resizable
- Progress & Indicator
- Slider
- Skeleton
- DatePicker, DateRangePicker, Calendar
- ColorPicker
- List
- Table
- Menu
- Drawer
- Modal
- WebView
- Accordion
- Sidebar
- Breadcrumb
- Badge
Showcase
Here is the first application: Longbridge that is built by using GPUI Component.
It still under development, not published yet.
We build multi-themes support in application, this feature is not including in GPUI Component. It is based on Theme feature, so it easy to do.
Usage
GPUI and GPUI Component still in development, so we need add dependency by git.
And GPUI Component depends on gpui by special version (It keep updated to upstream) for including WebView support.
gpui = { git = "https://github.com/huacnlee/zed.git", branch = "export-platform-window" }
ui = { git = "https://github.com/longbridge/gpui-component.git" }
Demo
If you want to see the demo, here is a some demo applications.
- gpui-app-windows.zip - Updated at 2024/10/16
Development
cargo run
More examples can be found in examples directory.
Checkout DEVELOPMENT to see more details.
License
Apache-2.0