Commit Graph
23 Commits
Author SHA1 Message Date
Evan Simkowitz b796ec9729 reorganize 2024-09-04 23:44:23 -07:00
Evan Simkowitz 4e49549cac fix padding during magnified 2024-09-04 23:43:26 -07:00
Evan SimkowitzandGitHub 74c8044c73 Add gap size setting (#325)
Adds a new setting for the gap size between tiles in a layout. Also
updates the resize handle calculations so they are dynamically generated
based on the gap size. Also updates the styling for the resize handles
to be more robust.

This also updates the default gap size to 3px.

This also slims out the Block Frame padding so it is just enough that
the blocks don't overlap when there's no gap.
2024-09-04 22:07:47 -07:00
Evan Simkowitz 825801d98e add back border radius 2024-09-04 15:37:16 -07:00
Evan Simkowitz e0e4256739 remove border radius when tile is not magnified 2024-09-04 15:34:53 -07:00
Evan Simkowitz 0623218373 make border radius conditional in tilelayout 2024-09-04 15:34:13 -07:00
Evan Simkowitz 9cf87723dc fix tile node border radius 2024-09-04 15:32:45 -07:00
Evan Simkowitz cb664cff41 ignore prefers-reduced-motion for resize handle line delay 2024-08-30 12:52:02 -07:00
Evan Simkowitz 86d6c5cd60 set prefers-reduced-motion as a global override 2024-08-30 12:48:06 -07:00
Evan Simkowitz 3f4026a6b7 fix resize handle transition timing 2024-08-30 12:45:12 -07:00
Evan SimkowitzandGitHub e9b78c354f Resize handle improvements (#299)
Adds a delay to the resize handle line first showing so it doesn't flicker when the mouse briefly passes over it. Also removes an unnecessary findNode call that was happening on every move. Also adjusts the pointer offset based on the display container bounding rect.
2024-08-30 12:31:03 -07:00
Evan Simkowitz 59979b13e7 use linear timing function for layout transitions 2024-08-28 14:25:47 -07:00
Evan SimkowitzandGitHub 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
Evan SimkowitzandGitHub c187059c8f Fix flicker when dragging a node through a node gap (#231)
This simplifies the rect calculations by making the gap between pixels
into a padding applied directly to the leaf nodes. This means the gaps
won't be present in the overlay layer, so when dragging a node around it
is always over an OverlayNode and the pendingAction won't be unset.

Also simplifies onDrop handling
2024-08-15 14:53:13 -07:00
Evan SimkowitzandGitHub fc7bb7eaca Clean up and document the layout model code (#229) 2024-08-15 12:24:06 -07:00
Evan SimkowitzandGitHub b5c6c1a937 Create reduced motIon setting (#226)
Adds a new setting that emulates the prefers-reduced-motion media query, allowing users to disable Wave animations without affecting other apps on their system. It also honors the prefers-reduced-motion query in case a system-level configuration is present.
2024-08-14 21:47:09 -07:00
Evan SimkowitzandGitHub 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
Evan SimkowitzandGitHub 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 SimkowitzandGitHub c91cae9463 Fix some more improper border radii (#184) 2024-07-31 13:37:20 -07:00
Evan Simkowitz 5a6be9bc43 Fix resize ns margin 2024-07-30 16:05:30 -04:00
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
Evan SimkowitzandGitHub f3f272a47b Add action for magnifying a block (#172)
Adds the implementation for the "Magnify Block" context menu item. This
will pop a block out of the layout and bring it to the foreground.

This also cleans up some block styling to make radii more consistent.

<img width="814" alt="image"
src="https://github.com/user-attachments/assets/c81521e1-c91f-4bb5-9eec-ff0eda178268">
2024-07-30 10:59:53 -07:00
Evan SimkowitzandGitHub 9fb2e58b54 rename faraday to layout (#147) 2024-07-23 13:50:23 -07:00