Commit Graph

36 Commits

Author SHA1 Message Date
Evan Simkowitz
4070abadde
Squash some leftover bugs (#1495)
Only create new tab in `CheckAndFixWindow` if no tabs or pinned tabs
exist

Update `resolvers.resolveTabNum` to account for pinned tabs

Remove obsolete and unused `wstore.DeleteTab`

Only show accelerators for first 9 workspaces in workspace app menu to
be consistent with other keybindings

Fix tabbar spacing to remove min size for drag right spacer, account for
workspace switcher button size

Fix updatebanner size calculations
2024-12-11 12:52:15 -08:00
Mike Sawka
878a7285ab
implement tab:preset, and increase active tab opacity (#1439) 2024-12-09 14:48:16 -08:00
Evan Simkowitz
90e31dfa48
Delete a tab when it's out of blocks, cascade to window (#1374)
Updates `DeleteBlock` to close its parent tab if the tab has no more
blocks. This will also cascade to close the workspace if it no longer
has any tabs, same for window.

I had to move some block-related functionality around on the backend.
2024-12-03 09:38:46 -08:00
Evan Simkowitz
82f53dc1fb
Workspaces are back! (#1282) 2024-12-02 10:56:56 -08:00
Mike Sawka
701d93884d
vdom 4 (#1110) 2024-10-23 22:47:29 -07:00
Mike Sawka
8ad84fd78a
update all gopkg imports (#330) 2024-09-05 14:25:45 -07:00
Mike Sawka
8630e23239
new config system (#283) 2024-08-27 18:49:49 -07:00
Mike Sawka
f28bdccb5d
move CreateX functions to wcore (#275) 2024-08-26 15:17:37 -07:00
Evan Simkowitz
164afeeb66
Unified node model to pass data from layout to blocks (#259)
This adds a new NodeModel, which can be passed from the TileLayout to
contained blocks. It contains all the layout data that the block should
care about, including focus status, whether a drag operation is
underway, whether the node is magnified, etc.

This also adds a focus stack for the layout, which will let the focus
switch to the last-focused node when the currently-focused one is
closed.

This also addresses a regression in the resize handles that caused them
to be offset from the cursor when dragged.

---------

Co-authored-by: sawka <mike.sawka@gmail.com>
2024-08-26 11:56:00 -07:00
Mike Sawka
037497e7f1
wsh edit working (#252) 2024-08-20 14:56:48 -07:00
Evan Simkowitz
e85b0d205e
New layout model (#210)
This PR is a large refactoring of the layout code to move as much of the
layout state logic as possible into a unified model class, with atoms
and derived atoms to notify the display logic of changes. It also fixes
some latent bugs in the node resize code, significantly speeds up
response times for resizing and dragging, and sets us up to fully
replace the React-DnD library in the future.
2024-08-14 18:40:41 -07:00
sawka
fc7c640e6b remove topicbus (moved to wps). also have CreateWindow call CreateTab 2024-08-08 14:51:40 -07:00
sawka
49a365e10b remove video, make initial window larger to fill the screen 2024-08-01 00:52:15 -07:00
Mike Sawka
cfc875bc21
metadata updates (frontend typing) (#174) 2024-07-30 12:33:28 -07:00
Red J Adaya
9233b3dbd7
modals component and model and TOS modal (#164)
Co-authored-by: Sylvia Crowe <software@oneirocosm.com>
Co-authored-by: sawka <mike.sawka@gmail.com>
2024-07-30 11:44:19 -07:00
Mike Sawka
7b93354657
initial implementation of move block to window (#77) 2024-06-25 14:56:37 -07:00
Red J Adaya
9cc5d9d3ae
Add ability to edit tab name (#67) 2024-06-21 10:23:04 -07:00
Mike Sawka
fb668fd4e5
multi-window support (#62) 2024-06-19 19:10:53 -07:00
Red J Adaya
b6c85e38f6
DnD tabs (#44) 2024-06-17 21:50:33 -07:00
Mike Sawka
1874d9a252
port to electron (#33) 2024-06-11 17:42:10 -07:00
Evan Simkowitz
f12e246c15
Break layout node into its own Wave Object (#21)
I am updating the layout node setup to write to its own wave object. 

The existing setup requires me to plumb the layout updates through every
time the tab gets updated, which produces a lot of annoying and
unintuitive design patterns. With this new setup, the tab object doesn't
get written to when the layout changes, only the layout object will get
written to. This prevents collisions when both the tab object and the
layout node object are getting updated, such as when a new block is
added or deleted.
2024-06-05 17:21:40 -07:00
Evan Simkowitz
c3e71c5c7d
Integrate Faraday layout system (#16)
Co-authored-by: Mike Sawka <sawka@users.noreply.github.com>
Co-authored-by: sawka <mike.sawka@gmail.com>
2024-06-04 13:05:44 -07:00
sawka
609f2ec85c the useWaveObject() setter now writes back to the DB. make metadata setting generic 2024-05-28 15:41:03 -07:00
sawka
5edb882955 add an updatemetadata call to objectservice 2024-05-28 12:18:26 -07:00
sawka
3f45945cb4 delete block and close tab working 2024-05-27 16:33:31 -07:00
sawka
e6d7a4e674 app is working again. new structure for blocks. new useWaveObjectValueWithSuspense hook 2024-05-27 15:44:57 -07:00
sawka
abedca2364 setactivetab working, removed tombstones, created updatetype 2024-05-27 14:31:12 -07:00
sawka
b87786febf checkpoint -- generic updates, wave object store, new setup for initialization, atoms, etc. lots of progress 2024-05-27 13:59:58 -07:00
sawka
6d3f76cb74 fe now rendering workspace/tab from db. got useWaveObject working. need to work on updates 2024-05-27 00:47:10 -07:00
sawka
95ce1cc86d checkpoint on new objectservice 2024-05-26 23:05:11 -07:00
sawka
b1aaba2a37 moving hard to OID model 2024-05-26 11:59:14 -07:00
sawka
4ba78a1804 working on waveobj -- oids 2024-05-25 18:37:05 -06:00
sawka
134ba3c34c checkpoint on integratng wstore. moved to wails data structures, got immer working again, Window object, transitioned to generic DB ops, lots more 2024-05-24 15:08:24 -06:00
sawka
2317ce87f3 checkpoint 2024-05-21 21:15:11 -07:00
sawka
901334eb49 new wails bindings format working 2024-05-21 11:09:22 -07:00
sawka
f3383d1847 new wstore package, move core types to there. create a syncmap 2024-05-20 15:57:15 -07:00