AtomMaterialUI / material-theme-issues

Issues Repository for the Material Theme UI plugin for JetBrains
Other
62 stars 4 forks source link

[Bug]: Exception in 2023.3 #426

Closed maicol07 closed 7 months ago

maicol07 commented 11 months ago

Describe the bug

Exception when IDE is launched

To Reproduce

  1. Install latest IDE EAP
  2. Install latest Material Theme UI EAP
  3. Open IDE
  4. See exception

Expected behavior

No exceptions

Material Theme Version

8.13.2

IDE

PHPStorm

System Info

PhpStorm 2023.3 EAP
Build #PS-233.11361.11, built on October 27, 2023
Licensed to PhpStorm EAP user: Maicol Battistini
Expiration date: November 26, 2023
Runtime version: 17.0.9+7-b1087.3 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Linux 5.15.133.1-microsoft-standard-wsl2
GC: G1 Young Generation, G1 Old Generation
Memory: 6452M
Cores: 24
Registry:
  editor.focus.mode.color.light=d2d4d5
  ide.editor.tab.selection.animation=true
  debugger.new.tool.window.layout=true
  run.processes.with.pty=TRUE
  ide.experimental.ui=true
  ide.balloon.shadow.size=0
  editor.focus.mode.color.dark=d2d4d5
Non-Bundled Plugins:
  com.github.patou.gitmoji (1.13.0)
  com.github.lppedd.idea-conventional-commit (0.22.0)
  com.fwdekker.randomness (2.7.7)
  com.github.weisj.darkmode (1.8.0-2023.3)
  com.github.exidcuter.dockerregistryexplorer (1.1.0-stable)
  dev.meanmail.plugin.nginx-intellij-plugin-pro (2022.1.1)
  com.nasller.CodeGlancePro (1.7.6-SNAPSHOT-2023-09-26T23-40)
  com.obroom.plugin.smartsearch (2023.10.1)
  awesome.console (0.1337.12)
  com.renemaas.intellij.zipper (1.1.0)
  com.obroom.plugin.toolset (2023.10.1)
  com.github.copilot (1.3.3.3572)
  org.jetbrains.plugins.stylus (233.11361.11)
  com.khmelyuk.multirun (1.13)
  com.intellij.ideolog (222.1.0.0)
  String Manipulation (9.11.3)
  siosio.EmojiCommitLogViewer (1.0.7)
  com.shuzijun.markdown-editor (2.0.5)
  lermitage.intellij.extra.icons (2023.2.12-231)
  com.github.camork.fileExpander (2.3)
  hu.hawser.co-author-plugin (2.3)
  com.wakatime.intellij.plugin (14.2.3)
  com.github.shiraji.emoji (3.1.0)
  GrepConsole (12.22.1-IJ2021.1)
  com.intellij.grazie.pro (0.3.261)
  pro.bashsupport (3.3.3.233)
  com.github.yunabraska.githubworkflowplugin (3.1.0)
  com.intellij.ml.llm (233.11361.11)
  com.virtuslab.git-machete (4.1.0)
  com.github.jk1.ytplugin (2023.1.64)
  mdx.js (233.11361.11)
  de.sist.gitlab (2.14.2)
  zielu.gittoolbox (500.0.22+222)
  mobi.hsz.idea.gitignore (4.5.2)
  com.intellij.plugins.html.instantEditing (233.11361.11)
  com.chrisrm.idea.MaterialThemeUI (8.13.2)
  com.funivan.idea.phpClean (2023.04.01)
  lv.midiana.misc.phpstorm-plugins.deep-keys (2022.08.03.001)
  ru.adelf.idea.dotenv (2023.3)
  NEON support (0.5.4)
  nl.deschepers.laraveltinker (2.6.1)
  net.king2500.plugins.PhpAdvancedAutoComplete (1.1.0)
  com.kalessil.phpStorm.phpInspectionsUltimate-mp (2023.1)
  de.espend.idea.php.toolbox (6.2.0)
  de.espend.idea.php.annotation (9.4.0)
  fr.adrienbrault.idea.symfony2plugin (2022.1.259)
  de.espend.idea.php.drupal (0.6.0)
  org.masamotod.idea.Drupal8NamespaceDetector (1.0)
  net.rentalhost.plugins.php.hammer (0.27.0)
  org.endpointdeps.EndpointDependencies (1.3)
  dev.nybroe.collector (0.4.0)
  com.laravel_idea.plugin (7.4.3.233)
  com.mallowigi (94.1.0)
Current Desktop: Undefined

Logs/Screenshots

java.lang.Throwable: org.intellij.plugins.markdown.extensions.common.highlighter.HtmlCacheManager is registered as application service, but requested as project one
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:376)
    at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:1083)
    at com.intellij.serviceContainer.ComponentManagerImpl.getServiceIfCreated(ComponentManagerImpl.kt:1007)
    at org.intellij.plugins.markdown.extensions.common.highlighter.HtmlCacheManager$InvalidateHtmlCacheLafListener.lookAndFeelChanged(HtmlCacheManager.kt:79)
    at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:700)
    at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:664)
    at com.intellij.util.messages.impl.MessageBusImplKt.executeOrAddToQueue(MessageBusImpl.kt:492)
    at com.intellij.util.messages.impl.MessagePublisher.publish$intellij_platform_core(MessageBusImpl.kt:472)
    at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:449)
    at jdk.proxy2/jdk.proxy2.$Proxy60.lookAndFeelChanged(Unknown Source)
    at com.intellij.ide.ui.laf.LafManagerImpl.notifyLookAndFeelChanged(LafManagerImpl.kt:576)
    at com.intellij.ide.ui.laf.LafManagerImpl.updateUI(LafManagerImpl.kt:567)
    at com.intellij.ide.ui.laf.LafManagerImpl.updateUI(LafManagerImpl.kt:541)
    at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:350)
    at com.mallowigi.idea.MTThemeManager.activateLAF(MTThemeManager.kt:286)
    at com.mallowigi.idea.MTThemeManager.activateLAF(MTThemeManager.kt:309)
    at com.mallowigi.idea.MTLafComponent.activateLaf(MTLafComponent.kt:122)
    at com.mallowigi.idea.MTLafComponent.appStarted$lambda$1(MTLafComponent.kt:79)
    at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
    at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:22)
    at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:857)
    at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:477)
    at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:101)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithEnabledImplicitRead(RwLockHolder.kt:75)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithImplicitRead(RwLockHolder.kt:67)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWithImplicitRead(ApplicationImpl.java:1444)
    at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
    at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:124)
    at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:44)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739)
    at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:695)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$12(IdeEventQueue.kt:589)
    at com.intellij.openapi.application.impl.RwLockHolder.runWithoutImplicitRead(RwLockHolder.kt:44)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:589)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:72)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:355)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:354)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:793)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:354)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:349)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1014)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1014)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:349)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:862)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:391)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
maichmueller commented 10 months ago

same problem on CLion 2023.2.2. Crashes the app after throwing the exception:

Caused by: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'str' of com/intellij/ui/ColorUtil.fromHex must not be null
    at com.intellij.ui.ColorUtil.$$$reportNull$$$0(ColorUtil.java)
    at com.intellij.ui.ColorUtil.fromHex(ColorUtil.java)
    at com.mallowigi.idea.themes.themes.MTAbstractTheme.applyAccentMode(MTAbstractTheme.kt:361)
    at com.mallowigi.idea.MTThemeManager.applyAccentMode(MTThemeManager.kt:425)
    at com.mallowigi.idea.MTThemeManager.applyAccents(MTThemeManager.kt:395)
    at com.mallowigi.idea.themes.themes.MTAbstractTheme.activate(MTAbstractTheme.kt:182)
    at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:324)
    at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:275)
    at com.mallowigi.idea.MTLafComponent.activateTheme(MTLafComponent.kt:255)
    at com.mallowigi.idea.MTLafComponent.onSettingsChanged(MTLafComponent.kt:223)
    at com.mallowigi.idea.MTLafComponent$initComponent$2.configChanged(MTLafComponent.kt:154)
    at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:699)
    at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:663)
    ... 56 more
mallowigi commented 10 months ago

Can you open the material_theme.xml file in your config folder, then delete the entry that has the Accent Mode.

maichmueller commented 10 months ago

deleted both entries for accent color (secondary and normal) and this stopped clion from crashing at least. However, the entire theme is still breaking clion in...strange ways.

Screenshot 2023-11-12 at 15 50 39

There is still this error exception coming up:

Caused by: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'str' of com/intellij/ui/ColorUtil.fromHex must not be null
    at com.intellij.ui.ColorUtil.$$$reportNull$$$0(ColorUtil.java)
    at com.intellij.ui.ColorUtil.fromHex(ColorUtil.java)
    at com.mallowigi.idea.config.application.MTConfig.getHighlightColor(MTConfig.java:872)
    at com.mallowigi.idea.config.MTConfigManager.getTabHighlightColor(MTConfigManager.kt:55)
    at com.mallowigi.idea.tabs.MTTabsPainter.getTabUnderlineColor(MTTabsPainter.kt:171)
    at com.mallowigi.idea.tabs.MTTabsPainter.paintUnderline(MTTabsPainter.kt:126)
    ... 76 more
mallowigi commented 10 months ago

This time the issue seems to be on the tab highlighting color...

Maybe your setting file got corrupted upon release? That's strange... are you using sync settings by any chance?

In any case please print here you settings file.

Angelin01 commented 10 months ago

I was having the same issue with Intellij, and I do use settings sync. Here's my current "working" file:

<application>
  <component name="MaterialThemeConfig">
    <option name="compactTables" value="true" />
    <option name="compactDropdowns" value="true" />
    <option name="isCompactMenus" value="true" />
    <option name="isCompactStatusBar" value="true" />
    <option name="isCompactTables" value="true" />
    <option name="pristineConfig" value="false" />
    <option name="settingsSelectedTab" value="4" />
    <option name="accentColor" value="7e57c2" />
    <option name="highlightColor" />
    <option name="focusColor" />
    <option name="selectedTheme" value="NIGHT_OWL" />
    <option name="userId" value="53c4bd6:18a8c127078:-8000" />
    <option name="version" value="8.12.6" />
  </component>
</application>

I tried commenting the line for accentColor, but that did nothing. I did notice a second line, with an option similar to secondAccent (I am sorry, I don't have a backup to share), with no value defined. I commented that one out too and upon loading the setting was removed from the file and Intellij loaded fine.

Looking at the error, maybe that second accent was being set to null by the configuration file? A missing null check somewhere, perhaps?

mallowigi commented 10 months ago

The highlightColor and focusColor are empty as well. Try to remove those too

-- Elior On 13 Nov 2023 at 22:13 +0200, Angelo Ross @.***>, wrote:

I was having the same issue with Intellij, and I do use settings sync. Here's my current "working" file:

I tried commenting the line for accentColor, but that did nothing. I did notice a second line, with an option similar to secondAccent (I am sorry, I don't have a backup to share), with no value defined. I commented that one out too and upon loading the setting was removed from the file and Intellij loaded fine. Looking at the error, maybe that second accent was being set to null by the configuration file? A missing null check somewhere, perhaps? — Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>

Angelin01 commented 10 months ago

I am now almost certain this behavior is related to settings sync. I switched computers and used RustRover for a bit, and when coming back to my current one, with Intellij, the settings had returned to having the empty secondAccentColor:

<application>
  <component name="MaterialThemeConfig">
    <option name="compactTables" value="true" />
    <option name="compactDropdowns" value="true" />
    <option name="isCompactMenus" value="true" />
    <option name="isCompactStatusBar" value="true" />
    <option name="isCompactTables" value="true" />
    <option name="pristineConfig" value="false" />
    <option name="settingsSelectedTab" value="4" />
    <option name="accentColor" value="7e57c2" />
    <option name="secondAccentColor" />
    <option name="highlightColor" />
    <option name="focusColor" />
    <option name="selectedTheme" value="NIGHT_OWL" />
    <option name="userId" value="53c4bd6:18a8c127078:-8000" />
    <option name="version" value="8.12.6" />
  </component>
</application>
I had also gotten an exception on load. ``` Couldn't apply settings. Settings sync will be disabled. java.lang.RuntimeException: java.lang.RuntimeException: Cannot invoke (class=, method=configChanged, topic=Material Theme Config save) at com.intellij.openapi.application.impl.LaterInvocator.invokeAndWait(LaterInvocator.java:131) at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:471) at com.intellij.openapi.application.ActionsKt.invokeAndWaitIfNeeded(actions.kt:54) at com.intellij.openapi.application.ActionsKt.invokeAndWaitIfNeeded$default(actions.kt:47) at com.intellij.settingsSync.SettingsSyncIdeMediatorImpl.writeStatesToAppConfig(SettingsSyncIdeMediatorImpl.kt:242) at com.intellij.settingsSync.SettingsSyncIdeMediatorImpl.applyToIde(SettingsSyncIdeMediatorImpl.kt:70) at com.intellij.settingsSync.SettingsSyncBridge.pushToIde(SettingsSyncBridge.kt:419) at com.intellij.settingsSync.SettingsSyncBridge.mergeAndPush(SettingsSyncBridge.kt:352) at com.intellij.settingsSync.SettingsSyncBridge.processPendingEvents(SettingsSyncBridge.kt:235) at com.intellij.settingsSync.SettingsSyncBridge.access$processPendingEvents(SettingsSyncBridge.kt:27) at com.intellij.settingsSync.SettingsSyncBridge$updateObject$1.run(SettingsSyncBridge.kt:44) at com.intellij.util.ui.update.Update.runUpdate(Update.java:109) at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:348) at com.intellij.util.ui.update.MergingUpdateQueue.execute(MergingUpdateQueue.java:338) at com.intellij.util.ui.update.MergingUpdateQueue.doFlush(MergingUpdateQueue.java:295) at com.intellij.util.ui.update.MergingUpdateQueue.flush(MergingUpdateQueue.java:277) at com.intellij.util.ui.update.MergingUpdateQueue.showNotify(MergingUpdateQueue.java:223) at com.intellij.util.ui.update.MergingUpdateQueue.activate(MergingUpdateQueue.java:186) at com.intellij.settingsSync.SettingsSyncBridge.initialize$intellij_settingsSync(SettingsSyncBridge.kt:75) at com.intellij.settingsSync.SettingsSynchronizer.initializeSyncing$lambda$0(SettingsSynchronizer.kt:73) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:272) at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:249) at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:31) at com.intellij.util.concurrency.BoundedTaskExecutor$1.executeFirstTaskAndHelpQueue(BoundedTaskExecutor.java:227) at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:218) at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:215) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699) at java.base/java.lang.Thread.run(Thread.java:840) Caused by: java.lang.RuntimeException: Cannot invoke (class=, method=configChanged, topic=Material Theme Config save) at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:676) at com.intellij.util.messages.impl.MessageBusImplKt.deliverMessage(MessageBusImpl.kt:422) at com.intellij.util.messages.impl.MessageBusImplKt.pumpWaiting(MessageBusImpl.kt:401) at com.intellij.util.messages.impl.MessageBusImplKt.access$pumpWaiting(MessageBusImpl.kt:1) at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:460) at jdk.proxy5/jdk.proxy5.$Proxy143.configChanged(Unknown Source) at com.mallowigi.idea.config.application.MTConfig.fireChanged(MTConfig.java:461) at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:458) at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:490) at com.mallowigi.idea.config.application.MTConfig.loadState(MTConfig.java:439) at com.mallowigi.idea.config.application.MTConfig.loadState(MTConfig.java:65) at com.intellij.configurationStore.ComponentStoreImpl.doInitComponent(ComponentStoreImpl.kt:488) at com.intellij.configurationStore.ComponentStoreImpl.initComponent(ComponentStoreImpl.kt:415) at com.intellij.configurationStore.ComponentStoreImpl.reloadState(ComponentStoreImpl.kt:633) at com.intellij.configurationStore.ComponentStoreImpl.reinitComponents(ComponentStoreImpl.kt:676) at com.intellij.configurationStore.ComponentReloadingKt.reloadComponents(componentReloading.kt:32) at com.intellij.settingsSync.SettingsSyncIdeMediatorImpl$writeStatesToAppConfig$3.invoke(SettingsSyncIdeMediatorImpl.kt:244) at com.intellij.settingsSync.SettingsSyncIdeMediatorImpl$writeStatesToAppConfig$3.invoke(SettingsSyncIdeMediatorImpl.kt:242) at com.intellij.openapi.application.ActionsKt.invokeAndWaitIfNeeded$lambda$4(actions.kt:54) at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:208) at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21) at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:190) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:861) at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:478) at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:100) at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:79) at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:121) at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:41) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:690) at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:593) at com.intellij.openapi.application.impl.ApplicationImpl.runWithoutImplicitRead(ApplicationImpl.java:1485) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:593) at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363) at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:997) at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105) at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:997) at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:861) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92) Caused by: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'str' of com/intellij/ui/ColorUtil.fromHex must not be null at com.intellij.ui.ColorUtil.$$$reportNull$$$0(ColorUtil.java) at com.intellij.ui.ColorUtil.fromHex(ColorUtil.java) at com.mallowigi.idea.themes.themes.MTAbstractTheme.applyAccentMode(MTAbstractTheme.kt:361) at com.mallowigi.idea.MTThemeManager.applyAccentMode(MTThemeManager.kt:425) at com.mallowigi.idea.MTThemeManager.applyAccents(MTThemeManager.kt:395) at com.mallowigi.idea.themes.themes.MTAbstractTheme.activate(MTAbstractTheme.kt:182) at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:324) at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:275) at com.mallowigi.idea.MTLafComponent.activateTheme(MTLafComponent.kt:255) at com.mallowigi.idea.MTLafComponent.onSettingsChanged(MTLafComponent.kt:223) at com.mallowigi.idea.MTLafComponent$initComponent$2.configChanged(MTLafComponent.kt:154) at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:699) at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:663) ... 56 more ```

Removing the empty values stopped any errors from happening. I pushed the new settings, hopefully this stops it from happening.

Could it be related to settings sync between IDEs of different families? Or different OSes?

mallowigi commented 10 months ago

Yes, that was my assumption. There are quite a few problems with that sync

ghughes27 commented 10 months ago

Experienced this bug for IntelliJ 2023.2.5. Initial intuition was that it was related with IDE sync with laptop, thread seems to support that. Occurred after updating the plugin on desktop. Solution was to remove the plugin from %APPDATA%\JetBrains\\plugins and remove all related sync settings related to Material, which was probably a brute force approach

changshunxu520 commented 10 months ago

How to solve this problem? I can’t use the theme. Internal error. Please refer to https://jb.gg/ide/critical-startup-errors

java.lang.RuntimeException: Cannot invoke (class=MTLafComponent, method=appStarted, topic=AppLifecycleListener) at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:676) at com.intellij.util.messages.impl.MessageBusImplKt.deliverMessage(MessageBusImpl.kt:422) at com.intellij.util.messages.impl.MessageBusImplKt.pumpWaiting(MessageBusImpl.kt:401) at com.intellij.util.messages.impl.MessageBusImplKt.access$pumpWaiting(MessageBusImpl.kt:1) at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:460) at jdk.proxy2/jdk.proxy2.$Proxy67.appStarted(Unknown Source) at com.intellij.idea.IdeStarter$start$2.invokeSuspend(IdeStarter.kt:74) at com.intellij.idea.IdeStarter$start$2.invoke(IdeStarter.kt) at com.intellij.idea.IdeStarter$start$2.invoke(IdeStarter.kt) at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:78) at kotlinx.coroutines.CoroutineScopeKt.coroutineScope(CoroutineScope.kt:264) at com.intellij.idea.IdeStarter.start$suspendImpl(IdeStarter.kt:66) at com.intellij.idea.IdeStarter.start(IdeStarter.kt) at com.intellij.ide.bootstrap.ApplicationLoader.initApplicationImpl(ApplicationLoader.kt:90) at com.intellij.ide.bootstrap.ApplicationLoader$initApplicationImpl$1.invokeSuspend(ApplicationLoader.kt) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697) at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684) Caused by: java.lang.RuntimeException: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'str' of com/intellij/ui/ColorUtil.fromHex must not be null at com.intellij.openapi.application.impl.LaterInvocator.invokeAndWait(LaterInvocator.java:131) at com.intellij.openapi.application.impl.ApplicationImpl.invokeAndWait(ApplicationImpl.java:471) at com.mallowigi.idea.MTLafComponent.appStarted(MTLafComponent.kt:76) at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:696) at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:663) ... 20 more Caused by: java.lang.IllegalArgumentException: Argument for @NotNull parameter 'str' of com/intellij/ui/ColorUtil.fromHex must not be null at com.intellij.ui.ColorUtil.$$$reportNull$$$0(ColorUtil.java) at com.intellij.ui.ColorUtil.fromHex(ColorUtil.java) at com.mallowigi.idea.themes.themes.MTAbstractTheme.applyAccentMode(MTAbstractTheme.kt:361) at com.mallowigi.idea.MTThemeManager.applyAccentMode(MTThemeManager.kt:425) at com.mallowigi.idea.MTThemeManager.applyAccents(MTThemeManager.kt:395) at com.mallowigi.idea.themes.themes.MTAbstractTheme.activate(MTAbstractTheme.kt:182) at com.mallowigi.idea.MTThemeManager.activate(MTThemeManager.kt:324) at com.mallowigi.idea.MTThemeManager.activateLAF(MTThemeManager.kt:288) at com.mallowigi.idea.MTThemeManager.activateLAF(MTThemeManager.kt:311) at com.mallowigi.idea.MTLafComponent.activateLaf(MTLafComponent.kt:121) at com.mallowigi.idea.MTLafComponent.appStarted$lambda$1(MTLafComponent.kt:78) at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:208) at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21) at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:190) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:861) at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:478) at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:100) at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:79) at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:121) at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:41) at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:792) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:739) at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:733) at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:761) at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:690) at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:593) at com.intellij.openapi.application.impl.ApplicationImpl.runWithoutImplicitRead(ApplicationImpl.java:1485) at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:593) at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368) at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368) at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363) at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:997) at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105) at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:997) at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363) at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:861) at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405) at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207) at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128) at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113) at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105) at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)


Your JRE: 17.0.9+7-b1000.46 amd64 (JetBrains s.r.o.) C:\soft\Jetbrains\IntelliJ IDEA Ultimate\jbr

Security check
mallowigi commented 10 months ago

What version of the IDE ?

Did you take a look at what people posted in the thread? Please try to follow what was discussed, mostly regarding making sure that all "color" properties either contain a color in hexadecimal, or remove the line entirely

changshunxu520 commented 10 months ago

This problem will be triggered when you upgrade to the idea Eap version and then downgrade to the 2023.2.5 version. I tried deleting the theme files synchronized by idea itself, but this problem cannot be solved unless you delete the synchronized files of all software that uses this theme (Webstorm, DataGrip, idea), and then reconfigure the settings of this plug-in. But this operation is so painful. All my Jetbrains software has to reconfigure this theme.

mallowigi commented 10 months ago

I don't want to issue a new update to the release version knowing the next release is around the corner. If downgrade is the issue, then don't downgrade.

fxxtyzw2012 commented 9 months ago

Can you open the material_theme.xml file in your config folder, then delete the entry that has the Accent Mode.

This method worked for me

zerubeus commented 9 months ago

where to find this file? material_theme.xml

petr-nehez commented 9 months ago

For me it started when I installed 2023.3 side by side with 2023.2.5 and then after restarting of 2023.2 this one starts to throw the error as well. It was quite pain to make it work again because empty color fields were showing up again and again even after manual deletion. One more applying of default IJ theme and then MT theme seems to fix the problem in both versions.

I did nothing in 2023.2, I just installed 2023.3 and it synced the settings and at that moment it had to break something in sync logic because I started to get the error after 2023.2 restart.

piRGoif commented 7 months ago

Hello, I'm using PHPStorm and have this problem since upgrade to 2023.3. I also use the settings sync. However I cannot find anywhere ? Can it be named differently ? (note : I'm using Windows 10)

mmx1997 commented 1 month ago

I can not find a solution from this page,can anyone tell me how to resolve this Problem?thx