Skip to content

Commit 1f375ed

Browse files
committed
FEATURE: Show ckeditor drag & drop indicators
With this change, the user can see an indicator where selected elements in the inline editor would show up. The drag & drop feature worked before, but this makes the feature much more usable and intuitive. It even works between multiple editor instances. Resolves: #3977
1 parent 6128029 commit 1f375ed

File tree

1 file changed

+73
-0
lines changed

1 file changed

+73
-0
lines changed

packages/neos-ui-ckeditor5-bindings/src/cke-overwrites.vanilla-css

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,76 @@
1111
.ck-aria-live-announcer {
1212
display: none;
1313
}
14+
15+
:root {
16+
--ck-clipboard-drop-target-dot-width: 12px;
17+
--ck-clipboard-drop-target-dot-height: 8px;
18+
--ck-clipboard-drop-target-color: var(--ck-color-focus-border);
19+
}
20+
21+
/* Drag & drop caret */
22+
.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span {
23+
position: relative;
24+
bottom: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));
25+
top: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));
26+
border: 1px solid var(--ck-clipboard-drop-target-color);
27+
background: var(--ck-clipboard-drop-target-color);
28+
margin-left: -1px;
29+
}
30+
31+
.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span::after {
32+
content: '';
33+
width: 0;
34+
height: 0;
35+
36+
display: block;
37+
position: absolute;
38+
left: 50%;
39+
top: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));
40+
41+
transform: translateX(-50%);
42+
border-color: var(--ck-clipboard-drop-target-color) transparent transparent transparent;
43+
border-width: calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));
44+
border-style: solid;
45+
}
46+
47+
.ck.ck-clipboard-drop-target-line {
48+
height: 0;
49+
border: 1px solid var(--ck-clipboard-drop-target-color);
50+
background: var(--ck-clipboard-drop-target-color);
51+
margin-top: -1px;
52+
position: absolute;
53+
pointer-events: none;
54+
}
55+
56+
.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range {
57+
outline: var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important;
58+
}
59+
60+
.ck.ck-editor__editable .ck-widget:-webkit-drag {
61+
zoom: 0.6;
62+
outline: none !important;
63+
}
64+
65+
.ck.ck-clipboard-drop-target-line::before {
66+
content: '';
67+
position: absolute;
68+
top: calc(-.5 * var(--ck-clipboard-drop-target-dot-width));
69+
width: 0;
70+
height: 0;
71+
border-style: solid;
72+
}
73+
74+
[dir="ltr"] .ck.ck-clipboard-drop-target-line::before {
75+
left: -1px;
76+
77+
border-width: calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height);
78+
border-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);
79+
}
80+
81+
[dir="rtl"] .ck.ck-clipboard-drop-target-line::before {
82+
right: -1px;
83+
84+
border-width: calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0;
85+
border-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;
86+
}

0 commit comments

Comments
 (0)