Signed-off-by: falkTX <falktx@falktx.com>pull/457/head
@@ -309,6 +309,9 @@ struct Plugin::PrivateData { | |||||
#if DISTRHO_PLUGIN_WANT_STATE | #if DISTRHO_PLUGIN_WANT_STATE | ||||
bool updateStateValueCallback(const char* const key, const char* const value) | bool updateStateValueCallback(const char* const key, const char* const value) | ||||
{ | { | ||||
DISTRHO_SAFE_ASSERT_RETURN(key != nullptr && key[0] != '\0', false); | |||||
DISTRHO_SAFE_ASSERT_RETURN(value != nullptr, false); | |||||
d_stdout("updateStateValueCallback %p", updateStateValueCallbackFunc); | d_stdout("updateStateValueCallback %p", updateStateValueCallbackFunc); | ||||
if (updateStateValueCallbackFunc != nullptr) | if (updateStateValueCallbackFunc != nullptr) | ||||
return updateStateValueCallbackFunc(callbacksPtr, key, value); | return updateStateValueCallbackFunc(callbacksPtr, key, value); | ||||
@@ -171,18 +171,18 @@ static double getDesktopScaleFactor(const uintptr_t parentWindowHandle) | |||||
UI::PrivateData* UI::PrivateData::s_nextPrivateData = nullptr; | UI::PrivateData* UI::PrivateData::s_nextPrivateData = nullptr; | ||||
PluginWindow& UI::PrivateData::createNextWindow(UI* const ui, uint width, uint height, const bool adjustForScaleFactor) | |||||
PluginWindow& UI::PrivateData::createNextWindow(UI* const ui, uint width, uint height) | |||||
{ | { | ||||
UI::PrivateData* const uiData = s_nextPrivateData; | UI::PrivateData* const uiData = s_nextPrivateData; | ||||
const double scaleFactor = d_isNotZero(uiData->scaleFactor) ? uiData->scaleFactor : getDesktopScaleFactor(uiData->winId); | const double scaleFactor = d_isNotZero(uiData->scaleFactor) ? uiData->scaleFactor : getDesktopScaleFactor(uiData->winId); | ||||
if (adjustForScaleFactor && d_isNotZero(scaleFactor) && d_isNotEqual(scaleFactor, 1.0)) | |||||
if (d_isNotZero(scaleFactor) && d_isNotEqual(scaleFactor, 1.0)) | |||||
{ | { | ||||
width *= scaleFactor; | width *= scaleFactor; | ||||
height *= scaleFactor; | height *= scaleFactor; | ||||
} | } | ||||
d_stdout("createNextWindow %u %u %f %d", width, height, scaleFactor, adjustForScaleFactor); | |||||
d_stdout("createNextWindow %u %u %d", width, height, scaleFactor); | |||||
uiData->window = new PluginWindow(ui, uiData->app, uiData->winId, width, height, scaleFactor); | uiData->window = new PluginWindow(ui, uiData->app, uiData->winId, width, height, scaleFactor); | ||||
if (uiData->callbacksPtr != nullptr) | if (uiData->callbacksPtr != nullptr) | ||||
@@ -323,13 +323,7 @@ UI::UI(const uint width, const uint height, const bool automaticallyScaleAndSetA | |||||
#ifdef DISTRHO_UI_DEFAULT_HEIGHT | #ifdef DISTRHO_UI_DEFAULT_HEIGHT | ||||
height == 0 ? DISTRHO_UI_DEFAULT_HEIGHT : | height == 0 ? DISTRHO_UI_DEFAULT_HEIGHT : | ||||
#endif | #endif | ||||
height, | |||||
// adjustForScaleFactor | |||||
#ifdef DISTRHO_UI_DEFAULT_WIDTH | |||||
width == 0 | |||||
#else | |||||
false | |||||
#endif | |||||
height | |||||
)), | )), | ||||
uiData(UI::PrivateData::s_nextPrivateData) | uiData(UI::PrivateData::s_nextPrivateData) | ||||
{ | { | ||||
@@ -352,6 +352,9 @@ struct UI::PrivateData { | |||||
void setStateCallback(const char* const key, const char* const value) | void setStateCallback(const char* const key, const char* const value) | ||||
{ | { | ||||
DISTRHO_SAFE_ASSERT_RETURN(key != nullptr && key[0] != '\0',); | |||||
DISTRHO_SAFE_ASSERT_RETURN(value != nullptr,); | |||||
if (setStateCallbackFunc != nullptr) | if (setStateCallbackFunc != nullptr) | ||||
setStateCallbackFunc(callbacksPtr, key, value); | setStateCallbackFunc(callbacksPtr, key, value); | ||||
} | } | ||||
@@ -364,6 +367,8 @@ struct UI::PrivateData { | |||||
void setSizeCallback(const uint width, const uint height) | void setSizeCallback(const uint width, const uint height) | ||||
{ | { | ||||
DISTRHO_SAFE_ASSERT_RETURN(width != 0 && height != 0,); | |||||
if (setSizeCallbackFunc != nullptr) | if (setSizeCallbackFunc != nullptr) | ||||
setSizeCallbackFunc(callbacksPtr, width, height); | setSizeCallbackFunc(callbacksPtr, width, height); | ||||
} | } | ||||
@@ -372,7 +377,7 @@ struct UI::PrivateData { | |||||
bool fileRequestCallback(const char* key); | bool fileRequestCallback(const char* key); | ||||
static UI::PrivateData* s_nextPrivateData; | static UI::PrivateData* s_nextPrivateData; | ||||
static PluginWindow& createNextWindow(UI* ui, uint width, uint height, bool adjustForScaleFactor); | |||||
static PluginWindow& createNextWindow(UI* ui, uint width, uint height); | |||||
#if DISTRHO_UI_USE_WEB_VIEW | #if DISTRHO_UI_USE_WEB_VIEW | ||||
static void webViewMessageCallback(void* arg, char* msg); | static void webViewMessageCallback(void* arg, char* msg); | ||||
#endif | #endif | ||||