diff --git a/toonz/sources/toonz/preferencespopup.cpp b/toonz/sources/toonz/preferencespopup.cpp index 35882d84..2b54149f 100644 --- a/toonz/sources/toonz/preferencespopup.cpp +++ b/toonz/sources/toonz/preferencespopup.cpp @@ -1152,7 +1152,7 @@ QString PreferencesPopup::getUIString(PreferencesItemId id) { {previewBGColor, tr("Preview BG Color:")}, {useThemeViewerColors, tr("Use the Curent Theme's Viewer Background Colors")}, - {levelEditorBoxColor, tr("Level Editor Box Color:")}, + {levelEditorBoxColor, tr("Level Editor Canvas Color:")}, {chessboardColor1, tr("Chessboard Color 1:")}, {chessboardColor2, tr("Chessboard Color 2:")}, {transpCheckInkOnWhite, tr("Ink Color on White BG:")}, diff --git a/toonz/sources/toonz/sceneviewer.cpp b/toonz/sources/toonz/sceneviewer.cpp index e372b6dc..00304d34 100644 --- a/toonz/sources/toonz/sceneviewer.cpp +++ b/toonz/sources/toonz/sceneviewer.cpp @@ -1373,10 +1373,17 @@ void SceneViewer::drawBackground() { } else bgColor = Preferences::instance()->getPreviewBgColor(); } else { - if (Preferences::instance()->getUseThemeViewerColors()) { + TXshLevelHandle *levelHandle = TApp::instance()->getCurrentLevel(); + TXshSimpleLevel *sl = levelHandle ? levelHandle->getSimpleLevel() : 0; + bool isVectorLevel = sl ? sl->getType() == PLI_XSHLEVEL : false; + bool isEditingLevel = TApp::instance()->getCurrentFrame()->isEditingLevel(); + + if (Preferences::instance()->getUseThemeViewerColors() && (!isEditingLevel || !isVectorLevel)) { QColor qtBgColor = getBGColor(); bgColor = TPixel32(qtBgColor.red(), qtBgColor.green(), qtBgColor.blue()); + } else if (isVectorLevel && isEditingLevel) { + bgColor = Preferences::instance()->getLevelEditorBoxColor(); } else bgColor = Preferences::instance()->getViewerBgColor(); }