Core: Overlay: Improve AutoTask mode (#26768)
This commit is contained in:
@@ -409,6 +409,7 @@ public:
|
||||
Application::Instance->signalResetEdit.connect([this](const ViewProviderDocumentObject&) {
|
||||
refresh();
|
||||
});
|
||||
Application::Instance->signalActivateWorkbench.connect([this](const char*) { refresh(); });
|
||||
|
||||
_actOverlay.setData(QStringLiteral("OBTN Overlay"));
|
||||
_actFloat.setData(QStringLiteral("OBTN Float"));
|
||||
|
||||
@@ -1249,6 +1249,10 @@ bool OverlayTabWidget::checkAutoHide() const
|
||||
&& (!Control().taskPanel() || Control().taskPanel()->isEmpty(false));
|
||||
}
|
||||
|
||||
if (autoMode == AutoMode::TaskShow) {
|
||||
return (!Control().taskPanel() || Control().taskPanel()->isEmpty());
|
||||
}
|
||||
|
||||
if (autoMode == AutoMode::EditHide && Application::Instance->editDocument()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include <Gui/Document.h>
|
||||
#include <Gui/MainWindow.h>
|
||||
#include <Gui/ViewProviderDocumentObject.h>
|
||||
#include <Gui/OverlayManager.h>
|
||||
|
||||
#include "TaskView.h"
|
||||
#include "TaskDialog.h"
|
||||
@@ -672,6 +673,8 @@ void TaskView::showDialog(TaskDialog* dlg)
|
||||
triggerMinimumSizeHint();
|
||||
|
||||
Q_EMIT taskUpdate();
|
||||
|
||||
OverlayManager::instance()->refresh();
|
||||
}
|
||||
|
||||
void TaskView::removeDialog()
|
||||
@@ -713,6 +716,9 @@ void TaskView::removeDialog()
|
||||
|
||||
tryRestoreWidth();
|
||||
triggerMinimumSizeHint();
|
||||
|
||||
clearFocus();
|
||||
OverlayManager::instance()->refresh();
|
||||
}
|
||||
void TaskView::setShowTaskWatcher(bool show)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user