Merge branch 'main' into feat/breadcrumb-viewport-overlay
Some checks failed
Build and Test / build (pull_request) Has been cancelled

This commit is contained in:
2026-02-15 01:23:43 +00:00
4 changed files with 54 additions and 1 deletions

View File

@@ -66,8 +66,10 @@
#include "Dialogs/DlgPreferencesImp.h"
#include "ui_DlgPreferences.h"
#include "Application.h"
#include "BitmapFactory.h"
#include "MainWindow.h"
#include "PreferencePackManager.h"
#include "Tools.h"
#include "WidgetFactory.h"
@@ -834,6 +836,12 @@ void DlgPreferencesImp::restoreDefaults()
.GetParameterGroupByPath("User parameter:BaseApp/Preferences/General")
->SetBool("SaveUserParameter", saveParameter);
// Re-apply Kindred Create defaults so we don't revert to upstream FreeCAD defaults
auto* packMgr = Gui::Application::Instance->prefPackManager();
if (packMgr) {
packMgr->apply("KindredCreate");
}
reject();
}
}

View File

@@ -36,6 +36,7 @@
#include "ToolBarManager.h"
#include "ViewProvider.h"
#include "ViewProviderDocumentObject.h"
#include "WorkbenchManager.h"
using namespace Gui;
@@ -330,6 +331,49 @@ void EditingContextResolver::registerBuiltinContexts()
},
});
// --- Workbench-level fallbacks (priority 20) ---
// Show basic workbench toolbars when the workbench is active but no
// specific editing context matches (e.g. no Body selected in PartDesign).
registerContext({
/*.id =*/QStringLiteral("partdesign.workbench"),
/*.labelTemplate =*/QStringLiteral("Part Design"),
/*.color =*/QLatin1String(CatppuccinMocha::Mauve),
/*.toolbars =*/
{QStringLiteral("Part Design Helper Features"), QStringLiteral("Sketcher")},
/*.priority =*/20,
/*.match =*/
[]() {
return WorkbenchManager::instance()->activeName() == "PartDesignWorkbench";
},
});
registerContext({
/*.id =*/QStringLiteral("sketcher.workbench"),
/*.labelTemplate =*/QStringLiteral("Sketcher"),
/*.color =*/QLatin1String(CatppuccinMocha::Green),
/*.toolbars =*/
{QStringLiteral("Sketcher"), QStringLiteral("Sketcher Tools")},
/*.priority =*/20,
/*.match =*/
[]() {
return WorkbenchManager::instance()->activeName() == "SketcherWorkbench";
},
});
registerContext({
/*.id =*/QStringLiteral("assembly.workbench"),
/*.labelTemplate =*/QStringLiteral("Assembly"),
/*.color =*/QLatin1String(CatppuccinMocha::Blue),
/*.toolbars =*/
{QStringLiteral("Assembly")},
/*.priority =*/20,
/*.match =*/
[]() {
return WorkbenchManager::instance()->activeName() == "AssemblyWorkbench";
},
});
// --- Empty document ---
registerContext({
/*.id =*/QStringLiteral("empty_document"),

View File

@@ -1207,6 +1207,7 @@ Gui--OriginSelectorWidget {
padding: 4px 8px;
min-width: 70px;
max-width: 120px;
min-height: 20px;
}
Gui--OriginSelectorWidget:hover {