| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 105 "Cmd-Right": "goLineEnd", | 105 "Cmd-Right": "goLineEnd", |
| 106 "Alt-Backspace": "delGroupBefore", | 106 "Alt-Backspace": "delGroupBefore", |
| 107 "Alt-Delete": "delGroupAfter", | 107 "Alt-Delete": "delGroupAfter", |
| 108 "Cmd-/": "toggleComment", | 108 "Cmd-/": "toggleComment", |
| 109 "Cmd-D": "selectNextOccurrence", | 109 "Cmd-D": "selectNextOccurrence", |
| 110 "Cmd-U": "undoLastSelection", | 110 "Cmd-U": "undoLastSelection", |
| 111 fallthrough: "devtools-common" | 111 fallthrough: "devtools-common" |
| 112 }; | 112 }; |
| 113 | 113 |
| 114 WebInspector.settings.textEditorIndent.addChangeListener(this._updateEditorI
ndentation, this); | 114 WebInspector.settings.textEditorIndent.addChangeListener(this._updateEditorI
ndentation, this); |
| 115 WebInspector.settings.textEditorAutoDetectIndent.addChangeListener(this._upd
ateEditorIndentation, this); |
| 115 this._updateEditorIndentation(); | 116 this._updateEditorIndentation(); |
| 116 WebInspector.settings.showWhitespacesInEditor.addChangeListener(this._update
CodeMirrorMode, this); | 117 WebInspector.settings.showWhitespacesInEditor.addChangeListener(this._update
CodeMirrorMode, this); |
| 117 WebInspector.settings.textEditorBracketMatching.addChangeListener(this._enab
leBracketMatchingIfNeeded, this); | 118 WebInspector.settings.textEditorBracketMatching.addChangeListener(this._enab
leBracketMatchingIfNeeded, this); |
| 118 this._enableBracketMatchingIfNeeded(); | 119 this._enableBracketMatchingIfNeeded(); |
| 119 | 120 |
| 120 this._codeMirror.setOption("keyMap", WebInspector.isMac() ? "devtools-mac" :
"devtools-pc"); | 121 this._codeMirror.setOption("keyMap", WebInspector.isMac() ? "devtools-mac" :
"devtools-pc"); |
| 121 this._codeMirror.setOption("flattenSpans", false); | 122 this._codeMirror.setOption("flattenSpans", false); |
| 122 | 123 |
| 123 this._codeMirror.setOption("maxHighlightLength", WebInspector.CodeMirrorText
Editor.maxHighlightLength); | 124 this._codeMirror.setOption("maxHighlightLength", WebInspector.CodeMirrorText
Editor.maxHighlightLength); |
| 124 this._codeMirror.setOption("mode", null); | 125 this._codeMirror.setOption("mode", null); |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 } | 269 } |
| 269 | 270 |
| 270 WebInspector.CodeMirrorTextEditor.LongLineModeLineLengthThreshold = 2000; | 271 WebInspector.CodeMirrorTextEditor.LongLineModeLineLengthThreshold = 2000; |
| 271 WebInspector.CodeMirrorTextEditor.MaximumNumberOfWhitespacesPerSingleSpan = 16; | 272 WebInspector.CodeMirrorTextEditor.MaximumNumberOfWhitespacesPerSingleSpan = 16; |
| 272 WebInspector.CodeMirrorTextEditor.MaxEditableTextSize = 1024 * 1024 * 10; | 273 WebInspector.CodeMirrorTextEditor.MaxEditableTextSize = 1024 * 1024 * 10; |
| 273 | 274 |
| 274 WebInspector.CodeMirrorTextEditor.prototype = { | 275 WebInspector.CodeMirrorTextEditor.prototype = { |
| 275 dispose: function() | 276 dispose: function() |
| 276 { | 277 { |
| 277 WebInspector.settings.textEditorIndent.removeChangeListener(this._update
EditorIndentation, this); | 278 WebInspector.settings.textEditorIndent.removeChangeListener(this._update
EditorIndentation, this); |
| 279 WebInspector.settings.textEditorAutoDetectIndent.removeChangeListener(th
is._updateEditorIndentation, this); |
| 278 WebInspector.settings.showWhitespacesInEditor.removeChangeListener(this.
_updateCodeMirrorMode, this); | 280 WebInspector.settings.showWhitespacesInEditor.removeChangeListener(this.
_updateCodeMirrorMode, this); |
| 279 WebInspector.settings.textEditorBracketMatching.removeChangeListener(thi
s._enableBracketMatchingIfNeeded, this); | 281 WebInspector.settings.textEditorBracketMatching.removeChangeListener(thi
s._enableBracketMatchingIfNeeded, this); |
| 280 }, | 282 }, |
| 281 | 283 |
| 282 _enableBracketMatchingIfNeeded: function() | 284 _enableBracketMatchingIfNeeded: function() |
| 283 { | 285 { |
| 284 this._codeMirror.setOption("autoCloseBrackets", WebInspector.settings.te
xtEditorBracketMatching.get() ? { explode: false } : false); | 286 this._codeMirror.setOption("autoCloseBrackets", WebInspector.settings.te
xtEditorBracketMatching.get() ? { explode: false } : false); |
| 285 }, | 287 }, |
| 286 | 288 |
| 287 wasShown: function() | 289 wasShown: function() |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 320 return "\t"; | 322 return "\t"; |
| 321 var minimumIndent = Infinity; | 323 var minimumIndent = Infinity; |
| 322 for (var i in indents) { | 324 for (var i in indents) { |
| 323 if (indents[i] < onePercentFilterThreshold) | 325 if (indents[i] < onePercentFilterThreshold) |
| 324 continue; | 326 continue; |
| 325 var indent = parseInt(i, 10); | 327 var indent = parseInt(i, 10); |
| 326 if (minimumIndent > indent) | 328 if (minimumIndent > indent) |
| 327 minimumIndent = indent; | 329 minimumIndent = indent; |
| 328 } | 330 } |
| 329 if (minimumIndent === Infinity) | 331 if (minimumIndent === Infinity) |
| 330 return WebInspector.TextUtils.Indent.FourSpaces; | 332 return WebInspector.settings.textEditorIndent.get(); |
| 331 return new Array(minimumIndent + 1).join(" "); | 333 return new Array(minimumIndent + 1).join(" "); |
| 332 }, | 334 }, |
| 333 | 335 |
| 334 _updateEditorIndentation: function() | 336 _updateEditorIndentation: function() |
| 335 { | 337 { |
| 336 var extraKeys = {}; | 338 var extraKeys = {}; |
| 337 var indent = WebInspector.settings.textEditorIndent.get(); | 339 var indent = WebInspector.settings.textEditorIndent.get(); |
| 338 if (WebInspector.settings.textEditorAutoDetectIndent.get()) | 340 if (WebInspector.settings.textEditorAutoDetectIndent.get()) |
| 339 indent = this._guessIndentationLevel(); | 341 indent = this._guessIndentationLevel(); |
| 340 if (indent === WebInspector.TextUtils.Indent.TabCharacter) { | 342 if (indent === WebInspector.TextUtils.Indent.TabCharacter) { |
| (...skipping 1786 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2127 var backgroundColorRule = backgroundColor ? ".CodeMirror .CodeMirror-selecte
d { background-color: " + backgroundColor + ";}" : ""; | 2129 var backgroundColorRule = backgroundColor ? ".CodeMirror .CodeMirror-selecte
d { background-color: " + backgroundColor + ";}" : ""; |
| 2128 var foregroundColor = InspectorFrontendHost.getSelectionForegroundColor(); | 2130 var foregroundColor = InspectorFrontendHost.getSelectionForegroundColor(); |
| 2129 var foregroundColorRule = foregroundColor ? ".CodeMirror .CodeMirror-selecte
dtext:not(.CodeMirror-persist-highlight) { color: " + foregroundColor + "!import
ant;}" : ""; | 2131 var foregroundColorRule = foregroundColor ? ".CodeMirror .CodeMirror-selecte
dtext:not(.CodeMirror-persist-highlight) { color: " + foregroundColor + "!import
ant;}" : ""; |
| 2130 if (!foregroundColorRule && !backgroundColorRule) | 2132 if (!foregroundColorRule && !backgroundColorRule) |
| 2131 return; | 2133 return; |
| 2132 | 2134 |
| 2133 var style = document.createElement("style"); | 2135 var style = document.createElement("style"); |
| 2134 style.textContent = backgroundColorRule + foregroundColorRule; | 2136 style.textContent = backgroundColorRule + foregroundColorRule; |
| 2135 document.head.appendChild(style); | 2137 document.head.appendChild(style); |
| 2136 })(); | 2138 })(); |
| OLD | NEW |