diff --git a/frontend/src/lib/assets/app.css b/frontend/src/lib/assets/app.css
index 0a611f0862..2e41b279c0 100644
--- a/frontend/src/lib/assets/app.css
+++ b/frontend/src/lib/assets/app.css
@@ -124,3 +124,23 @@ svelte-virtual-list-contents > * + * {
.nonmain-editor .cursor.monaco-mouse-cursor-text {
width: 1px !important;
}
+
+.bg-locked {
+ background-image: repeating-linear-gradient(
+ -45deg,
+ rgba(128, 128, 128, 0.2),
+ rgba(128, 128, 128, 0.2) 10px,
+ rgba(192, 192, 192, 0.2) 10px,
+ rgba(192, 192, 192, 0.2) 20px
+ );
+}
+
+.bg-locked-hover {
+ background-image: repeating-linear-gradient(
+ -45deg,
+ rgba(255, 99, 71, 0.2),
+ rgba(255, 99, 71, 0.2) 10px,
+ rgba(255, 69, 58, 0.2),
+ rgba(255, 69, 58, 0.2) 20px
+ );
+}
diff --git a/frontend/src/lib/components/apps/editor/GridEditor.svelte b/frontend/src/lib/components/apps/editor/GridEditor.svelte
index 21f3b0afcb..926c5fe26f 100644
--- a/frontend/src/lib/components/apps/editor/GridEditor.svelte
+++ b/frontend/src/lib/components/apps/editor/GridEditor.svelte
@@ -136,6 +136,7 @@
}}
let:dataItem
let:hidden
+ let:overlapped
cols={columnConfiguration}
>
{
handleFillHeight(dataItem.id)
}}
+ overlapped={overlapped !== undefined}
/>
@@ -193,10 +195,6 @@
{/if}
diff --git a/frontend/src/lib/components/apps/svelte-grid/utils/item.ts b/frontend/src/lib/components/apps/svelte-grid/utils/item.ts
index 1a587ba77c..8cb691d3e5 100644
--- a/frontend/src/lib/components/apps/svelte-grid/utils/item.ts
+++ b/frontend/src/lib/components/apps/svelte-grid/utils/item.ts
@@ -133,7 +133,12 @@ export function moveItem(active, items, cols) {
const fixed = closeObj.find((value) => value[cols].fixed)
// If found fixed, reset the active to its original position
- if (fixed) return items
+ if (fixed) {
+ return {
+ items: items,
+ overlap: true
+ }
+ }
// Update items
items = updateItem(items, active, item, cols)
@@ -171,7 +176,10 @@ export function moveItem(active, items, cols) {
})
// Return result
- return tempItems
+ return {
+ items: tempItems,
+ overlap: false
+ }
}
// Helper function
@@ -181,7 +189,7 @@ export function normalize(items, col) {
result.forEach((value) => {
const getItem = value[col]
if (!getItem.static) {
- result = moveItem(getItem, result, col)
+ result = moveItem(getItem, result, col).items
}
})