From 5f3d75a9d0fb157cb34d536d21bf572c5319d31e Mon Sep 17 00:00:00 2001 From: Pluto Date: Sat, 25 Jul 2026 16:43:39 +0530 Subject: [PATCH 1/4] refactor: rename empty canvas bar to starter bar strings --- src/nls/root/strings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index dcfae61d0f..0d0b6c74d4 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -437,9 +437,9 @@ define({ "LIVE_DEV_INSERT_SHOW_MORE": "Show more", "LIVE_DEV_INSERT_SHOW_LESS": "Show less", "LIVE_DEV_INSERT_CREATE": "Create", - "LIVE_DEV_EMPTY_CANVAS_LABEL": "Your page is empty — add an element", - "LIVE_DEV_EMPTY_CANVAS_ADD": "Add your first element", - "LIVE_DEV_EMPTY_CANVAS_COLLAPSE": "Collapse", + "LIVE_DEV_STARTER_BAR_LABEL": "Your page is empty — add an element", + "LIVE_DEV_STARTER_BAR_ADD": "Add your first element", + "LIVE_DEV_STARTER_BAR_COLLAPSE": "Collapse", "LIVE_DEV_IMAGE_GALLERY_USE_IMAGE": "Download image", "LIVE_DEV_IMAGE_GALLERY_SELECT_DOWNLOAD_FOLDER": "Choose image download folder", "LIVE_DEV_IMAGE_GALLERY_SEARCH_PLACEHOLDER": "Search images\u2026", From 907a5e88e9e4c256893621a8b1a7c686734d281a Mon Sep 17 00:00:00 2001 From: Pluto Date: Sat, 25 Jul 2026 21:52:47 +0530 Subject: [PATCH 2/4] feat: add starter bar live preview disable config option --- src/LiveDevelopment/LivePreviewConstants.js | 2 ++ src/LiveDevelopment/main.js | 9 +++++++++ src/extensionsIntegrated/Phoenix-live-preview/main.js | 10 ++++++++++ src/nls/root/strings.js | 3 +-- 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/LiveDevelopment/LivePreviewConstants.js b/src/LiveDevelopment/LivePreviewConstants.js index 7589613d90..69a46993c7 100644 --- a/src/LiveDevelopment/LivePreviewConstants.js +++ b/src/LiveDevelopment/LivePreviewConstants.js @@ -44,5 +44,7 @@ define(function main(require, exports, module) { exports.PREFERENCE_SHOW_STYLES_BAR = "livePreviewShowStylesBar"; + exports.PREFERENCE_SHOW_STARTER_BAR = "livePreviewShowStarterBar"; + exports.PREFERENCE_STYLES_BAR_POSITION = "livePreviewStylesBarPosition"; }); diff --git a/src/LiveDevelopment/main.js b/src/LiveDevelopment/main.js index 79674fdbd6..abbb8aad92 100644 --- a/src/LiveDevelopment/main.js +++ b/src/LiveDevelopment/main.js @@ -72,6 +72,7 @@ define(function main(require, exports, module) { elemHighlights: CONSTANTS.HIGHLIGHT_HOVER, // default value, this will get updated when the extension loads showRulerLines: false, // default value, this will get updated when the extension loads showStylesBar: true, // default value, this will get updated when the extension loads + showStarterBar: true, // default value, this will get updated when the extension loads stylesBarPosition: "", // saved dock side ("top"/"bottom"); empty = default bottom syncSourceAndPreview: true, // default value, this will get updated when the extension loads imageGalleryAutoOpen: true, // auto-open gallery on first image click per session @@ -345,6 +346,13 @@ define(function main(require, exports, module) { MultiBrowserLiveDev.updateConfig(config); } + function updateStarterBarConfig() { + const prefValue = PreferencesManager.get(CONSTANTS.PREFERENCE_SHOW_STARTER_BAR); + const config = MultiBrowserLiveDev.getConfig(); + config.showStarterBar = prefValue !== false; // defaults to true (on) + MultiBrowserLiveDev.updateConfig(config); + } + function updateStylesBarPositionConfig() { const prefValue = PreferencesManager.get(CONSTANTS.PREFERENCE_STYLES_BAR_POSITION); const config = MultiBrowserLiveDev.getConfig(); @@ -376,6 +384,7 @@ define(function main(require, exports, module) { exports.updateElementHighlightConfig = updateElementHighlightConfig; exports.updateRulerLinesConfig = updateRulerLinesConfig; exports.updateStylesBarConfig = updateStylesBarConfig; + exports.updateStarterBarConfig = updateStarterBarConfig; exports.updateStylesBarPositionConfig = updateStylesBarPositionConfig; exports.getConnectionIds = MultiBrowserLiveDev.getConnectionIds; exports.getLivePreviewDetails = MultiBrowserLiveDev.getLivePreviewDetails; diff --git a/src/extensionsIntegrated/Phoenix-live-preview/main.js b/src/extensionsIntegrated/Phoenix-live-preview/main.js index 8fb0211052..4e4ad06fbd 100644 --- a/src/extensionsIntegrated/Phoenix-live-preview/main.js +++ b/src/extensionsIntegrated/Phoenix-live-preview/main.js @@ -121,6 +121,12 @@ define(function (require, exports, module) { description: Strings.LIVE_DEV_SETTINGS_SHOW_STYLES_BAR_PREFERENCE }); + // live preview starter bar preference (show/hide the starter bar on empty pages); on by default + const PREFERENCE_SHOW_STARTER_BAR = CONSTANTS.PREFERENCE_SHOW_STARTER_BAR; + PreferencesManager.definePreference(PREFERENCE_SHOW_STARTER_BAR, "boolean", true, { + description: Strings.LIVE_DEV_SETTINGS_SHOW_STARTER_BAR_PREFERENCE + }); + // live preview styles bar position preference; persists where the user last dragged the bar const PREFERENCE_STYLES_BAR_POSITION = CONSTANTS.PREFERENCE_STYLES_BAR_POSITION; PreferencesManager.definePreference(PREFERENCE_STYLES_BAR_POSITION, "string", "", { @@ -1555,6 +1561,9 @@ define(function (require, exports, module) { PreferencesManager.on("change", PREFERENCE_SHOW_STYLES_BAR, function() { LiveDevelopment.updateStylesBarConfig(); }); + PreferencesManager.on("change", PREFERENCE_SHOW_STARTER_BAR, function() { + LiveDevelopment.updateStarterBarConfig(); + }); PreferencesManager.on("change", PREFERENCE_STYLES_BAR_POSITION, function() { LiveDevelopment.updateStylesBarPositionConfig(); }); @@ -1562,6 +1571,7 @@ define(function (require, exports, module) { LiveDevelopment.updateElementHighlightConfig(); LiveDevelopment.updateRulerLinesConfig(); LiveDevelopment.updateStylesBarConfig(); + LiveDevelopment.updateStarterBarConfig(); LiveDevelopment.updateStylesBarPositionConfig(); LiveDevelopment.openLivePreview(); diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index 0d0b6c74d4..20387ffc15 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -184,6 +184,7 @@ define({ "LIVE_DEV_SETTINGS_ELEMENT_HIGHLIGHT_PREFERENCE": "Inspect element in Live Preview on 'hover' or 'click'. Defaults to 'hover'", "LIVE_DEV_SETTINGS_SHOW_RULER_LINES_PREFERENCE": "Show measurements when elements are selected in live preview. Defaults to 'false'", "LIVE_DEV_SETTINGS_SHOW_STYLES_BAR_PREFERENCE": "Show the styles bar when elements are selected in live preview. Defaults to 'true'", + "LIVE_DEV_SETTINGS_SHOW_STARTER_BAR_PREFERENCE": "Show the starter bar when the live preview page is empty. Defaults to 'true'", "LIVE_DEV_SETTINGS_STYLES_BAR_POSITION_PREFERENCE": "Saved position of the live preview styles bar, set automatically when the bar is dragged. Empty places the bar at its default spot", "LIVE_DEV_TOOLBOX_SELECT_PARENT": "Select Parent", "LIVE_DEV_TOOLBOX_EDIT_TEXT": "Edit Text", @@ -438,8 +439,6 @@ define({ "LIVE_DEV_INSERT_SHOW_LESS": "Show less", "LIVE_DEV_INSERT_CREATE": "Create", "LIVE_DEV_STARTER_BAR_LABEL": "Your page is empty — add an element", - "LIVE_DEV_STARTER_BAR_ADD": "Add your first element", - "LIVE_DEV_STARTER_BAR_COLLAPSE": "Collapse", "LIVE_DEV_IMAGE_GALLERY_USE_IMAGE": "Download image", "LIVE_DEV_IMAGE_GALLERY_SELECT_DOWNLOAD_FOLDER": "Choose image download folder", "LIVE_DEV_IMAGE_GALLERY_SEARCH_PLACEHOLDER": "Search images\u2026", From 0ea98986afbbe1a470e1c6950c58697d9385b34e Mon Sep 17 00:00:00 2001 From: Pluto Date: Sat, 25 Jul 2026 22:02:20 +0530 Subject: [PATCH 3/4] fix: stale live preview position preference cache --- src/LiveDevelopment/main.js | 4 ++-- src/extensionsIntegrated/Phoenix-live-preview/main.js | 7 ++++--- src/nls/root/strings.js | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/LiveDevelopment/main.js b/src/LiveDevelopment/main.js index abbb8aad92..c8d8600a08 100644 --- a/src/LiveDevelopment/main.js +++ b/src/LiveDevelopment/main.js @@ -73,7 +73,7 @@ define(function main(require, exports, module) { showRulerLines: false, // default value, this will get updated when the extension loads showStylesBar: true, // default value, this will get updated when the extension loads showStarterBar: true, // default value, this will get updated when the extension loads - stylesBarPosition: "", // saved dock side ("top"/"bottom"); empty = default bottom + stylesBarPosition: "bottom", // saved dock side ("top"/"bottom") syncSourceAndPreview: true, // default value, this will get updated when the extension loads imageGalleryAutoOpen: true, // auto-open gallery on first image click per session isPaidUser: false, // will be updated when we fetch entitlements @@ -356,7 +356,7 @@ define(function main(require, exports, module) { function updateStylesBarPositionConfig() { const prefValue = PreferencesManager.get(CONSTANTS.PREFERENCE_STYLES_BAR_POSITION); const config = MultiBrowserLiveDev.getConfig(); - config.stylesBarPosition = prefValue || ""; + config.stylesBarPosition = prefValue || "bottom"; MultiBrowserLiveDev.updateConfig(config); } diff --git a/src/extensionsIntegrated/Phoenix-live-preview/main.js b/src/extensionsIntegrated/Phoenix-live-preview/main.js index 4e4ad06fbd..3e99097216 100644 --- a/src/extensionsIntegrated/Phoenix-live-preview/main.js +++ b/src/extensionsIntegrated/Phoenix-live-preview/main.js @@ -127,10 +127,11 @@ define(function (require, exports, module) { description: Strings.LIVE_DEV_SETTINGS_SHOW_STARTER_BAR_PREFERENCE }); - // live preview styles bar position preference; persists where the user last dragged the bar + // live preview styles bar dock side preference; persisted when the user flips the bar's dock button const PREFERENCE_STYLES_BAR_POSITION = CONSTANTS.PREFERENCE_STYLES_BAR_POSITION; - PreferencesManager.definePreference(PREFERENCE_STYLES_BAR_POSITION, "string", "", { - description: Strings.LIVE_DEV_SETTINGS_STYLES_BAR_POSITION_PREFERENCE + PreferencesManager.definePreference(PREFERENCE_STYLES_BAR_POSITION, "string", "bottom", { + description: Strings.LIVE_DEV_SETTINGS_STYLES_BAR_POSITION_PREFERENCE, + values: ["top", "bottom"] }); const LIVE_PREVIEW_PANEL_ID = "live-preview-panel"; diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index 20387ffc15..b4bbf0b8de 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -185,7 +185,7 @@ define({ "LIVE_DEV_SETTINGS_SHOW_RULER_LINES_PREFERENCE": "Show measurements when elements are selected in live preview. Defaults to 'false'", "LIVE_DEV_SETTINGS_SHOW_STYLES_BAR_PREFERENCE": "Show the styles bar when elements are selected in live preview. Defaults to 'true'", "LIVE_DEV_SETTINGS_SHOW_STARTER_BAR_PREFERENCE": "Show the starter bar when the live preview page is empty. Defaults to 'true'", - "LIVE_DEV_SETTINGS_STYLES_BAR_POSITION_PREFERENCE": "Saved position of the live preview styles bar, set automatically when the bar is dragged. Empty places the bar at its default spot", + "LIVE_DEV_SETTINGS_STYLES_BAR_POSITION_PREFERENCE": "Which edge the live preview styles bar docks to, 'top' or 'bottom'. Defaults to 'bottom'", "LIVE_DEV_TOOLBOX_SELECT_PARENT": "Select Parent", "LIVE_DEV_TOOLBOX_EDIT_TEXT": "Edit Text", "LIVE_DEV_TOOLBOX_DOUBLE_CLICK_HINT": "Double-click", From ecd93f893596a020ee5529801afe8728691dffec Mon Sep 17 00:00:00 2001 From: Pluto Date: Sat, 25 Jul 2026 23:27:35 +0530 Subject: [PATCH 4/4] build: update pro deps --- tracking-repos.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tracking-repos.json b/tracking-repos.json index f03b005550..cb87e9987d 100644 --- a/tracking-repos.json +++ b/tracking-repos.json @@ -1,5 +1,5 @@ { "phoenixPro": { - "commitID": "844cfa15093ec806a3b3327bb36791ca41405a66" + "commitID": "f0774ecdb6a1ad14330dae7c4482a7c77c385f60" } }