Skip to content

Commit 6addf4b

Browse files
committed
[#1519] highlight find matches when focused on search
1 parent f0737cd commit 6addf4b

File tree

7 files changed

+539
-426
lines changed

7 files changed

+539
-426
lines changed

client/modules/IDE/components/Editor.jsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import 'codemirror/addon/search/match-highlighter';
2222
import 'codemirror/addon/search/jump-to-line';
2323
import 'codemirror/addon/edit/matchbrackets';
2424
import 'codemirror/addon/edit/closebrackets';
25+
import 'codemirror/addon/selection/mark-selection';
2526

2627
import { JSHINT } from 'jshint';
2728
import { CSSLint } from 'csslint';
@@ -37,7 +38,7 @@ import Timer from '../components/Timer';
3738
import EditorAccessibility from '../components/EditorAccessibility';
3839
import { metaKey, } from '../../../utils/metaKey';
3940

40-
import search from '../../../utils/codemirror-search';
41+
import '../../../utils/codemirror-search';
4142

4243
import beepUrl from '../../../sounds/audioAlert.mp3';
4344
import UnsavedChangesDotIcon from '../../../images/unsaved-changes-dot.svg';
@@ -55,8 +56,6 @@ import * as UserActions from '../../User/actions';
5556
import * as ToastActions from '../actions/toast';
5657
import * as ConsoleActions from '../actions/console';
5758

58-
search(CodeMirror);
59-
6059
const beautifyCSS = beautifyJS.css;
6160
const beautifyHTML = beautifyJS.html;
6261

@@ -107,6 +106,7 @@ class Editor extends React.Component {
107106
highlightSelectionMatches: true, // highlight current search match
108107
matchBrackets: true,
109108
autoCloseBrackets: this.props.autocloseBracketsQuotes,
109+
styleSelectedText: true,
110110
lint: {
111111
onUpdateLinting: ((annotations) => {
112112
this.props.hideRuntimeErrorWarning();

client/styles/abstracts/_variables.scss

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@ $base-font-size: 12;
22

33
//colors
44
$p5js-pink: #ed225d;
5+
$p5js-pink-opacity: #ed225d66;
56
$processing-blue: #007BBB;
7+
$processing-blue-opacity: #007BBB66;
68
$p5js-active-pink: #f10046;
79
$white: #fff;
810
$black: #000;

client/styles/components/_editor.scss

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -279,6 +279,14 @@ pre.CodeMirror-line {
279279
background-image: url(../images/down-arrow.svg?byUrl)
280280
}
281281

282+
.CodeMirror-search-match {
283+
background: gold;
284+
border-top: 1px solid orange;
285+
border-bottom: 1px solid orange;
286+
box-sizing: border-box;
287+
opacity: .5;
288+
}
289+
282290
/*
283291
Close button
284292
*/

client/styles/components/_p5-contrast-codemirror-theme.scss

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,3 +135,11 @@ $p5-contrast-activeline: #999999;
135135
.cm-s-p5-contrast .CodeMirror-cursor {
136136
border-left: 1px solid $p5-contrast-white;
137137
}
138+
139+
.cm-s-p5-contrast .cm-searching {
140+
background-color: $processing-blue-opacity;
141+
}
142+
143+
.cm-s-p5-contrast .CodeMirror-selectedtext {
144+
background-color: $medium-dark;
145+
}

client/styles/components/_p5-dark-codemirror-theme.scss

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,3 +142,12 @@ $p5-dark-error: #df3a3d;
142142
.cm-s-p5-dark .CodeMirror-cursor {
143143
border-left: 1px solid $p5-dark-white;
144144
}
145+
146+
.cm-s-p5-dark .cm-searching {
147+
background-color: $p5js-pink-opacity;
148+
}
149+
150+
.cm-s-p5-dark .CodeMirror-selectedtext {
151+
background-color: $medium-dark;
152+
}
153+

client/styles/components/_p5-light-codemirror-theme.scss

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,3 +135,11 @@ $p5-light-activeline: rgb(207, 207, 207);
135135
.cm-s-p5-light .CodeMirror-cursor {
136136
border-left: 1px solid $p5-light-black;
137137
}
138+
139+
.cm-s-p5-light .cm-searching {
140+
background-color: $p5js-pink-opacity;
141+
}
142+
143+
.cm-s-p5-light .CodeMirror-selectedtext {
144+
background-color: $medium-light;
145+
}

0 commit comments

Comments
 (0)