Commit graph

60 commits

Author SHA1 Message Date
Jason Lee
3601cb399b
table: Use deferred to render scrollbar to avoid some element overflow it. (#513) 2024-12-24 11:40:50 +08:00
Jason Lee
d051ac6a8c
table: Update last empty column to 20px width. (#511) 2024-12-23 19:36:58 +08:00
Jason Lee
11dbdb125a
chore: Removed ScrollableAxis use Axis instead. (#509) 2024-12-23 15:30:36 +08:00
Jason Lee
4f7ca4bb9a
virtual_list: Add VirtualList (#495)
Vistual List for render a large number of differently sized
rows/columns.

> NOTE: This must ensure each column width or row height.

Unlike the `uniform_list`, the each item can have different size. This
is useful for more complex layout, for example, a table with different
row height.
2024-12-18 16:38:58 +08:00
Jason Lee
28c072d9c6
table: Fix incorrect column offset when have fixed columns. (#490) 2024-12-12 17:40:25 +08:00
Jason Lee
8558da4a7b
table: Improve Table to only render visible range columns for performance up to stable on 120 FPS (#489)
This change to make Table to only render visible range columns.

With the example table story case:

- 32 columns

## Before

- Normally fast scroll: 80~90 FPS
- Drag fast scroll: 60 FPS

## After

- Normally fast scroll: 120 FPS
- Drag fast scroll: 90~100 FPS

![CleanShot 2024-12-12 at 16 57
54](https://github.com/user-attachments/assets/1553d109-442c-4633-92f2-d3a9724668f3)
2024-12-12 17:09:26 +08:00
ihavecoke
39ec84b989
table: Add a theme color to fixed the drag column in dark mode text style (#476) 2024-12-09 20:00:48 +08:00
ihavecoke
bf0e3a22de
table: Emit MoveCol when moved column. (#473) 2024-12-09 15:21:37 +08:00
Ylin
ee38970d68 table: Make selected_{row,col} public (#456) 2024-12-03 16:21:36 +08:00
Ylin
dd1b767b8a
table: Make set_selected_row, set_selected_col public (#455)
Co-authored-by: Jason Lee <huacnlee@gmail.com>
2024-12-03 12:00:15 +08:00
Ylin
09455df61c
table: Fix disabled sort field change to default (#451)
Co-authored-by: linxin <xin.lin@longbridge-inc.com>
2024-12-02 11:28:16 +08:00
Jason Lee
e6012fcc8f
table: Improve table render performance. (#421)
Before: ~85 - 100FPS
After:  ~110 - 115FPS
2024-11-18 14:43:22 +08:00
Jason Lee
fa6abe5a9e
chore: Upgrade GPUI and fix API changes. (#426)
Refs:

- https://github.com/zed-industries/zed/pull/20349
- https://github.com/zed-industries/zed/pull/20371
- https://github.com/zed-industries/zed/pull/20686
2024-11-18 11:35:49 +08:00
Ylin
d4ee273bf5
table: Add render_last_empty_col to table delegate (#399)
Co-authored-by: linxin <xin.lin@longbridge-inc.com>
2024-11-07 17:53:21 +08:00
Floyd Wang
852c38f42c table: Remove the unnecessary left margin from the icon 2024-11-05 11:08:21 +08:00
Floyd Wang
1c5d63edb1
table: Remove unnecessary actions that stop bubbling to ensure focused (#392) 2024-11-04 17:22:01 +08:00
Jason Lee
fe6566ce2f
table: Export scroll handles. (#371) 2024-10-30 14:25:38 +08:00
Floyd Wang
db041fea88
table: Add default option to perform_sort (#379) 2024-10-24 18:15:12 +08:00
Jason Lee
274b9edc32 table: Fix selected row top, bottom border detail. 2024-10-18 14:13:15 +08:00
Jason Lee
a4260c109f
table, list: Avoid use deferred to show selected row style. (#363)
<img width="956" alt="image"
src="https://github.com/user-attachments/assets/0f72b556-76bc-4808-bca8-c261411656d1">
2024-10-18 13:27:59 +08:00
Jason Lee
4bef681c9a
table, list: Add right clicked row style and improve selection style. (#362)
- table: Add `content_menu` to TableDelegate.

<img width="644" alt="image"
src="https://github.com/user-attachments/assets/4c21299f-00e8-4a61-964d-338ef7daa802">
2024-10-18 11:52:14 +08:00
julien-leclercq
536bb60900
table: Add cx argument to TableDelegate methods. (#360)
As discussed in #359 adds a `AppContext` argument to the
`table::TableDelegate::rows_count` method

---------

Co-authored-by: Julien Leclercq <julien-leclercq@users.noreply.github.com>
Co-authored-by: Jason Lee <huacnlee@gmail.com>
2024-10-18 10:03:32 +08:00
Floyd Wang
9b8240c6bc
table: Improve render_tr to bind the context_menu (#347)
<img width="559" alt="image"
src="https://github.com/user-attachments/assets/2aecfa35-5ee1-45cb-a3f3-2409bd09efd7">
2024-10-15 21:35:17 +08:00
Jason Lee
2198134832
Add col_padding to Table delegate to control the column padding. (#326)
<img width="775" alt="image"
src="https://github.com/user-attachments/assets/a7189c06-9945-4508-86fb-e71fd819cc41">
2024-10-10 13:58:49 +08:00
Jason Lee
007288487e
table: Fix horzizontal scrollbar size when there have fixed cols. (#317) 2024-10-07 21:47:26 +08:00
Jason Lee
3df75566b3
table: Fix to render table vertical scrollbar under the head. (#311)
Closes #308, #305 

<img width="819" alt="image"
src="https://github.com/user-attachments/assets/e22d7ae7-2dfd-4357-be0e-3b94434b1020">
2024-10-04 14:35:36 +08:00
Jason Lee
185eca6c67
scrollbar: Update GPUI and fix scrollbar with new API. (#307)
The https://github.com/zed-industries/zed/pull/18513 has been changed
the `UniformListScrollHandle` API, it provided the scroll contents size,
so we not need calculate it again.
2024-10-04 10:23:11 +08:00
Jason Lee
19bb5eee3a
Fix clippy warnings and fix CI to fail when have warnings. (#301) 2024-10-03 10:46:02 +08:00
Jason Lee
ce10a0340c
table: Set fixed height to table head to fix some case table head disappear bug. (#300)
Closes #299 

- Improved sort icon to better color.
- Improved table story.
- Disable `horizontal_scroll_handle.scroll_to_item` on select_col, there
have a bug need to fix.
2024-10-03 10:14:44 +08:00
Jason Lee
fecb2170a8
table: Fix table sort icon display. (#296)
- Update first sort behaviour to `descending`.
2024-10-02 22:31:38 +08:00
Jason Lee
13e42dfac3
table: Add to support fixed column on left to Table. (#295)
- Update table details, fix table head height.
- Add `table_row_border` theme color and use this for row border.

## Demo

https://github.com/user-attachments/assets/91df4b9d-f079-4ddb-b14d-fbcf303dcc44

Fix #292
2024-10-02 22:02:21 +08:00
ihavecoke
b9e7217662
table: Add refresh method to Table, for reload table use when the columns or rows has been updated. (#293) 2024-10-02 17:29:50 +08:00
Jason Lee
69e94cce1c
table: Add size to Table to support Large, Medium(default), Small, XSmall. (#283)
Closes #219
2024-09-27 14:45:52 +08:00
Jason Lee
76be7a8ed8
table: Add horizontal scrollbar to Table. (#278) 2024-09-27 13:48:46 +08:00
xda
1e44b5659f
table: Render table stripe on background even there is no enough rows (#256)
<img width="1202" alt="image"
src="https://github.com/user-attachments/assets/57a744c3-673a-4118-ba97-03837b0b9390">

- And add `flex_shrink_0` to table head.

Fix https://github.com/huacnlee/gpui-component/issues/160

---------

Co-authored-by: Jason Lee <huacnlee@gmail.com>
2024-09-24 22:07:27 +08:00
xda
89414e1c3c
table: Toggle stripe and number of rows in Table Story (#259)
![2024-09-23 12 55
56](https://github.com/user-attachments/assets/58bae51f-135e-487b-a841-798b8e951fdb)
2024-09-23 11:58:16 +08:00
Jason Lee
2c469da55a
Update GPUI and apply opacity feature. (#215) 2024-09-04 19:29:51 +08:00
ihavecoke
fd2f5e46f2
Securely handle table load more subtract logic to prevent attempt to subtract with overflow panic (#189) 2024-08-29 23:29:26 +08:00
Jason Lee
237b0f6956
table: Add load_more delegate method and called when scrolled near the bottom. (#183)
https://github.com/user-attachments/assets/03001a21-6a3d-4c06-a00c-9dea8208e357
2024-08-28 15:12:42 +08:00
Jason Lee
4490618c4a
Update table to support to support toggle col selection. (#159)
- Add `border` method to enable/disable border, default: `true`.
- Update `stripe` default to false.
- Update theme to remove table head color, just use window bg like.

<img width="1263" alt="image"
src="https://github.com/user-attachments/assets/2e0994a9-7172-4812-a0e2-3b3ba4281112">

Closes #155
2024-08-16 14:34:53 +08:00
Floyd Wang
1da82c5453
Do not show the scrollbar when table is empty (#143) 2024-08-14 11:13:42 +08:00
Floyd Wang
ccad5cd98e
TableDelegate support render_empty (#142) 2024-08-14 11:01:57 +08:00
Jason Lee
63f333d8ad
Add Drawer (#137)
- Update scrollable to accept EntityId.

https://github.com/user-attachments/assets/a6c02890-3a6e-4b82-b5c5-3f0a48f35368
2024-08-13 16:01:52 +08:00
Jason Lee
7d309acd2f
Improve Table head to not show selected bg and remove drag border color. (#134)
https://github.com/user-attachments/assets/0836014d-9240-4e77-9daf-dd1ef8d81cd5
2024-08-11 21:25:41 +08:00
Jason Lee
bb6d8d8f60
Cleanup first version impls (#132) 2024-08-11 14:46:55 +08:00
Floyd Wang
e784f98a38
TableDelegate methods return ViewContext<Table<Self>> (#101) 2024-08-02 16:38:48 +08:00
Floyd Wang
c91f71ae21
Table support render_tr and stripe methods (#94) 2024-08-01 10:17:21 +08:00
Floyd Wang
35c3b13bdd Fix typo in table 2024-07-31 15:34:36 +08:00
Jason Lee
8aaeb9383d
Fix dropdown click to lose focus. (#80) 2024-07-29 19:00:17 +08:00
Jason Lee
a3df086e79
theme: Fix list, table theme colors. (#79)
- Fix list, table theme colors.
- Fix table hover bg.
- Add avatar to table list.
- Update dropdown Size:Small style.
2024-07-29 13:52:45 +08:00