Skip to content
This repository was archived by the owner on Dec 17, 2024. It is now read-only.

Commit 4266ea2

Browse files
committed
use proper monaco editor glyph hover effects
Fixes #811
1 parent b709d71 commit 4266ea2

File tree

2 files changed

+11
-24
lines changed

2 files changed

+11
-24
lines changed

app/plugins/modules/editor/lib/edit.js

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,6 @@ const persisters = {
154154
return res
155155
})
156156
.catch(err => {
157-
console.error('!!!!!!!', err)
158157
if (err.statusCode === 'ENOPARSE') {
159158
debug('composition did not parse', err)
160159
const basename = path.basename(filepath),
@@ -169,36 +168,22 @@ const persisters = {
169168
column = match[3]
170169
debug('got match', problem, line, column)
171170

172-
// see the 'hack it ourselves' just below
173-
const rando = `shell-${new Date().getTime()}`
174-
175171
editor.__currentDecorations = editor.deltaDecorations(editor.__currentDecorations || [], [
176172
{ range: new monaco.Range(line,1,line,1),
177173
options: { isWholeLine: true,
178-
//glyphMarginClassName: 'editor__parse-error-gutter-marker editor__parse_error_decoration',
179-
//glyphMarginHoverMessage: problem
180-
linesDecorationsClassName: `editor__parse-error-gutter-marker editor__parse-error-decoration ${rando}`
174+
glyphMarginClassName: 'editor__parse-error-gutter-marker editor__parse_error_decoration',
175+
glyphMarginHoverMessage: { value: problem },
176+
//linesDecorationsClassName: `editor__parse-error-gutter-marker editor__parse-error-decoration`
181177
}
182178
},
183179
{ range: new monaco.Range(line,column,line,column + 1),
184180
options: {
185-
beforeContentClassName: `editor__parse-error-before-marker editor__parse-error-decoration ${rando}`,
181+
beforeContentClassName: `editor__parse-error-before-marker editor__parse-error-decoration`
186182
//inlineClassName: 'editor__parse-error-inline-marker',
187-
hoverMessage: problem
183+
//hoverMessage: { value: problem }
188184
}
189185
},
190186
])
191-
192-
// glyphMarginHoverMessage seems broken; hack it ourselves for now
193-
setTimeout(() => {
194-
const decos = document.querySelectorAll(`.${rando}`)
195-
if (decos) {
196-
for (let idx = 0; idx < decos.length; idx++) {
197-
const deco = decos[idx]
198-
deco.setAttribute('title', problem)
199-
}
200-
}
201-
}, 0)
202187
}
203188
}
204189
})
@@ -438,7 +423,7 @@ const openEditor = wsk => {
438423
minimap: {
439424
enabled: false
440425
},
441-
//glyphMargin: true, // needed for error indicators
426+
glyphMargin: true, // needed for error indicators
442427
autoIndent: true,
443428
codeLens: false,
444429
quickSuggestions: false,

app/plugins/modules/editor/lib/editor.css

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,9 +107,11 @@ body.sidecar-full-screen #sidecar .wskflow-container.visible {
107107
.editor.parse-error-gutter-marker {
108108
border-radius: 0.9375em;
109109
background-color: var(--color-support-01);
110-
width: 1ex !important;
111-
margin-left: 1em;
112-
/*background-image: repeating-linear-gradient(-45deg, transparent, transparent 10%, rgba(255,255,255,.5) 10%, rgba(255,255,255,.5) 15%);*/
110+
width: 1em !important;
111+
height: 1em !important;
112+
}
113+
.editor.parse-error-before-marker:hover {
114+
cursor: default;
113115
}
114116
.editor.parse-error-before-marker:before {
115117
content: '^';

0 commit comments

Comments
 (0)