Skip to content
This repository was archived by the owner on Sep 6, 2021. It is now read-only.

Commit 0b17978

Browse files
committed
Merge pull request #11130 from sprintr/pref-code-hints
Preferences Code Hints
2 parents 5d4269c + 89857c0 commit 0b17978

File tree

30 files changed

+2083
-59
lines changed

30 files changed

+2083
-59
lines changed

src/LiveDevelopment/main.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,9 @@ define(function main(require, exports, module) {
7777
// "livedev.multibrowser" preference
7878
var PREF_MULTIBROWSER = "multibrowser";
7979
var prefs = PreferencesManager.getExtensionPrefs("livedev");
80-
var multiBrowserPref = prefs.definePreference(PREF_MULTIBROWSER, "boolean", false);
80+
var multiBrowserPref = prefs.definePreference(PREF_MULTIBROWSER, "boolean", false, {
81+
description: Strings.DESCRIPTION_LIVE_DEV_MULTIBROWSER
82+
});
8183

8284
/** Toggles or sets the preference **/
8385
function _togglePref(key, value) {

src/brackets.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ define(function (require, exports, module) {
100100
require("view/ThemeManager");
101101
require("thirdparty/lodash");
102102
require("language/XMLUtils");
103+
require("language/JSONUtils");
103104

104105
// DEPRECATED: In future we want to remove the global CodeMirror, but for now we
105106
// expose our required CodeMirror globally so as to avoid breaking extensions in the
@@ -437,7 +438,9 @@ define(function (require, exports, module) {
437438
}
438439

439440
if (brackets.platform === "win" && !brackets.inBrowser) {
440-
PreferencesManager.definePreference("_windowsScrollFix", "boolean", true).on("change", enableOrDisableWinScrollFix);
441+
PreferencesManager.definePreference("_windowsScrollFix", "boolean", true, {
442+
excludeFromHints: true
443+
}).on("change", enableOrDisableWinScrollFix);
441444
enableOrDisableWinScrollFix();
442445
}
443446

src/document/DocumentCommandHandlers.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,9 @@ define(function (require, exports, module) {
132132
/** Unique token used to indicate user-driven cancellation of Save As (as opposed to file IO error) */
133133
var USER_CANCELED = { userCanceled: true };
134134

135-
PreferencesManager.definePreference("defaultExtension", "string", "");
135+
PreferencesManager.definePreference("defaultExtension", "string", "", {
136+
excludeFromHints: true
137+
});
136138

137139
/**
138140
* JSLint workaround for circular dependency

src/editor/CodeHintManager.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -252,9 +252,15 @@ define(function (require, exports, module) {
252252
codeHintsEnabled = true;
253253

254254

255-
PreferencesManager.definePreference("showCodeHints", "boolean", true);
256-
PreferencesManager.definePreference("insertHintOnTab", "boolean", false);
257-
PreferencesManager.definePreference("maxCodeHints", "integer", 50);
255+
PreferencesManager.definePreference("showCodeHints", "boolean", true, {
256+
description: Strings.DESCRIPTION_SHOW_CODE_HINTS
257+
});
258+
PreferencesManager.definePreference("insertHintOnTab", "boolean", false, {
259+
description: Strings.DESCRIPTION_INSERT_HINT_ON_TAB
260+
});
261+
PreferencesManager.definePreference("maxCodeHints", "number", 50, {
262+
description: Strings.DESCRIPTION_MAX_CODE_HINTS
263+
});
258264

259265
PreferencesManager.on("change", "showCodeHints", function () {
260266
codeHintsEnabled = PreferencesManager.get("showCodeHints");

src/editor/Editor.js

Lines changed: 72 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ define(function (require, exports, module) {
7575
PerfUtils = require("utils/PerfUtils"),
7676
PopUpManager = require("widgets/PopUpManager"),
7777
PreferencesManager = require("preferences/PreferencesManager"),
78+
Strings = require("strings"),
7879
TextRange = require("document/TextRange").TextRange,
7980
TokenUtils = require("utils/TokenUtils"),
8081
ValidationUtils = require("utils/ValidationUtils"),
@@ -126,25 +127,81 @@ define(function (require, exports, module) {
126127
cmOptions[USE_TAB_CHAR] = "indentWithTabs";
127128
cmOptions[WORD_WRAP] = "lineWrapping";
128129

129-
PreferencesManager.definePreference(CLOSE_BRACKETS, "boolean", false);
130-
PreferencesManager.definePreference(CLOSE_TAGS, "Object", { whenOpening: true, whenClosing: true, indentTags: [] });
131-
PreferencesManager.definePreference(DRAG_DROP, "boolean", false);
132-
PreferencesManager.definePreference(HIGHLIGHT_MATCHES, "boolean", false);
133-
PreferencesManager.definePreference(SCROLL_PAST_END, "boolean", false);
134-
PreferencesManager.definePreference(SHOW_CURSOR_SELECT, "boolean", false);
135-
PreferencesManager.definePreference(SHOW_LINE_NUMBERS, "boolean", true);
136-
PreferencesManager.definePreference(SMART_INDENT, "boolean", true);
137-
PreferencesManager.definePreference(SOFT_TABS, "boolean", true);
130+
PreferencesManager.definePreference(CLOSE_BRACKETS, "boolean", false, {
131+
description: Strings.DESCRIPTION_CLOSE_BRACKETS
132+
});
133+
PreferencesManager.definePreference(CLOSE_TAGS, "object", { whenOpening: true, whenClosing: true, indentTags: [] }, {
134+
description: Strings.DESCRIPTION_CLOSE_TAGS,
135+
keys: {
136+
dontCloseTags: {
137+
type: "array",
138+
description: Strings.DESCRIPTION_CLOSE_TAGS_DONT_CLOSE_TAGS
139+
},
140+
whenOpening: {
141+
type: "boolean",
142+
description: Strings.DESCRIPTION_CLOSE_TAGS_WHEN_OPENING
143+
},
144+
whenClosing: {
145+
type: "boolean",
146+
description: Strings.DESCRIPTION_CLOSE_TAGS_WHEN_CLOSING
147+
},
148+
indentTags: {
149+
type: "array",
150+
description: Strings.DESCRIPTION_CLOSE_TAGS_INDENT_TAGS
151+
}
152+
}
153+
});
154+
PreferencesManager.definePreference(DRAG_DROP, "boolean", false, {
155+
description: Strings.DESCRIPTION_DRAG_DROP_TEXT
156+
});
157+
PreferencesManager.definePreference(HIGHLIGHT_MATCHES, "boolean", false, {
158+
description: Strings.DESCRIPTION_HIGHLIGHT_MATCHES,
159+
keys: {
160+
showToken: {
161+
type: "boolean",
162+
description: Strings.DESCRIPTION_HIGHLIGHT_MATCHES_SHOW_TOKEN
163+
},
164+
wordsOnly: {
165+
type: "boolean",
166+
description: Strings.DESCRIPTION_HIGHLIGHT_MATCHES_WORDS_ONLY
167+
}
168+
}
169+
});
170+
PreferencesManager.definePreference(SCROLL_PAST_END, "boolean", false, {
171+
description: Strings.DESCRIPTION_SCROLL_PAST_END
172+
});
173+
PreferencesManager.definePreference(SHOW_CURSOR_SELECT, "boolean", false, {
174+
description: Strings.DESCRIPTION_SHOW_CURSOR_WHEN_SELECTING
175+
});
176+
PreferencesManager.definePreference(SHOW_LINE_NUMBERS, "boolean", true, {
177+
description: Strings.DESCRIPTION_SHOW_LINE_NUMBERS
178+
});
179+
PreferencesManager.definePreference(SMART_INDENT, "boolean", true, {
180+
description: Strings.DESCRIPTION_SMART_INDENT
181+
});
182+
PreferencesManager.definePreference(SOFT_TABS, "boolean", true, {
183+
description: Strings.DESCRIPTION_SOFT_TABS
184+
});
138185
PreferencesManager.definePreference(SPACE_UNITS, "number", DEFAULT_SPACE_UNITS, {
139-
validator: _.partialRight(ValidationUtils.isIntegerInRange, MIN_SPACE_UNITS, MAX_SPACE_UNITS)
186+
validator: _.partialRight(ValidationUtils.isIntegerInRange, MIN_SPACE_UNITS, MAX_SPACE_UNITS),
187+
description: Strings.DESCRIPTION_SPACE_UNITS
188+
});
189+
PreferencesManager.definePreference(STYLE_ACTIVE_LINE, "boolean", false, {
190+
description: Strings.DESCRIPTION_STYLE_ACTIVE_LINE
140191
});
141-
PreferencesManager.definePreference(STYLE_ACTIVE_LINE, "boolean", false);
142192
PreferencesManager.definePreference(TAB_SIZE, "number", DEFAULT_TAB_SIZE, {
143-
validator: _.partialRight(ValidationUtils.isIntegerInRange, MIN_TAB_SIZE, MAX_TAB_SIZE)
193+
validator: _.partialRight(ValidationUtils.isIntegerInRange, MIN_TAB_SIZE, MAX_TAB_SIZE),
194+
description: Strings.DESCRIPTION_TAB_SIZE
195+
});
196+
PreferencesManager.definePreference(UPPERCASE_COLORS, "boolean", false, {
197+
description: Strings.DESCRIPTION_UPPERCASE_COLORS
198+
});
199+
PreferencesManager.definePreference(USE_TAB_CHAR, "boolean", false, {
200+
description: Strings.DESCRIPTION_USE_TAB_CHAR
201+
});
202+
PreferencesManager.definePreference(WORD_WRAP, "boolean", true, {
203+
description: Strings.DESCRIPTION_WORD_WRAP
144204
});
145-
PreferencesManager.definePreference(UPPERCASE_COLORS, "boolean", false);
146-
PreferencesManager.definePreference(USE_TAB_CHAR, "boolean", false);
147-
PreferencesManager.definePreference(WORD_WRAP, "boolean", true);
148205

149206
var editorOptions = Object.keys(cmOptions);
150207

src/extensibility/Package.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@ define(function (require, exports, module) {
4141
NodeConnection = require("utils/NodeConnection"),
4242
PreferencesManager = require("preferences/PreferencesManager");
4343

44-
PreferencesManager.definePreference("proxy", "string", undefined);
44+
PreferencesManager.definePreference("proxy", "string", undefined, {
45+
description: Strings.DESCRIPTION_PROXY
46+
});
4547

4648
var Errors = {
4749
ERROR_LOADING: "ERROR_LOADING",

src/extensions/default/CloseOthers/main.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,15 @@ define(function (require, exports, module) {
4444
var prefs = PreferencesManager.getExtensionPrefs("closeOthers"),
4545
menuEntriesShown = {};
4646

47-
prefs.definePreference("below", "boolean", true);
48-
prefs.definePreference("others", "boolean", true);
49-
prefs.definePreference("above", "boolean", true);
47+
prefs.definePreference("below", "boolean", true, {
48+
description: Strings.DESCRIPTION_CLOSE_OTHERS_BELOW
49+
});
50+
prefs.definePreference("others", "boolean", true, {
51+
description: Strings.DESCRIPTION_CLOSE_OTHERS
52+
});
53+
prefs.definePreference("above", "boolean", true, {
54+
description: Strings.DESCRIPTION_CLOSE_OTHERS_ABOVE
55+
});
5056

5157

5258
/**

src/extensions/default/CodeFolding/Prefs.js

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,34 +11,30 @@ define(function (require, exports, module) {
1111

1212
var ProjectManager = brackets.getModule("project/ProjectManager"),
1313
PreferencesManager = brackets.getModule("preferences/PreferencesManager"),
14+
Strings = brackets.getModule("strings"),
1415
prefs = PreferencesManager.getExtensionPrefs("code-folding"),
1516
FOLDS_PREF_KEY = "code-folding.folds",
1617
// preference key strings are here for now since they are not used in any UI
1718
ENABLE_CODE_FOLDING = "Enable code folding",
1819
MIN_FOLD_SIZE = "Minimum fold size",
19-
MIN_FOLD_SIZE_HELP = "Minimum number of lines to allow in a foldable range",
2020
SAVE_FOLD_STATES = "Save fold states",
21-
SAVE_FOLD_STATES_HELP = "Save fold states to disk when editor is closed and restore the folds when reopened",
2221
ALWAYS_USE_INDENT_FOLD = "Always use indent fold",
23-
ALWAYS_USE_INDENT_FOLD_HELP = "Fall back to using level of indentation as a folding guideline if no range finder is found for the current mode.",
2422
HIDE_FOLD_BUTTONS = "Hide fold triangles",
25-
HIDE_FOLD_BUTTONS_HELP = "Hide fold triangles unless the mouse is over the gutter",
26-
MAX_FOLD_LEVEL = "Max fold level",
27-
MAX_FOLD_LEVEL_HELP = "Used to limit the number of nested folds to find and collapse when View -> Collapse All is called or Alt is held down when collapsing. Should improve performance for large files.";
23+
MAX_FOLD_LEVEL = "Max fold level";
2824

2925
//default preference values
3026
prefs.definePreference("enabled", "boolean", true,
31-
{name: ENABLE_CODE_FOLDING, description: ENABLE_CODE_FOLDING});
27+
{name: ENABLE_CODE_FOLDING, description: Strings.DESCRIPTION_CODE_FOLDING_ENABLED});
3228
prefs.definePreference("minFoldSize", "number", 2,
33-
{name: MIN_FOLD_SIZE, description: MIN_FOLD_SIZE_HELP});
29+
{name: MIN_FOLD_SIZE, description: Strings.DESCRIPTION_CODE_FOLDING_MIN_FOLD_SIZE});
3430
prefs.definePreference("saveFoldStates", "boolean", true,
35-
{name: SAVE_FOLD_STATES, description: SAVE_FOLD_STATES_HELP});
31+
{name: SAVE_FOLD_STATES, description: Strings.DESCRIPTION_CODE_FOLDING_SAVE_FOLD_STATES});
3632
prefs.definePreference("alwaysUseIndentFold", "boolean", false,
37-
{name: ALWAYS_USE_INDENT_FOLD, description: ALWAYS_USE_INDENT_FOLD_HELP});
33+
{name: ALWAYS_USE_INDENT_FOLD, description: Strings.DESCRIPTION_CODE_FOLDING_ALWAY_USE_INDENT_FOLD});
3834
prefs.definePreference("hideUntilMouseover", "boolean", false,
39-
{name: HIDE_FOLD_BUTTONS, description: HIDE_FOLD_BUTTONS_HELP});
35+
{name: HIDE_FOLD_BUTTONS, description: Strings.DESCRIPTION_CODE_FOLDING_HIDE_UNTIL_MOUSEOVER});
4036
prefs.definePreference("maxFoldLevel", "number", 2,
41-
{name: MAX_FOLD_LEVEL, description: MAX_FOLD_LEVEL_HELP});
37+
{name: MAX_FOLD_LEVEL, description: Strings.DESCRIPTION_CODE_FOLDING_MAX_FOLD_LEVEL});
4238

4339
PreferencesManager.stateManager.definePreference(FOLDS_PREF_KEY, "object", {});
4440

src/extensions/default/DebugCommands/main.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,9 @@ define(function (require, exports, module) {
7171
DEBUG_SHOW_ERRORS_IN_STATUS_BAR = "debug.showErrorsInStatusBar",
7272
DEBUG_OPEN_BRACKETS_SOURCE = "debug.openBracketsSource";
7373

74-
PreferencesManager.definePreference(DEBUG_SHOW_ERRORS_IN_STATUS_BAR, "boolean", false);
74+
PreferencesManager.definePreference(DEBUG_SHOW_ERRORS_IN_STATUS_BAR, "boolean", false, {
75+
description: Strings.DESCRIPTION_SHOW_ERRORS_IN_STATUS_BAR
76+
});
7577

7678
function handleShowDeveloperTools() {
7779
brackets.app.showDeveloperTools();

src/extensions/default/HealthData/HealthDataManager.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,15 @@ define(function (require, exports, module) {
3030
var AppInit = brackets.getModule("utils/AppInit"),
3131
PreferencesManager = brackets.getModule("preferences/PreferencesManager"),
3232
UrlParams = brackets.getModule("utils/UrlParams").UrlParams,
33+
Strings = brackets.getModule("strings"),
3334
HealthDataUtils = require("HealthDataUtils"),
3435
uuid = require("thirdparty/uuid");
3536

3637
var prefs = PreferencesManager.getExtensionPrefs("healthData");
3738

38-
prefs.definePreference("healthDataTracking", "boolean", true);
39+
prefs.definePreference("healthDataTracking", "boolean", true, {
40+
description: Strings.DESCRIPTION_HEALTH_DATA_TRACKING
41+
});
3942

4043
var ONE_MINUTE = 60 * 1000,
4144
ONE_DAY = 24 * 60 * ONE_MINUTE,

0 commit comments

Comments
 (0)