Commit Graph

132 Commits

Author SHA1 Message Date
Evan Simkowitz
4e60880b8f
Clean up spacing and padding of elements in the block header (#318)
This frees up some more space for content that was previously being
eaten up by unnecessary gaps and padding. It also centers some
off-center icons.
2024-09-03 23:14:22 -07:00
Evan Simkowitz
383a71fc25
Fix infinite loop in layoutAtom, improve iconbutton disable code (#306)
Fixes an infinite loop in the layoutModel atom synchronization that
would cause the atom to update indefinitely when the root node is
deleted.

Also adds a dedicated `disabled` flag for the IconButton decl so we can
disable the onClick handler when the button is disabled.

Also updates the Magnify toggle button to use this new flag, so that
when there's only one leaf in a layout, the magnify button is disabed.
2024-09-03 11:24:45 -07:00
sawka
9d344b899d fix issues with layouteffects in block 2024-09-03 10:24:00 -07:00
sawka
c94ff3495b fix terminal paste handler -- use paste fn, unify key handlers. add extra if stmts to focusNode calls in block 2024-09-03 00:02:03 -07:00
Mike Sawka
e3b7ab73c0
preview refactor for keyboard/focus (#303) 2024-09-02 16:48:10 -07:00
Sylvie Crowe
226bc4ee6f
Connect With Non-Terminal Widgets (#304)
- Adds connection buttons for previews
- Makes it possible for graphs and previews to connect on backend
(without a terminal open to connection)
- Changes the wsh install message
2024-09-02 12:34:49 -07:00
Red J Adaya
63cfe1d279
preview edit (#302) 2024-08-31 11:57:45 -07:00
sawka
1975b9b1db connstatus icon 2024-08-30 14:36:16 -07:00
sawka
8aa4025907 add restart controller to context menu 2024-08-30 14:01:53 -07:00
sawka
74f551b212 connstatus fix, update connection icons appropriately for status 2024-08-30 13:56:53 -07:00
Mike Sawka
53d3ad04b7
focus/key handling for directory preview (#291) 2024-08-29 17:00:24 -07:00
Mike Sawka
a104a6e446
new focus system part 1 (#290) 2024-08-29 16:06:15 -07:00
Evan Simkowitz
637eaa4206
Use webview's built-in history for navigation (#232) 2024-08-29 13:37:05 -07:00
Red J Adaya
c440fb774e
suggestions UI (#286) 2024-08-28 23:47:45 -07:00
Evan Simkowitz
56a930c1dc
Make disabled iconbuttons more distinct (#289)
Increases the idle opacity for enabled buttons in the header slightly
and decreases opacity for disabled buttons. Also sets a default cursor
when the button is disabled:

Forward button enabled and idle, back button disabled:

![image](https://github.com/user-attachments/assets/b2f4dfc3-2fe8-46e0-9eac-edfebf42dfdd)
Forward button enabled and hovered, back button disabled:

![image](https://github.com/user-attachments/assets/34b4f89d-ba6a-4b57-8533-527ef1bc9868)
2024-08-28 18:30:41 -07:00
Mike Sawka
8630e23239
new config system (#283) 2024-08-27 18:49:49 -07:00
Evan Simkowitz
c892c39a73
Fix block content sizing (#280)
Make the block content sizing update once when its node moves or becomes
magnified. By manually updating this inner sizing rather than letting
the block flow in the DOM, the animations of the block frames are much
smoother.

This also fixes an issue where two scrollbars were being rendered for
the Directory Preview widget.

This also sets zero padding on nodes when there's only a single node
being rendered.
2024-08-27 13:41:36 -07:00
sawka
c2d2ad9136 separate cmd+o from switch connection (disconnect typeaaheadatom), and allow width to 95% 2024-08-26 21:03:12 -07:00
sawka
fd7fa9f6f1 useatomvaluesafe 2024-08-26 16:56:37 -07:00
sawka
19ebfa0361 fix local icon for term connections 2024-08-26 16:54:39 -07:00
Mike Sawka
c2fe3b18e1
move connection switching to blockheader (#276) 2024-08-26 16:19:03 -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
62d9d53e52
fix terminal paste (inverted colors) (#271) 2024-08-23 22:12:27 -07:00
Sylvie Crowe
636d71e652
Change Connection UI (#269)
This allows the user to select different connections from the terminal
block. Some features include:
- a status bar at the top of the term block that shows your current
connection
- an icon next to the status bar that shows whether the connection is
currently connected
- the ability to click the status bar and type in a new connection in
order to change the current connection

---------

Co-authored-by: sawka <mike.sawka@gmail.com>
2024-08-23 18:12:40 -07:00
Red J Adaya
c1684d28d1
suggestions modal (#260) 2024-08-23 00:18:49 -07:00
sawka
43138f754c fix double model creation 2024-08-22 16:25:53 -07:00
Evan Simkowitz
d5140129cd
Fix block numbering and switching with arrow keys (#258) 2024-08-21 17:43:11 -07:00
Mike Sawka
dedfc31344
implement Cmd-I and restructure block viewmodels (#257) 2024-08-21 15:49:23 -07:00
sawka
9a06b43266 implement a viewmodel keydown handler 2024-08-19 18:41:47 -07:00
Evan Simkowitz
65e8d4e3fd
Remove double-click on block header to magnify (#233)
Now that we have the magnify button on the block, we don't need the
double-click to magnify.
2024-08-15 17:49:34 -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
Red J Adaya
688ed8a870
Fix number overlay hotkeys conflict with screenshot in macos (#222) 2024-08-14 14:38:02 -07:00
Evan Simkowitz
a01d735db3
Remove unnecessary icon styling for block, update header flex 2024-08-06 14:20:19 -07:00
Evan Simkowitz
e29cb2debe
Make magnify icon always visible, transition from magnify to minimize (#197)
I'm updating the magnify button to be always visible and animate a
transition between being a "Magnify" button and a "Minimize" button.

This also cleans up some text shrinking behavior in the block frame
header so the end icons are always visible.

Also fixes some height discrepancies in the block frame header.

Also implements a `prefers-reduced-motion` query for the tilelayout and
block frame to ensure transitions are not set if the user does not want
them.
2024-08-05 16:13:26 -07:00
Evan Simkowitz
5143aefd3c
Simplify blockframe header styling (#199)
This cleans up styling for the BlockFrame header, which had a lot of redundant and unnecessary declarations, which produced inconsistent styling.
2024-08-05 14:54:33 -07:00
sawka
694311c6dc allow pointer events (to eventually allow blocknum/id copying on click) 2024-08-02 16:54:57 -07:00
sawka
9f8042fb87 new keybindings for switching tabs/blocks 2024-08-02 16:50:11 -07:00
sawka
4f74b232e2 trap Shift:Cmd, and enable special blockmask action to show block indexes 2024-08-02 15:39:22 -07:00
sawka
6f2c99a5cf more refactoring of block header. isolate atom dependencies more 2024-08-01 16:01:11 -07:00
sawka
f13115113d more refactoring (block header) 2024-08-01 15:51:38 -07:00
sawka
94d6c14011 reorganize block view more 2024-08-01 15:35:13 -07:00
sawka
c8cc1de2d4 add 'dev' label to application. also add 'un-magnify' icon when magnified 2024-08-01 13:46:06 -07:00
sawka
9f98d03add rearrange view files into directories 2024-08-01 13:06:18 -07:00
sawka
4b30c8bc3b move preview into own directory 2024-08-01 12:53:49 -07:00
Sylvie Crowe
7098c8b3ea
fix: don't allow the block title to grow (#192) 2024-08-01 01:29:47 -07:00
Sylvie Crowe
c5707de2fd
Fixes For the Demo (#190) 2024-07-31 23:50:38 -07:00
Sylvie Crowe
fc8c1104f4
Create a Help Block (#188)
Adds a block to explain how to use the app.
2024-07-31 22:22:52 -07:00
sawka
07843ab281 remove minimize 2024-07-31 21:41:28 -07:00
sawka
933c5d66e9 Cmd-m magnify block 2024-07-31 19:59:21 -07:00
Sylvie Crowe
efd1e3c189
CPU Plot (#185)
Adds a CPU % Plotting Widget
2024-07-31 14:13:36 -07:00