Commit Graph

105 Commits

Author SHA1 Message Date
Andrew Kingston 41cf7ddfb2 Use the new DOM ID method of determining the correct DOM node for a component 2022-11-23 12:32:40 +00:00
Andrew Kingston cac780eb50 Merge branch 'develop' of github.com:Budibase/budibase into side-panel 2022-11-22 16:52:09 +00:00
Dean 2a990189f0 Ensure the navigation does not show the settings bar 2022-11-17 14:40:16 +00:00
Dean 312bc96770 Don't show delete or duplicate actions in the component settings bar 2022-11-17 14:10:55 +00:00
Dean 2a7b90e46f Component settings bar now on by default. Manifest config cleared of showSettingsBar properties 2022-11-17 11:08:23 +00:00
Andrew Kingston 09360cea55 Add initial version of side panel component 2022-10-27 08:08:35 +01:00
Andrew Kingston 702d1ad406 Improve comments and namimg conventions 2022-10-24 13:32:48 +01:00
Andrew Kingston be10c64984 Fix selection indicator appearing while dragging 2022-10-24 13:24:19 +01:00
Andrew Kingston 4fffa82573 Make grid rows and columns configurable and simplify grid style application 2022-10-24 12:05:59 +01:00
Andrew Kingston c6b7b1a2d4 Tidy up 2022-10-24 09:43:45 +01:00
Andrew Kingston ce532cc403 Improve client grid DND event handling 2022-10-24 09:38:07 +01:00
Andrew Kingston 8d644c5a10 Refactor app preview event sending to support async callbacks in client library 2022-10-24 09:02:50 +01:00
Andrew Kingston 986141b8b1 Fix flashing settings bar in stale position 2022-10-21 17:51:35 +01:00
Andrew Kingston ca8fe0e9fd Fix stale hover indiciator 2022-10-21 17:51:25 +01:00
Andrew Kingston 9d10e938a4 Make DND feel much smoother by persisting the end position of drops, and more performance by properly memoizing some state values 2022-10-21 16:54:34 +01:00
Andrew Kingston fb84674e24 Add proper validation for nesting illegal combinations of components 2022-10-20 16:03:53 +01:00
Andrew Kingston 1508a5dc3b Update how grid DND styles are applied to remove flashing 2022-10-20 08:43:33 +01:00
Andrew Kingston 0c2e286ca7 Use a container as the DND placeholder and use approx size when dragging into grids 2022-10-19 14:39:28 +01:00
Andrew Kingston 803b11d65f Fix resizing not working inside grids 2022-10-19 13:16:42 +01:00
Andrew Kingston 4e17942a1d Allow normal DND in and out of grid children 2022-10-18 18:49:24 +01:00
Andrew Kingston 465d10a8be Allow grid DND without selecting components 2022-10-18 18:29:21 +01:00
Andrew Kingston 0e63a403bc Add grid functionality separately to DND 2022-10-18 16:18:22 +01:00
Andrew Kingston c21a7b3e89 Merge branch 'dnd-improvements' of github.com:Budibase/budibase into cheeks-lab-day-grid 2022-10-18 08:12:11 +01:00
Andrew Kingston 554b219d62 Use requestAnimationFrame for DND overlay placeholder updates to further improve performance 2022-10-17 08:48:32 +01:00
Andrew Kingston 011ba26769 Fix DND not working in field groups and any other component where children are not rendered inside the first DOM node 2022-10-14 19:34:23 +01:00
Andrew Kingston 5f7e0cb895 Prevent showing placeholder dot when placeholder is invisible 2022-10-14 19:04:05 +01:00
Andrew Kingston 78a5f9c891 Fix issues dropping components from new component panel 2022-10-14 18:24:47 +01:00
Andrew Kingston d02fb96e6e Invert some client store dependencies to improve performance and prevent dependency cycles 2022-10-14 18:16:19 +01:00
Andrew Kingston 23eb09ab6a Don't reset component padded state for DND until dragging stops, to prevent jankiness due to losing space 2022-10-14 15:45:02 +01:00
Andrew Kingston d997afffc0 Add ability to drag new components into the preview 2022-10-14 13:37:14 +01:00
Andrew Kingston b5d50a71d7 Improve DND experience, use correct size of drop placeholder and don't drop if the position is unchanged 2022-10-11 16:02:09 +01:00
Andrew Kingston f2d1730139 Improve column/row detection by appending an ephemeral child component and tune timings 2022-10-11 08:52:45 +01:00
Andrew Kingston 0dd245c21c Remove dragged component from consideration of drop target 2022-10-10 14:00:37 +01:00
Andrew Kingston 90172ec2a1 Fully remove source component from client tree while dragging 2022-10-10 09:51:13 +01:00
Andrew Kingston c5b36863d2 Make DND work again by converting new parent+index params into old target+mode 2022-10-10 09:36:17 +01:00
Andrew Kingston 6cf3a0af5b Tune DND throttle rate 2022-10-10 09:22:47 +01:00
Andrew Kingston cf0891c911 Rename DND state variables for clarity 2022-10-08 15:28:22 +01:00
Andrew Kingston 6f73ecdc4c Fix row/column detection, add comments and remove old code 2022-10-08 15:18:05 +01:00
Andrew Kingston e9dfc9ad9f Throttle updates to prevent all jank and revert to component center breakboints for DND candidates 2022-10-08 15:04:18 +01:00
Andrew Kingston ab4eebc0cf Reduce jank by computing symmetrical component breakpoint whens considering DND candidate positions and ignoring the hidden selected component 2022-10-07 20:00:25 +01:00
Andrew Kingston cb6a13fafd Fix issue with layout determination 2022-10-07 12:45:22 +01:00
Andrew Kingston fd3662e6b2 Improve row vs column detection to fix any edge cases 2022-10-07 08:46:38 +01:00
Andrew Kingston 4322345aca Rewrite drag and drop from scratch using mouse position heuristics 2022-10-07 08:05:44 +01:00
Andrew Kingston 428b786184 Don't clear drop target on invalid selection 2022-10-06 09:17:26 +01:00
Andrew Kingston c2efdd059e Don't clear grid dnd state when loading client library 2022-08-26 14:47:29 +01:00
Andrew Kingston 16c9c6c0dc Add initial work on grid layout 2022-08-26 08:47:50 +01:00
Andrew Kingston 7b7075b276 Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-keyboard-shortcuts-develop 2022-08-01 19:08:30 +01:00
Andrew Kingston 5737e23dd6 Add keybindings to component context menu. Add duplicate keybinding. Simplify pasting 2022-07-29 13:33:04 +01:00
Andrew Kingston d15d034af3 Add keyboard shortcuts for components. Improve component reordering 2022-07-29 13:33:02 +01:00
Andrew Kingston 1c65e2b63a Fix issue showing selected component indicators on initial load sometimes due to null reference 2022-07-27 12:55:20 +01:00