Merge pull request #756 from manongjohn/fix_blurred_brush_canvas_resize_crash
Fix blurred brush crash after canvas resize
This commit is contained in:
commit
20dd64d2e2
2 changed files with 14 additions and 1 deletions
|
@ -2555,6 +2555,13 @@ bool ToonzRasterBrushTool::isPencilModeActive() {
|
|||
return getTargetType() == TTool::ToonzImage && m_pencil.getValue();
|
||||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------
|
||||
|
||||
void ToonzRasterBrushTool::onCanvasSizeChanged() {
|
||||
onDeactivate();
|
||||
setWorkAndBackupImages();
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------
|
||||
|
||||
void ToonzRasterBrushTool::onColorStyleChanged() {
|
||||
|
@ -2608,6 +2615,11 @@ ToonzRasterBrushToolNotifier::ToonzRasterBrushToolNotifier(
|
|||
ToonzRasterBrushTool *tool)
|
||||
: m_tool(tool) {
|
||||
if (TTool::Application *app = m_tool->getApplication()) {
|
||||
if (TXshLevelHandle *levelHandle = app->getCurrentLevel()) {
|
||||
bool ret = connect(levelHandle, SIGNAL(xshCanvasSizeChanged()), this,
|
||||
SLOT(onCanvasSizeChanged()));
|
||||
assert(ret);
|
||||
}
|
||||
if (TPaletteHandle *paletteHandle = app->getCurrentPalette()) {
|
||||
bool ret;
|
||||
ret = connect(paletteHandle, SIGNAL(colorStyleChanged(bool)), this,
|
||||
|
|
|
@ -165,6 +165,7 @@ public:
|
|||
// Tools.
|
||||
bool isPencilModeActive() override;
|
||||
|
||||
void onCanvasSizeChanged();
|
||||
void onColorStyleChanged();
|
||||
bool askRead(const TRect &rect) override;
|
||||
bool askWrite(const TRect &rect) override;
|
||||
|
@ -259,7 +260,7 @@ public:
|
|||
ToonzRasterBrushToolNotifier(ToonzRasterBrushTool *tool);
|
||||
|
||||
protected slots:
|
||||
// void onCanvasSizeChanged() { m_tool->onCanvasSizeChanged(); }
|
||||
void onCanvasSizeChanged() { m_tool->onCanvasSizeChanged(); }
|
||||
void onColorStyleChanged() { m_tool->onColorStyleChanged(); }
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue