Skip to content

Commit

Permalink
Fix "Customize in Addon Settings" block colors button
Browse files Browse the repository at this point in the history
  • Loading branch information
GarboMuffin committed Feb 5, 2024
1 parent ac122e9 commit 605de33
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 9 deletions.
21 changes: 17 additions & 4 deletions src-main/windows/addons.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,10 @@ const prompts = require('../prompts');
const {writeFileAtomic} = require('../atomic-write-stream');

class AddonsWindow extends BaseWindow {
constructor () {
/**
* @param {string|null} search
*/
constructor (search) {
super();

this.window.on('page-title-updated', event => {
Expand Down Expand Up @@ -41,7 +44,7 @@ class AddonsWindow extends BaseWindow {
await writeFileAtomic(result.filePath, settings);
});

this.loadURL(`tw-editor://./addons/addons.html`);
this.loadURL(`tw-editor://./addons/addons.html${search ? `#${search}` : ''}`);
}

getDimensions () {
Expand All @@ -63,8 +66,18 @@ class AddonsWindow extends BaseWindow {
return '#111111';
}

static show () {
const window = BaseWindow.singleton(AddonsWindow);
static show (search) {
// If we were asked to show a specific search query, always open a new window
// Even if the search was the same as an existing window, we don't have a way to
// know if the user changed the search.
let window;
if (search) {
const windows = BaseWindow.getWindowsByClass(AddonsWindow);
windows.forEach(i => i.window.destroy());
window = new AddonsWindow(search);
} else {
window = BaseWindow.singleton(AddonsWindow);
}
window.show();
}
}
Expand Down
4 changes: 2 additions & 2 deletions src-main/windows/editor.js
Original file line number Diff line number Diff line change
Expand Up @@ -368,8 +368,8 @@ class EditorWindow extends ProjectRunningWindow {
EditorWindow.newWindow();
});

ipc.handle('open-addon-settings', () => {
AddonsWindow.show();
ipc.handle('open-addon-settings', (event, search) => {
AddonsWindow.show(search);
});

ipc.handle('open-desktop-settings', () => {
Expand Down
2 changes: 1 addition & 1 deletion src-preload/editor.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ contextBridge.exposeInMainWorld('EditorPreload', {
setLocale: (locale) => ipcRenderer.sendSync('set-locale', locale),
setChanged: (changed) => ipcRenderer.invoke('set-changed', changed),
openNewWindow: () => ipcRenderer.invoke('open-new-window'),
openAddonSettings: () => ipcRenderer.invoke('open-addon-settings'),
openAddonSettings: (search) => ipcRenderer.invoke('open-addon-settings', search),
openPackager: () => ipcRenderer.invoke('open-packager'),
openDesktopSettings: () => ipcRenderer.invoke('open-desktop-settings'),
openPrivacy: () => ipcRenderer.invoke('open-privacy'),
Expand Down
4 changes: 2 additions & 2 deletions src-renderer-webpack/editor/gui/desktop-hoc.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ const getDefaultProjectTitle = (filename) => {
return match[1];
};

const handleClickAddonSettings = () => {
EditorPreload.openAddonSettings();
const handleClickAddonSettings = (search) => {
EditorPreload.openAddonSettings(typeof search === 'string' ? search : null);
};

const handleClickNewWindow = () => {
Expand Down

0 comments on commit 605de33

Please sign in to comment.