Commit Graph

167 Commits

Author SHA1 Message Date
Andrew Kingston c2b32f8c5e 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 09f2cc1f72 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 5beb6819ec Fix issue with layout determination 2022-10-07 12:45:22 +01:00
Andrew Kingston d4a767f93e Improve row vs column detection to fix any edge cases 2022-10-07 08:46:38 +01:00
Andrew Kingston bb8388133a Rewrite drag and drop from scratch using mouse position heuristics 2022-10-07 08:05:44 +01:00
Andrew Kingston 9c82a9d073 Don't clear drop target on invalid selection 2022-10-06 09:17:26 +01:00
Andrew Kingston 166064f6df Don't clear grid dnd state when loading client library 2022-08-26 14:47:29 +01:00
Andrew Kingston b839325a86 Add initial work on grid layout 2022-08-26 08:47:50 +01:00
Andrew Kingston 98864c9614 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 a9a4b6ee44 Add keybindings to component context menu. Add duplicate keybinding. Simplify pasting 2022-07-29 13:33:04 +01:00
Andrew Kingston a4847a471c Add keyboard shortcuts for components. Improve component reordering 2022-07-29 13:33:02 +01:00
Andrew Kingston b76000f828 Fix issue showing selected component indicators on initial load sometimes due to null reference 2022-07-27 12:55:20 +01:00
Andrew Kingston c9ee465507 Replace incorrect usages of element.childNodes with element.children 2022-07-15 13:47:39 +01:00
Andrew Kingston 7940d4997a Lint 2022-06-07 15:19:51 +01:00
Andrew Kingston fd532a88d5 Improve performance when determining client component icons and update layout to allow for a better visual selection of the navigation section 2022-05-23 12:22:42 +01:00
Andrew Kingston 2ff85212eb Slightly update sizes and styles of indicators and navigation to look better 2022-05-19 21:16:26 +01:00
Andrew Kingston 0484a8a976 Allow indicator to be shown for hovering and selecting navigation section, including title and icon 2022-05-19 21:03:20 +01:00
Andrew Kingston 27788626ec Remove some log statements 2022-05-19 09:17:09 +01:00
Andrew Kingston 3c8558e1a0 Update preview indicator offsets 2022-05-17 14:34:54 +01:00
Andrew Kingston 8cdbb690eb Add icons to app preview selection indicators 2022-05-17 14:33:12 +01:00
Andrew Kingston cc08c263c8 Fix duplicate component action in settings bar 2022-05-05 08:57:49 +01:00
Andrew Kingston f6eef900ad Merge pull request #5272 from Budibase/cheeks-lab-day-devtools
DevTools
2022-04-14 12:57:01 +01:00
Mel O'Hagan bf4b2f65d8 Only apply to small components (button, headline) 2022-04-13 15:53:26 +01:00
Mel O'Hagan eb4206cc55 Move settings bar below element if at very top 2022-04-06 17:31:59 +01:00
Andrew Kingston 923973f1ab Account for builder preview 2px offset when rendering indicator sets so that indicators are accurate for devtools 2022-04-06 14:32:25 +01:00
Andrew Kingston c2d61d8ebc Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools 2022-04-06 11:50:43 +01:00
Andrew Kingston e84e4f9899 Add duplicate action to settings bar 2022-03-07 14:05:26 +00:00
Andrew Kingston 66715b8290 Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools 2022-02-24 14:03:29 +00:00
Andrew Kingston 86e0e8acc2 Fix DND throwing errors due to browser API updates 2022-01-20 11:52:29 +00:00
Andrew Kingston c97852d0ff Fix border radius rounding on hover and selection indicators in builder preview 2021-12-09 17:22:46 +00:00
Andrew Kingston 1b3317a114 Add devtools to app preview and add ability to preview apps as different roles 2021-11-26 13:25:02 +00:00
Andrew Kingston 2adbaea026 Merge develop into editable text lab day 2021-11-16 11:14:46 +00:00
Andrew Kingston c4bbaa6617 Allow blocks which take children to work with DND 2021-11-12 15:18:55 +00:00
Andrew Kingston aaa448cca8 Update settings bar to account for new block settings structure 2021-11-12 14:48:53 +00:00
Andrew Kingston 387831b799 Add in-preview editing of buttons and add settings bar for buttons 2021-10-28 15:29:48 +01:00
Andrew Kingston de163567f5 Move keyboard handling into client library so that component deletion via keyboard can reference client app state 2021-10-28 13:00:55 +01:00
Andrew Kingston b522726afc Allow in-preview editing of paragraphs and headings 2021-10-28 12:43:31 +01:00
Andrew Kingston 25bafc15d2 Use explicity onDestroy calls rather than an onMount return value to ensure callbacks are actually executed to fix data provider cleanup issues 2021-10-27 14:24:36 +01:00
Andrew Kingston fe35d08422 Fix drag and drop indicator positioning when not using desktop preview 2021-10-06 13:59:25 +01:00
Andrew Kingston 0297b3de3f Simplify some DND style rules 2021-09-21 08:47:43 +01:00
Andrew Kingston eeb0617d2b Enable left/right side targetting for DND 2021-09-21 08:36:02 +01:00
Andrew Kingston dc3df10c58 Reduce DND snap to edge threshold to prevent unwanted target spamming on the edges of the parent component 2021-09-20 16:11:42 +01:00
Andrew Kingston 9febe391bb Refactor DND labels to before and after rather then above and below 2021-09-20 15:35:27 +01:00
Andrew Kingston 488ec4d988 Refactor client app data tags to be classnames and simplify logic 2021-09-20 15:34:51 +01:00
Andrew Kingston e19d17c4f5 Prevent DND targetting either above or below the screen/layout, and fix bug determinging whether a drop target is valid 2021-09-20 09:12:35 +01:00
Andrew Kingston 8cf3971b47 Only allow dropping inside empty components that accept children to massively reduce the amount of unwanted drop targets due to parent container components 2021-09-20 08:26:44 +01:00
Andrew Kingston f0dde4a4a4 Fix a few possible crashes by dragging in certain ways, and display on screen when an invalid drop target is hovered over 2021-09-20 08:06:01 +01:00
Andrew Kingston 7eeb215e51 Refactor to use generic flag for dragging and hide settings bar when dragging 2021-09-17 14:17:50 +01:00
Andrew Kingston cb04b3fa7d Ensure hover indicator is correctly hidden when using DND and improve DND labels 2021-09-16 16:02:45 +01:00
Andrew Kingston 601a4935a9 Ensure transitions work properly when showing and hiding DND candidate positions 2021-09-16 15:49:58 +01:00
Andrew Kingston 46867b8a19 Add labels to DND to describe where the component will be dropped 2021-09-16 15:08:42 +01:00
Andrew Kingston bdc86e4c22 Add above/below dnd and support for dropping above/below components which also allow dropping inside 2021-09-16 14:28:44 +01:00
Andrew Kingston 5c37238c8a Fix progress circle never animating because of wrong default prop 2021-09-16 14:11:05 +01:00
Andrew Kingston 0ce0f5c823 Add initial DND implementation with working functionality for dropping inside components 2021-09-16 07:28:59 +01:00
Andrew Kingston a1615055c3 Rename client app wrapper divs for clarity 2021-09-08 10:28:19 +01:00
Andrew Kingston e1d102c0c3 Update position of indicators in preview to clip better 2021-09-08 09:40:02 +01:00
Andrew Kingston 047cd4ea88 Merge standard-components into the client library 2021-09-01 11:41:48 +01:00
Andrew Kingston 2f05450d79 Ensure client preview indicator doesn't crash when encountering incorrect node types 2021-08-19 12:52:13 +01:00
Andrew Kingston 3e63c276dd Update colors of selection and hover indicators in client apps 2021-07-05 09:37:06 +01:00
Andrew Kingston ca032aa6fe Update colours of selection indicators 2021-06-30 21:23:55 +01:00
Andrew Kingston 6bfcb3fc2b Add better theme compatibility to color picker and client app components 2021-06-30 08:30:57 +01:00
Andrew Kingston 098131099d Add new typography settings, add new settings bar dropdowns, add settings bar to text components 2021-06-23 14:21:37 +01:00
Andrew Kingston 1890dfed29 Adjuts top position of settings bar when no room 2021-06-17 16:23:17 +01:00
Andrew Kingston 63c3310a8f Move HoverIndicator mouseleave handler to body element for better detection rates 2021-06-11 13:17:38 +01:00
Andrew Kingston 7e8e482f8f Improve component empty states and fix selection indicator lockup bug. Fix data provider not exporting loaded context 2021-06-11 08:45:58 +01:00
Andrew Kingston 79993bafda Add placeholders and empty states automatically as required to any empty client components 2021-06-11 08:05:49 +01:00
Andrew Kingston 65d6216d33 Refactor client component structure, fix select bar z index, add titles to container bar settings 2021-06-10 18:42:41 +01:00