diff --git a/src/interface/hooks/ThemeManagment.tsx b/src/interface/hooks/ThemeManagment.tsx index fa2059f5..2d68b7ac 100644 --- a/src/interface/hooks/ThemeManagment.tsx +++ b/src/interface/hooks/ThemeManagment.tsx @@ -86,6 +86,10 @@ export const sendThemeUpdate = debounce((updatedTheme: CustomTheme, saveTheme?: body: updatedThemeCopy, save: saveTheme, }); + + if (saveTheme) { + browser.runtime.sendMessage({ type: 'currentTab', info: 'CloseThemeCreator' }) + } }) .catch((error) => { console.error('Error converting image blobs to base64:', error); diff --git a/src/interface/pages/ThemeCreator.tsx b/src/interface/pages/ThemeCreator.tsx index 549616a7..e1207c37 100644 --- a/src/interface/pages/ThemeCreator.tsx +++ b/src/interface/pages/ThemeCreator.tsx @@ -78,8 +78,8 @@ function ThemeCreator({ themeID }: { themeID?: string }) { })); } - const saveTheme = () => { - sendThemeUpdate(theme, true); + const saveTheme = async () => { + sendThemeUpdate(theme, true) }; useEffect(() => { diff --git a/src/seqta/utils/listeners/MessageListener.ts b/src/seqta/utils/listeners/MessageListener.ts index f89c4db0..d4fe6875 100644 --- a/src/seqta/utils/listeners/MessageListener.ts +++ b/src/seqta/utils/listeners/MessageListener.ts @@ -2,7 +2,7 @@ import browser from 'webextension-polyfill' import { MenuOptionsOpen, OpenMenuOptions, OpenWhatsNewPopup, closeSettings } from '../../../SEQTA'; import { UpdateThemePreview, deleteTheme, disableTheme, getAvailableThemes, saveTheme, setTheme } from '../../ui/Themes'; -import { OpenThemeCreator } from '../../ui/ThemeCreator'; +import { CloseThemeCreator, OpenThemeCreator } from '../../ui/ThemeCreator'; export class MessageHandler { constructor() { @@ -70,6 +70,11 @@ export class MessageHandler { closeSettings(); sendResponse({ status: 'success' }); break; + + case 'CloseThemeCreator': + CloseThemeCreator(); + sendResponse({ status: 'success' }); + break; default: console.log('Unknown request info:', request.info);