diff --git a/libs/ui/KisViewManager.cpp b/libs/ui/KisViewManager.cpp index bcf0f5f5b0a89ec8e3c6b12ddc745a88cd62de40..53e494ff1537e1d1583ed8c165defd3922119969 100644 --- a/libs/ui/KisViewManager.cpp +++ b/libs/ui/KisViewManager.cpp @@ -320,7 +320,7 @@ void KisViewManager::slotViewAdded(KisView *view) { d->inputManager.addTrackedCanvas(view->canvasBase()); - if (viewCount() == 0) { + if (viewCount() != 0) { d->statusBar.showAllStatusBarItems(); } } @@ -350,30 +350,6 @@ void KisViewManager::setCurrentView(KisView *view) d->viewConnections.clear(); } - // Restore the last used brush preset, color and background color. - if (first) { - KisConfig cfg; - KisPaintOpPresetResourceServer * rserver = KisResourceServerProvider::instance()->paintOpPresetServer(); - QString lastPreset = cfg.readEntry("LastPreset", QString("Basic_tip_default")); - KisPaintOpPresetSP preset = rserver->resourceByName(lastPreset); - if (!preset) { - preset = rserver->resourceByName("Basic_tip_default"); - } - - if (!preset) { - preset = rserver->resources().first(); - } - if (preset) { - paintOpBox()->restoreResource(preset.data()); - } - - const KoColorSpace *cs = KoColorSpaceRegistry::instance()->rgb8(); - KoColor foreground(Qt::black, cs); - d->canvasResourceProvider.setFGColor(cfg.readKoColor("LastForeGroundColor",foreground)); - KoColor background(Qt::white, cs); - d->canvasResourceProvider.setBGColor(cfg.readKoColor("LastBackGroundColor",background)); - - } d->softProof->setChecked(view->softProofing()); d->gamutCheck->setChecked(view->gamutCheck()); @@ -386,6 +362,31 @@ void KisViewManager::setCurrentView(KisView *view) // connect(canvasController()->proxyObject, SIGNAL(documentMousePositionChanged(QPointF)), d->statusBar, SLOT(documentMousePositionChanged(QPointF))); d->currentImageView = imageView; + // Restore the last used brush preset, color and background color. + if (first) { + KisConfig cfg; + KisPaintOpPresetResourceServer * rserver = KisResourceServerProvider::instance()->paintOpPresetServer(); + QString lastPreset = cfg.readEntry("LastPreset", QString("Basic_tip_default")); + KisPaintOpPresetSP preset = rserver->resourceByName(lastPreset); + if (!preset) { + preset = rserver->resourceByName("Basic_tip_default"); + } + + if (!preset) { + preset = rserver->resources().first(); + } + if (preset) { + paintOpBox()->restoreResource(preset.data()); + } + + const KoColorSpace *cs = KoColorSpaceRegistry::instance()->rgb8(); + KoColor foreground(Qt::black, cs); + d->canvasResourceProvider.setFGColor(cfg.readKoColor("LastForeGroundColor",foreground)); + KoColor background(Qt::white, cs); + d->canvasResourceProvider.setBGColor(cfg.readKoColor("LastBackGroundColor",background)); + + } + KisCanvasController *canvasController = dynamic_cast(d->currentImageView->canvasController()); d->viewConnections.addUniqueConnection(&d->nodeManager, SIGNAL(sigNodeActivated(KisNodeSP)), doc->image(), SLOT(requestStrokeEndActiveNode())); @@ -411,7 +412,7 @@ void KisViewManager::setCurrentView(KisView *view) imageView->zoomManager()->setShowRulers(d->showRulersAction->isChecked()); imageView->zoomManager()->setRulersTrackMouse(d->rulersTrackMouseAction->isChecked()); - + showHideScrollbars(); } @@ -454,6 +455,8 @@ void KisViewManager::setCurrentView(KisView *view) resourceProvider()->slotImageSizeChanged(); resourceProvider()->slotOnScreenResolutionChanged(); + + Q_EMIT viewChanged(); }