Extensions
  • Home
  • Add-ons
  • Themes
  • Approval Queue
  • About
  • Upload Extension
  • Sign in
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    DEVELOPMENT

    • Roadmap

      See which projects are currently being worked on and what's next.

    • Documentation

      Guidelines, release notes and development docs.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

All Add-ons

Add-on Time Theme Switcher
Time Theme Switcher

Switches between light and dark UI themes at scheduled times.
Add-on by CosmoMídias
About What's New Permissions Reviews Version History

4 Reviews

  • 3DDinosaur
  • v1.0.0
  • 8 h

Hi! I found an issue with Claude's hep, where the theme (light/dark) is not correctly reapplied when Blender is closed and reopened — even though load_post_handler is supposed to force a re-apply on load. The old theme colors stay in place until I manually click the "Refresh" button in the addon preferences, which does fix it immediately.

Looking at the code, I believe the problem is in apply_theme():

python try: with _context_temp_override(context_to_use, override): result = bpy.ops.script.execute_preset(...) except Exception: return False

bpy.ops.script.execute_preset is a UI operator and depends on a valid window/area/region context. During load_post (right at startup), the UI may not be fully ready yet, so this call can silently fail. Since the exception is caught with a bare except Exception: return False and nothing is logged, there's no way to know the apply failed.

This becomes worse combined with this check in apply_theme_for_current_time():

python if prefs.active_theme == desired_state and not force: return "skipped"

If active_theme was already set to the correct value from a previous session, and the startup apply silently fails, there's no automatic retry that would actually reapply the theme — since the timer's retry call doesn't use force=True, it just checks active_theme again and skips.

Suggestion: log the exception (e.g. print or self.report) instead of silently swallowing it, and/or don't trust active_theme as "already correct" until apply_theme() has actually returned True at least once in the current session. That would make it obvious when the startup apply fails and would let a proper retry happen.

  • piereligio
  • v1.0.0
  • 2 mo

Working on Blender 3.5 as well :)

  • mamane-kabirou
  • v1.0.0
  • 8 mo

Thanks for this awesome addon! It was easy to set up.

I have a suggestion for a future update regarding multiple themes. It would be amazing to have:

I would really appreciate your help with thi

  • CosmoMídias replied
  • 7 mo

A multiple theme and multiple scheduler version in available from: https://superhivemarket.com/products/time-theme-switcher-pro

  • Shedrack-Bulus
  • v1.0.0
  • 8 mo

The first add-on downloaded. A five star rating for it, it's just the best.

4 reviews

4.5

4 reviews
5
4
3
2
1
Rate this Add-on Report an issue
  • About
  • Privacy Policy
  • Terms of Service
About
  • Blender Foundation
  • Blender Institute
  • Blender Studio
  • License
  • Logo & Trademark
  • Credits
  • Privacy Policy
  • Code of Conduct
Organization
  • People
  • Jobs
Blender Network
Download
  • Latest Blender
  • Blender LTS
  • Previous Versions
  • Experimental Builds
  • Source Code
  • Requirements
  • Benchmark
  • Flamenco
Extensions
  • Add-ons
  • Themes
Developers
  • Get Started
  • Roadmap
  • Projects
  • Docs
  • Blog
  • Forum
  • YouTube
  • Python API
Blender Studio
  • Films
  • Training
  • Tools & Pipeline
Support
  • Manual
  • Community
  • FAQ
Get Involved
  • Documentation
  • Education
News
  • Press Releases
  • User Stories
Blender Conference
Follow Blender
Support Blender
  • Donate
  • One-time Donation
Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite