More tweaks for 2.4 update

Signed-off-by: falkTX <falktx@falktx.com>
This commit is contained in:
falkTX 2023-12-17 16:36:54 +01:00
parent 1895052e17
commit 241df7f5c7
No known key found for this signature in database
GPG key ID: CDBAA37ABC74FBA0
11 changed files with 65 additions and 36 deletions

View file

@ -410,7 +410,7 @@ Initializer::Initializer(const CardinalBasePlugin* const plugin, const CardinalB
settings::browserZoom = -1.f;
settings::invertZoom = false;
settings::squeezeModules = true;
settings::darkMode = true;
settings::preferDarkPanels = true;
settings::uiTheme = "dark";
// runtime behaviour

View file

@ -31,11 +31,6 @@
namespace rack {
namespace asset {
#ifndef HEADLESS
extern bool forceBlackScrew;
extern bool forceSilverScrew;
#endif
std::string configDir; // points to writable config dir (might be equal to userDir)
std::string userDir; // points to common writable dir
std::string systemDir; // points to plugin resources dir (or installed/local Rack dir)
@ -59,12 +54,6 @@ static inline std::string& trim(std::string& s)
// get system resource, trimming "res/" prefix if we are loaded as a plugin bundle
std::string system(std::string filename) {
#ifndef HEADLESS
/**/ if (forceBlackScrew && string::endsWith(filename, "/ScrewBlack.svg"))
filename = filename.substr(0, filename.size()-15) + "/./ScrewBlack.svg";
else if (forceSilverScrew && string::endsWith(filename, "/ScrewSilver.svg"))
filename = filename.substr(0, filename.size()-16) + "/./ScrewSilver.svg";
#endif
return system::join(systemDir, bundlePath.empty() ? filename : trim(filename));
}

View file

@ -28,6 +28,7 @@ void updateStaticPluginsDarkMode();
}
namespace settings {
int rateLimit = 0;
extern bool preferDarkPanels;
extern std::string uiTheme;
}
namespace ui {
@ -1405,7 +1406,7 @@ postparse:
const ExtendedNSVGimage ext = { handle, handleOrig, handleMOD, shapesOrig, shapesMOD };
loadedDarkSVGs.push_back(ext);
if (rack::settings::darkMode)
if (rack::settings::preferDarkPanels)
{
if (shapesMOD != nullptr)
handle->shapes = shapesMOD;
@ -1419,7 +1420,7 @@ postparse:
const ExtendedNSVGimage ext = { handle, handleOrig, handleMOD, shapesOrig, shapesMOD };
loadedLightSVGs.push_back(ext);
if (!rack::settings::darkMode)
if (!rack::settings::preferDarkPanels)
{
if (shapesMOD != nullptr)
handle->shapes = shapesMOD;
@ -1471,9 +1472,7 @@ namespace rack {
void switchDarkMode(const bool darkMode)
{
#ifndef HEADLESS
// TODO sort this out after build with Rack2.4 succeeds
return;
settings::preferDarkPanels = darkMode;
settings::uiTheme = darkMode ? "dark" : "light";
ui::refreshTheme();
plugin::updateStaticPluginsDarkMode();

View file

@ -625,10 +625,10 @@ struct ViewButton : MenuButton {
#if DISTRHO_PLUGIN_WANT_DIRECT_ACCESS
std::string darkModeText;
if (settings::darkMode)
if (settings::preferDarkPanels)
darkModeText = CHECKMARK_STRING;
menu->addChild(createMenuItem("Dark Mode", darkModeText, []() {
switchDarkMode(!settings::darkMode);
switchDarkMode(!settings::preferDarkPanels);
setAllFramebufferWidgetsDirty(APP->scene);
}));
#endif