dracula / jetbrains

🧛🏻‍♂️ Dark theme for JetBrains IDEs (IntelliJ IDEA, PyCharm, RubyMine, PhpStorm, WebStorm, etc.)
https://draculatheme.com/jetbrains
MIT License
771 stars 35 forks source link

Dracula theme not compatible with android studio 2020.3.1 #54

Closed zzh3321 closed 3 years ago

zzh3321 commented 3 years ago

Dracula theme is installed but not found in the theme settings

WhiteVermouth commented 3 years ago

I can't reproduce on my machine. I installed Android Studio 2020.3.1 and Dracula Theme 1.11.5. Try to restart your AS after Dracula Theme plugin installed.

domyn commented 3 years ago

I can confirm - after installing the theme and restarting, the theme is not available in Settings > Appearance & Behavior > Appearance. Tried with versions 1.11.2 - 1.11.5 with no success. OS: Windows 11

domyn commented 3 years ago

Attaching trace of error:

2021-07-29 07:35:12,863 [   1353]   WARN - ntellij.ide.ui.UIThemeProvider - error loading UITheme '/themes/Dracula.theme.json', pluginDescriptor=PluginDescriptor(name=Dracula Theme, id=com.vermouthx.idea, path=C:\Users\msacc\AppData\Roaming\Google\AndroidStudio2020.3\plugins\dracula-theme, version=1.11.5)
java.lang.reflect.InaccessibleObjectException: Unable to make private java.lang.module.Configuration() accessible: module java.base does not "opens java.lang.module" to unnamed module @173260fa
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:340)
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:280)
        at java.base/java.lang.reflect.Constructor.checkCanSetAccessible(Constructor.java:189)
        at java.base/java.lang.reflect.Constructor.setAccessible(Constructor.java:182)
        at com.google.gson.internal.ConstructorConstructor.newDefaultConstructor(ConstructorConstructor.java:101)
        at com.google.gson.internal.ConstructorConstructor.get(ConstructorConstructor.java:83)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:99)
        at com.google.gson.Gson.getAdapter(Gson.java:423)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:115)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:164)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100)
        at com.google.gson.Gson.getAdapter(Gson.java:423)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:115)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:164)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100)
        at com.google.gson.Gson.getAdapter(Gson.java:423)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:115)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:164)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100)
        at com.google.gson.Gson.getAdapter(Gson.java:423)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.createBoundField(ReflectiveTypeAdapterFactory.java:115)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.getBoundFields(ReflectiveTypeAdapterFactory.java:164)
        at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.create(ReflectiveTypeAdapterFactory.java:100)
        at com.google.gson.Gson.getAdapter(Gson.java:423)
        at com.google.gson.Gson.fromJson(Gson.java:886)
        at com.google.gson.Gson.fromJson(Gson.java:825)
        at com.intellij.ide.ui.UITheme.loadFromJson(UITheme.java:121)
        at com.intellij.ide.ui.UITheme.loadFromJson(UITheme.java:113)
        at com.intellij.ide.ui.UIThemeProvider.createTheme(UIThemeProvider.java:39)
        at com.intellij.ide.ui.laf.LafManagerImpl.lambda$computeLafList$4(LafManagerImpl.java:187)
        at com.intellij.openapi.extensions.impl.ExtensionProcessingHelper.forEachExtensionSafe(ExtensionProcessingHelper.java:33)
        at com.intellij.openapi.extensions.ExtensionPointName.forEachExtensionSafe(ExtensionPointName.java:49)
        at com.intellij.ide.ui.laf.LafManagerImpl.computeLafList(LafManagerImpl.java:185)
        at com.intellij.ide.ui.laf.LafManagerImpl.lambda$new$0(LafManagerImpl.java:101)
        at com.intellij.util.concurrency.SynchronizedClearableLazy.getValue(SynchronizedClearableLazy.kt:37)
        at com.intellij.ide.ui.laf.LafManagerImpl.findLaf(LafManagerImpl.java:334)
        at com.intellij.ide.ui.laf.LafManagerImpl.loadLafState(LafManagerImpl.java:324)
        at com.intellij.ide.ui.laf.LafManagerImpl.loadState(LafManagerImpl.java:309)
        at com.intellij.ide.ui.laf.LafManagerImpl.loadState(LafManagerImpl.java:71)
        at com.intellij.configurationStore.ComponentStoreImpl.doInitComponent(ComponentStoreImpl.kt:445)
        at com.intellij.configurationStore.ComponentStoreImpl.initComponent(ComponentStoreImpl.kt:377)
        at com.intellij.configurationStore.ComponentStoreImpl.initComponent(ComponentStoreImpl.kt:124)
        at com.intellij.configurationStore.ComponentStoreWithExtraComponents.initComponent(ComponentStoreWithExtraComponents.kt:49)
        at com.intellij.serviceContainer.ComponentManagerImpl.initializeComponent$intellij_platform_serviceContainer(ComponentManagerImpl.kt:402)
        at com.intellij.serviceContainer.MyComponentAdapter.doCreateInstance(MyComponentAdapter.kt:40)
        at com.intellij.serviceContainer.BaseComponentAdapter.getInstanceUncached(BaseComponentAdapter.kt:113)
        at com.intellij.serviceContainer.BaseComponentAdapter.getInstance(BaseComponentAdapter.kt:67)
        at com.intellij.serviceContainer.BaseComponentAdapter.getInstance$default(BaseComponentAdapter.kt:60)
        at com.intellij.serviceContainer.ComponentManagerImpl.createComponents(ComponentManagerImpl.kt:304)
        at com.intellij.openapi.application.impl.ApplicationImpl.lambda$loadComponents$5(ApplicationImpl.java:353)
        at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:178)
        at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:658)
        at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:610)
        at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:65)
        at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:165)
        at com.intellij.openapi.application.impl.ApplicationImpl.loadComponents(ApplicationImpl.java:353)
        at com.intellij.idea.ApplicationLoader$startApp$6$loadComponentInEdtFuture$1.run(ApplicationLoader.kt:200)
        at java.base/java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1736)
        at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:216)
        at com.intellij.openapi.application.TransactionGuardImpl.access$200(TransactionGuardImpl.java:24)
        at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:199)
        at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:828)
        at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:330)
        at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:85)
        at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:134)
        at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
        at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:190)
        at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
        at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
        at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
        at java.base/java.security.AccessController.doPrivileged(Native Method)
        at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
        at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
        at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:421)
        at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
        at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
        at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
        at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

This may be not an error of Dracula theme as the same error raises in bundled High Contrast and Light themes.

zzh3321 commented 3 years ago

I have uninstalled AS, deleted all configuration files, and reinstalled AS and Dracula, but I still cannot find Dracula in the Settings. OS: Windows 11 22000.100 Android Studio 2020.3.1 Dracula Theme 1.11.5

domyn commented 3 years ago

See Google IssueTracker for this issue: https://issuetracker.google.com/issues/194935987

WhiteVermouth commented 3 years ago

Looks like a Windows 11 specific bug. AS on macOS Big Sur is normal.

domyn commented 3 years ago

I think it's more like Windows-in-general-specific bug, because the mentioned issue was created by somebody with Windows 10. I suspect some changes between Preview and Release builds in JDK behaviour.

ninh-huynh commented 3 years ago

I have the same problem with Windows 10 after upgrade AS to 2020.3.1

bigpick commented 3 years ago

👋

Throwing this out there as well; some folks on the Dracula discord server are/were seeing this, and one posted a workaround that helped them resolve the issue in the meantime (which is taken from the bug tracker linked at bottom):

DUKI — Today at 4:44 AM If anyone has got an issue with Android Studio Arctic Fox 2020.3.1 not showing custom themes, like i had; A workaround for this issue:

Rename the <studio-installation-directory>/lib/gson-2.7.jar file to <studio-installation-directory>/lib/gson-2.7.jar.disabled.

Restart Studio.

... where studio-installation-directory is by default C:\Program Files\Android\Android Studio on Windows and /Applications/Android Studio.app/Contents on Mac.

Should you experience a problem updating to the next Studio version later on, you may rename the file back and retry the update installation.

https://issuetracker.google.com/issues/194925628

nikunjparadva commented 3 years ago

Here is the Solution

https://stackoverflow.com/a/68599712/5773037

zzh3321 commented 3 years ago

AS 2020.3.1 Patch 1 fix it.