diff --git a/data/layout.xml b/data/layout.xml
index f4a91d0..220377d 100644
--- a/data/layout.xml
+++ b/data/layout.xml
@@ -140,7 +140,7 @@
-
+
@@ -178,7 +178,7 @@
-
+
diff --git a/src/app_layout.cpp b/src/app_layout.cpp
index 5f70062..8f510e4 100644
--- a/src/app_layout.cpp
+++ b/src/app_layout.cpp
@@ -245,7 +245,10 @@ void App::init_sidebar()
if (stroke->m_parent)
{
if (auto fp = dynamic_cast(stroke->m_parent->m_parent))
+ {
+ stroke->remove_from_parent();
fp->destroy();
+ }
}
layout[main_id]->add_child(stroke);
stroke->SetSize(350, glm::max(100.f, screen.y - pos.y - 50.f));
@@ -321,7 +324,10 @@ void App::init_sidebar()
if (layers->m_parent)
{
if (auto fp = dynamic_cast(layers->m_parent->m_parent))
+ {
+ layers->remove_from_parent();
fp->destroy();
+ }
}
layout[main_id]->add_child(layers);
auto tick = layout[main_id]->add_child();
@@ -769,6 +775,7 @@ void App::init_menu_tools()
fpanel->m_class = NodePanelFloating::kClass::Presets;
fpanel->SetHeight(300);
fpanel->SetMinHeight(300);
+ fpanel->SetMinWidth(100);
if (!floating_presets)
{
floating_presets = fpanel->m_container->add_child_ref();
diff --git a/src/node_panel_brush.cpp b/src/node_panel_brush.cpp
index 8f6250b..d0032b6 100644
--- a/src/node_panel_brush.cpp
+++ b/src/node_panel_brush.cpp
@@ -924,6 +924,7 @@ bool NodePanelBrushPreset::import_ppbr(const std::string& path)
pb->increment();
}
+ save();
pb->destroy();
return true;
diff --git a/src/node_panel_quick.cpp b/src/node_panel_quick.cpp
index cc0b87c..2cc15ae 100644
--- a/src/node_panel_quick.cpp
+++ b/src/node_panel_quick.cpp
@@ -222,6 +222,7 @@ void NodePanelQuick::handle_button_brush_click(Node* button)
tick->m_scale = { 1, 1 };
float hh = popup->m_container->m_children.size() > 10 ? (screen.y - 90.f) : 400.f;
+ popup->SetWidth(350);
popup->SetHeight(glm::max(hh, 400.f));
popup->SetPositioning(YGPositionTypeAbsolute);
popup->SetPosition(popup_pos);