diff --git a/arduino-ide-extension/src/browser/arduino-ide-frontend-module.ts b/arduino-ide-extension/src/browser/arduino-ide-frontend-module.ts
index 22ea313f2..4671757ab 100644
--- a/arduino-ide-extension/src/browser/arduino-ide-frontend-module.ts
+++ b/arduino-ide-extension/src/browser/arduino-ide-frontend-module.ts
@@ -323,8 +323,8 @@ import { NewCloudSketch } from './contributions/new-cloud-sketch';
 import { SketchbookCompositeWidget } from './widgets/sketchbook/sketchbook-composite-widget';
 import { WindowTitleUpdater } from './theia/core/window-title-updater';
 import { WindowTitleUpdater as TheiaWindowTitleUpdater } from '@theia/core/lib/browser/window/window-title-updater';
-import { ThemeService } from './theia/core/theming';
-import { ThemeService as TheiaThemeService } from '@theia/core/lib/browser/theming';
+import { ThemeServiceWithDB } from './theia/core/theming';
+import { ThemeServiceWithDB as TheiaThemeServiceWithDB } from '@theia/monaco/lib/browser/monaco-indexed-db';
 import { MonacoThemingService } from './theia/monaco/monaco-theming-service';
 import { MonacoThemingService as TheiaMonacoThemingService } from '@theia/monaco/lib/browser/monaco-theming-service';
 import { TypeHierarchyServiceProvider } from './theia/typehierarchy/type-hierarchy-service';
@@ -959,8 +959,8 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
   rebind(TheiaWindowTitleUpdater).toService(WindowTitleUpdater);
 
   // register Arduino themes
-  bind(ThemeService).toSelf().inSingletonScope();
-  rebind(TheiaThemeService).toService(ThemeService);
+  bind(ThemeServiceWithDB).toSelf().inSingletonScope();
+  rebind(TheiaThemeServiceWithDB).toService(ThemeServiceWithDB);
   bind(MonacoThemingService).toSelf().inSingletonScope();
   rebind(TheiaMonacoThemingService).toService(MonacoThemingService);
 
diff --git a/arduino-ide-extension/src/browser/theia/core/theming.ts b/arduino-ide-extension/src/browser/theia/core/theming.ts
index 4438d94e8..9f95f780d 100644
--- a/arduino-ide-extension/src/browser/theia/core/theming.ts
+++ b/arduino-ide-extension/src/browser/theia/core/theming.ts
@@ -1,6 +1,6 @@
-import { ThemeService as TheiaThemeService } from '@theia/core/lib/browser/theming';
 import type { Theme } from '@theia/core/lib/common/theme';
 import { injectable } from '@theia/core/shared/inversify';
+import { ThemeServiceWithDB as TheiaThemeServiceWithDB } from '@theia/monaco/lib/browser/monaco-indexed-db';
 
 export namespace ArduinoThemes {
   export const Light: Theme = {
@@ -18,7 +18,7 @@ export namespace ArduinoThemes {
 }
 
 @injectable()
-export class ThemeService extends TheiaThemeService {
+export class ThemeServiceWithDB extends TheiaThemeServiceWithDB {
   protected override init(): void {
     this.register(ArduinoThemes.Light, ArduinoThemes.Dark);
     super.init();
diff --git a/arduino-ide-extension/src/browser/utils/window.ts b/arduino-ide-extension/src/browser/utils/window.ts
index 89a2f901a..54e046724 100644
--- a/arduino-ide-extension/src/browser/utils/window.ts
+++ b/arduino-ide-extension/src/browser/utils/window.ts
@@ -5,11 +5,3 @@
 export function setURL(url: URL, data: any = {}): void {
   history.pushState(data, '', url);
 }
-
-/**
- * If available from the `window` object, then it means, the IDE2 has successfully patched the `MonacoThemingService#init` static method,
- * and can wait the custom theme registration.
- */
-export const MonacoThemeServiceIsReady = Symbol(
-  '@arduino-ide#monaco-theme-service-is-ready'
-);