Settings

Learn how to configure the plugin

The Material Theme UI plugin comes with a bunch of features tailored for an optimal experience. However, it’s also highly configurable to allow everyone to customize it to their hearts’ content.

Themes and color schemes

Current Theme

Since version 9.0.0, you can see the current theme’s colors from the settings page.

For this, navigate to Settings → Appearance → Material Theme UI → Current Theme.

Current Theme
Current Theme

Theme switcher

The plugin comes prebundled with a set of themes interchangeables through the Theme Switcher Theme Switcher.

Theme Switcher
Theme Switcher

There are many ways to invoke the Theme Switcher:

  • From the IDE menu Tools → Material Theme → Material Theme Chooser
  • From the Main Toolbar
  • From the Search Everything dialog, type Material Theme
  • From the Quick Switch panel (Ctrl + \`) (Windows: Ctrl + ~)`
  • From the Status Bar Widget
Quick Switch
Quick Switch

Alternatively, you can also switch themes using the Theme Selector found in Settings → Appearance → Material Theme UI → Theme Selector.

Theme Selector
Theme Selector

The plugin comes prebundled with 23 themes:

Material themes

These themes are based on the original themes, made by Mattia Astorino (@equinusocio)

  • Oceanic

    An oceanic blue flat theme

  • Darker

    A pitch-black flat theme

  • Lighter

    A bright light flat theme

  • Palenight

    A purplish flat theme

  • Deep ocean

    A deep sea black flat theme

  • Forest

    A forests and trees based flat theme

  • Sky blue

    A clear and light blue flat theme

  • Sandy beach

    A sandy based flat theme

  • Volcano

    A rock and fiery based theme

  • Space

    An dark blue and purple spacey theme

Other themes

Besides the Material Themes, there are other prebundled themes made by the community:

  • Monokai pro

    Theme based on the Monokai Pro Theme

  • Dracula

    Theme based on the Dracula Theme

  • Github

    Theme based on the GitHub UI

  • Github dark

    Theme based on the GitHub Dark UI

  • Arc dark

    Theme based on the Arc Dark GTK Theme

  • One dark

    Theme based on the Atom One Dark theme

  • One light

    Theme based on the Atom One Light theme

  • Solarized dark

    Solarized Dark Theme

  • Solarized light

    Solarized Light Theme

  • Night owl

    Theme based on Night Owl by Sarah Drasner

  • Light owl

    Theme based on Light Owl by Sarah Drasner

  • Moonlight

    Theme based on the Moonlight Theme by Atomiks

  • Synthwave '84

    Theme based on the SynthWave' 84 theme by Robb Owen


Custom Themes

This feature is only available for premium users.

In addition, premium users can also define their own Custom Themes.

Custom Themes
Custom Themes

There are two options available, Custom Theme for dark themes and Light Custom Theme for light themes.

See Custom Themes for more information.


Native Themes

The plugin supports Native Themes as well, that is, themes using JetBrains theme API. When loading a native theme, the plugin would try to convert it into a Material Theme, thus allowing you to use the theme colors while using the Material Theme features such as the components, accent mode, etc.

You don’t need to do anything to make it work, download a native theme and select it. It will be automatically converted to a theme format supported by the plugin.

Examples:

New UI Dark
New UI Dark
VSCode Dark
VSCode Dark
Gerry Storm
Gerry Storm
Doki Doki Literature Club
Doki Doki Literature Club

Adaptive Theme

This feature is only available for premium users.

Last but not least, since version 9.0, the plugin also comes with an Adaptive Theme. This theme automatically changes its colors based on the current color scheme.

This theme is quite useful if you have a lot of color schemes that do not come with their own UI Themes, such as the Rainglow color schemes.

Examples:

Cobalt Color Scheme
Cobalt Color Scheme
Monokai Color Scheme
Monokai Color Scheme
Rainglow EarthSong Color Scheme
Rainglow EarthSong Color Scheme
Rainglow Mauve Color Scheme
Rainglow Mauve Color Scheme
Rainglow Tetra Color Scheme
Rainglow Tetra Color Scheme

You can also override the Adapative Theme’s colors from a Color Scheme Settings Page. This way, you can customize your UI theme directly from the Color Scheme settings!

Adaptive Theme
Adaptive Theme

Material Theme UI settings

Settings Page

Some settings are only available for premium users.

You can configure many parts of the plugin features from the plugin settings. They’re available within the Settings → Appearance → Material Theme UI.

Since version 9.0, the settings page has been split into multiple settings pages, for easier navigation and maintenance.

Main Settings
Main Settings
Theme Selector
Theme Selector
Contrast Settings
Contrast Settings
Accent Settings
Accent Settings
Accent Mode
Accent Mode
Custom Themes
Custom Themes
Tabs Settings
Tabs Settings
Spacing Settings
Spacing Settings
Trees Settings
Trees Settings
UI Components Settings
UI Components Settings
Features Settings
Features Settings
Project Title Bar
Project Title Bar
Language Additions Settings
Language Additions Settings
Other Tweaks
Other Tweaks

Summary

Here’s an exhaustive list of all available settings:

Current Theme:

In this page, you can view the current theme’s colors. You can also click on a color to copy it to the clipboard.

Theme Selector:

  • Theme Selector: Select a theme from the list of pre-bundled themes. You’ll get a small preview of the theme for easier selection.

Contrast:

  • Contrast Mode: Add contrast to specific panels and components.
  • High Contrastpremium: Set a more pronounced contrast, by making the texts more prominent.
  • Contrast Valuepremium: Fine tune the contrast value. The more you increase it, the more contrast you get.

Accent Settings:

  • Custom Accent Color: Set a custom accent color.
  • Override Accent Color from Theme: Use the theme’s accent color.
  • Custom Accent Color: Set a custom accent color.
  • Predefined Accent Colors: Choose from a list of predefined accent colors.

Accent Mode:

  • Accent Modepremium: Make components stand out by painting them in the accent color (buttons, tabs, selections…).
  • Second Accent Colorpremium: Specify a second accent color to contrast with the primary accent color.
  • Allow Color Scheme Modificationspremium: Modify the current color scheme to replace some elements with the primary or secondary accent color, such as links, tab highlighter, selections, etc.
  • Fine-grained settingspremium: Instead of applying accent mode globally, you can decide to apply it only to specific components.
    • Buttons: Primary buttons
    • Tabs: Selected tabs
    • Lists: Selected elements in lists
    • Trees: Selected elements in trees
    • Toolbars: Some toolbars
    • Notifications: Notifications

Custom Theme:

  • Custom Themepremium: Configure the colors of the Custom Theme
  • Color Scheme: Select a color scheme to be loaded alongside your custom theme.
  • Load from XML: Import a custom theme in XML format.
  • Save to Disk: Export your custom theme to an XML file.

Light Custom Theme:

  • Light Custom Themepremium: Configure the colors of the Light Custom Theme.
  • Color Scheme: Select a color scheme to be loaded alongside your custom theme.
  • Load from XML: Import a custom theme in XML format.
  • Save to Disk: Export your custom theme to an XML file.

Tabs:

  • Tabs Height: Customize the tabs’ height (between 25 and 60 pixels).
  • Active Tab Highlight Colorpremium: Customize the active tab’s indicator color.
  • Thicknesspremium: Set the active tab’s indicator thickness.
  • Uppercase Tabspremium: Set the tabs’ text to uppercase.
  • Bold Active Tabpremium: Make the active tab bold.
  • Custom Tab Fontpremium: Control the font and size of the tabs.
  • Tab Highlight Positionpremium: Customize the position of the tab highlighter.
  • Tabs Shadowspremium: Add a subtle shadow under the tabs.
  • Animated Tabs: Animate the tab indicator upon switching tabs
  • Tab Separators: Add thin borders between tabs

Spacing:

  • Header Sizepremium: Control the size of the header.
  • Compact Mode Header Sizepremium: Control the size of the header in compact mode.
  • Custom Statusbar Sizepremium: Control the size of the status bar.
  • Compact Table Cells: Reduce the height of table headers and table cells.
  • Compact Dropdowns: Reduce the size of dropdowns.
  • Compact Menus: Reduce the size of the menus.
  • Custom List Items Height: Control the size of items in lists and dropdowns (min: 18, max: 48).
  • Compact Fields: Reduce the size of fields, such as input, numeric and passwords.

Trees:

  • Custom Tree Indentpremium: Fine tune indent of tree items.
    • You can configure both the Left and Right indents.
  • Custom Line Item Heightpremium: Set custom line height in trees (min: 18, max: 44).
  • Custom Tree Fontpremium: Customize the font and font size of the project trees.
  • Selected Indicator Stylepremium: Change the style of the indicator for selected item in trees.
    • Border: Add a small rounded border to the left
    • Dot: Add a dot to the left of the selected item.
    • Sharp: Add a small sharp border to the left
    • Right Border: Add a small rounded border to the right
    • Boxed: Add a box around the selected item
    • Underline: Add an underline to the selected item
    • None: Remove the indicator
  • Thicknesspremium: Control the thickness of the indicator.
  • Use Gradientpremium: Use a gradient instead of a single color for the indicator.
  • Use complementary colorpremium: If using a gradient, use the complementary color of the accent color for the gradient.
  • Arrows Stylepremium: Change the style of the arrows in the trees.
    • Material: Material UI Styled Arrows (chevrons)
    • Darcula: Darcula Styled Arrows (triangles)
    • Plus-Minus: Plus and Minus signs
    • Arrows: Simple arrows
    • Circle: Circled arrows
    • None: No arrows
  • Colored Open Directoriespremium: Assign a specific style to directories. Can be configured from the Custom File Colors settings page.

UI Components:

  • Material Design Style: Select the style of the components.
    • Legacy Material Design: Use the old Material Design style (sharp corners, borderless input fields…).
    • Material Theme: Use the Material Theme style (rounded corners, bordered input fields…).
    • Material You (NOT RELEASED YET): Use the Material You style (rounded buttons, input fields…).
  • Borderless Modepremium: Remove most borders and separators
  • Uppercase buttons: Set the buttons’ texts to uppercase.
  • Outlined buttonspremium: Use outline buttons instead of full buttons.
  • Action Buttons Radiuspremium: Customize the radius of the action buttons.
  • Round Notificationspremium: Make notifications rounder.
  • Inverted Completion Selection Color: Switch the Autocomplete’s selected item color between the selection color and contrast color.
  • Accent Scrollbars: Set the color of the scrollbars to the accent color (requires restart).
  • Transparent Scrollbars: Enable/Disable transparency in scrollbars (requires restart).
  • Extra Shadowspremium: Add a subtle shadow around notifications and some popups.
  • Material Circular Loader Icon: Replace the loading icon with a Material Design circular loader icon (available only in conjunction with the Atom Material Icons plugin).

Features:

  • Animated Tool Windows: Animate opening and closing on tool windows when they are undocked.
  • Centered Editor: Centers the code in open editors, like in distraction free mode.
  • Show Overlays: Displays an overlay when modals are open.
  • Add more popups under overlays: When enabled, triggers overlays for more popups, such as right click menus, dropdowns, etc.
  • Overlays Opacity: Customize the opacity of the overlays
  • Material Wallpaperspremium: Add a custom wallpaper per theme for the empty frame window.
  • Custom UI Fontpremium: Set your own custom UI Font. Supplements the IDE’s Custom Font.
  • Material File Status Colors: Enable/Disable the Material File Status Colors.
  • Custom Directories Stylepremium: Customize the style of directories.
  • Automatically reset color scheme: Automatically reset the color scheme on theme activation (only for bundled color schemes).
  • Use Editor Default Fontpremium: Automatically update color schemes to use the default font of your choice.

Language Additions:

  • Language Additionspremium: Enable/Disable the Language Additions.
  • Advanced Settingspremium: Turn off language additions for specific languages, depending on the IDE. The available options are:
    • Java (IntelliJ IDEA)
    • Kotlin (IntelliJ IDEA)
    • JavaScript (WebStorm, JavaScript plugin)
    • TypeScript (WebStorm, TypeScript plugin)
    • Ruby (RubyMine, Ruby plugin)
    • Python (PyCharm, Python plugin)
    • PHP (PhpStorm, PHP plugin)
    • Go (GoLand, Go plugin)
    • Rust (CLion, RustRover, Rust plugin)

Project Title Bar:

  • Colorize Title Barpremium: Colorize the title bar with a random color (only for the New UI).
  • Colorize Left Tool Windowpremium: Colorize the left tool window (only for the New UI).
  • Colorize Right Tool Windowpremium: Colorize the right tool window (only for the New UI).
  • Colorize Status Barpremium: Colorize the status bar (only for the New UI).
  • Project Title Barpremium: Add a colored stripe on the top of each project window for easier differentiation.
  • Show Project Iconpremium: Display the project’s custom icon on the stripe.
  • Show Project Titlepremium: Displays the project title on the stripe.
  • Customize Textpremium: Customize the displayed text.
    • You can use the keywords {project}, {module}, {fullPath}, {path} and {file} to refer respectively to the current project, module, full path, local path and/or current file.

Other Tweaks:

  • Show What’s New on each update: Whether to display the What’s New page on each update.
  • Show Wizard on Welcome Screen: Add or remove the Wizard option in the Welcome Screen.

Settings shortcuts

You can also quickly toggle some settings by using the Search Everywhere or the Command Panel capability of the IDE. Simply press Shift-Shift and type Material Theme to get the list of available toggles.

Same goes for the Command Panel (Ctrl-Shift-A/Cmd-Shift-A).

Command Panel
Command Panel

You can also use the Keymap Editor to assign your own custom shortcuts to these toggles.

Settings File

Your current configuration is stored inside the IDE settings’ directory under the filenames:

  • Main Settings: material_theme_new.xml.
  • Custom Theme: material_custom_theme_new.xml.
  • Per Project Settings: material_theme_project.xml.

If, for some reason, there are issues with the plugin, or you don’t manage to reset to a stable state, delete these files and restart the IDE.

Read IDE Settings and Directories used by the IDE to find out where are stored such configuration files.

The files in question should be located in the following directories:

  • within <config directory>/config
  • within each project’s .idea directory for the Per-Project Settings.

Custom themes

This feature is only available for premium users.

Aside from the bundled themes, you can also set up your own Material Theme.

You can do so by selecting Custom Theme in the theme list, then customize the theme colors in the settings page at Settings → Appearance → Material Custom Theme Settings.

Material Custom Theme Settings
Material Custom Theme Settings

Once you set these colors, select the Custom Theme in the Material Theme Chooser and see your colors take effect.

See Custom Theme for more details.


Frequently Asked Questions

Q: I’ve updated the IDE/plugin to a new version, and now I get an error about the plugin failing to initialize?

A: It could come from multiple issues, but it could simply be a problem with the settings not being compatible with the new version.

In that case, make a copy of the settings file, then delete the original file, and restart the IDE.

If the issue is gone, go back to the settings and go back to your previous configuration manually.

If the issue persists, please report it in the Issues Section.

Q: I’ve removed the plugin, and still the background image persists!

A: This is an issue hard to resolve, because the Custom Wallpaper function is using the Set Background image function from the IDE behind the curtains.

Therefore, removing the plugin might not remove the set image completely.

If that occurs, you can remove the image by opening the Command Panel (Cmd-Shift-A/Ctrl-Shift-A) and type Set Background image and then manually remove the image, or go into Settings → Appearance → Background Image.

Q: What is that analytics option? What data are collected?

A: This is an option to allow sending data to Material Theme servers about users’ configuration, usage and trends.

These metrics allow us to find out which features are most used or least used, to prioritize development of features, or maybe notify users about specific features, to provide better satisfaction.

These data are completely anonymous, and aren’t shared/sold to any third parties. If you want to stop sending data, turn off the option in the material_theme.xml.

Q: My settings are lost/jumbled up!

A: As the plugin evolves, sometimes settings are modified or removed, and as a result it can jumble your configuration files.

We’re trying our best to limit such issues, but they can happen nonetheless.

If you find yourself being unable to use the plugin or even run the IDE, try to delete your configuration files, or at least try to delete specific properties until the IDE launches again.

Q: The wizard idea was great! But I’ve made a mistake, and the wizard won’t show up anymore!

A: The wizard shows only once and only when you don’t have the isWizardShown option set to true in the config file.

But you can reopen it by simply clicking on the action from the Material Theme Toolbar, on the Features menu.

Q: Where have all the icons gone?

A: Since 5.0.0, the icons related settings have been moved to the Atom Material Icons plugin, another plugin developed by the Material Theme team.

This is to encourage developers to develop Icon Themes, as the plugin is now free of icons.

Q: I’ve downloaded a theme from the Plugins Page, and now I’m seeing texts that aren’t themed, or checkboxes that are wrongly colored, etc…

A: This is because these are native themes, and such themes use the Theme API provided by JetBrains rather than the API used by the Material Themes.

Even though the plugin tries to convert it to its own format, it won’t be as good as the originals. Still, it should be as similar as possible, so there shouldn’t be any critical issues. In that case, please report to the repository’s issues.

Q: I’ve bought a license, but I am still identified as a Free User!

A: That means that you haven’t activated your license yet. At the moment, the only way to do it, is to run the action to open the Registration Modal.

Activate License
Activate License
License
License

Important note: Android Studio users, to activate the plugin (or any paid plugin), you need to install a plugin first:https://plugins.jetbrains.com/plugin/13407-jetbrains-marketplace-licensing-support.