Improve DockContextPopup spacing

This commit is contained in:
kobewi 2026-02-20 22:05:50 +01:00
parent 15a4311583
commit 7832fafc66
4 changed files with 13 additions and 9 deletions

View file

@ -918,6 +918,10 @@ DockContextPopup::DockContextPopup() {
dock_select_popup_vb->add_child(dock_select); dock_select_popup_vb->add_child(dock_select);
dock_select->connect("slot_clicked", callable_mp(this, &DockContextPopup::_slot_clicked)); dock_select->connect("slot_clicked", callable_mp(this, &DockContextPopup::_slot_clicked));
Control *separator = memnew(Control);
separator->set_custom_minimum_size(Vector2(0, 8 * EDSCALE));
dock_select_popup_vb->add_child(separator);
make_float_button = memnew(Button); make_float_button = memnew(Button);
make_float_button->set_text(TTRC("Make Floating")); make_float_button->set_text(TTRC("Make Floating"));
if (!EditorNode::get_singleton()->is_multi_window_enabled()) { if (!EditorNode::get_singleton()->is_multi_window_enabled()) {
@ -972,7 +976,7 @@ void DockSlotGrid::_update_rect_cache() {
// Temporarily hard-coded, until main screen is registered as a slot. // Temporarily hard-coded, until main screen is registered as a slot.
{ {
Rect2 rect = Rect2i(2, 0, 2, 4); Rect2 rect = Rect2i(2, 0, 4, 4);
if (is_layout_rtl()) { if (is_layout_rtl()) {
rect.position.x = GRID_SIZE.x - rect.position.x - rect.size.x; rect.position.x = GRID_SIZE.x - rect.position.x - rect.size.x;
} }

View file

@ -155,7 +155,7 @@ public:
class DockSlotGrid : public Control { class DockSlotGrid : public Control {
GDCLASS(DockSlotGrid, Control); GDCLASS(DockSlotGrid, Control);
static constexpr Vector2i GRID_SIZE = Vector2i(6, 8); static constexpr Vector2i GRID_SIZE = Vector2i(8, 8);
static constexpr Vector2i MARGINS = Vector2i(4, 8); static constexpr Vector2i MARGINS = Vector2i(4, 8);
static constexpr Vector2i CELL_SIZE = Vector2i(24, 12); static constexpr Vector2i CELL_SIZE = Vector2i(24, 12);
static constexpr int TABS_PER_CELL = 3; static constexpr int TABS_PER_CELL = 3;

View file

@ -8619,13 +8619,13 @@ EditorNode::EditorNode() {
right_l_vsplit->set_vertical(true); right_l_vsplit->set_vertical(true);
main_hsplit->add_child(right_l_vsplit); main_hsplit->add_child(right_l_vsplit);
{ {
DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_UL, Rect2i(4, 0, 1, 3))); DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_UL, Rect2i(6, 0, 1, 3)));
dock_container->set_name("DockSlotRightUL"); dock_container->set_name("DockSlotRightUL");
right_l_vsplit->add_child(dock_container); right_l_vsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);
} }
{ {
DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_BL, Rect2i(4, 3, 1, 3))); DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_BL, Rect2i(6, 3, 1, 3)));
dock_container->set_name("DockSlotRightBL"); dock_container->set_name("DockSlotRightBL");
right_l_vsplit->add_child(dock_container); right_l_vsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);
@ -8636,13 +8636,13 @@ EditorNode::EditorNode() {
right_r_vsplit->set_vertical(true); right_r_vsplit->set_vertical(true);
main_hsplit->add_child(right_r_vsplit); main_hsplit->add_child(right_r_vsplit);
{ {
DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_UR, Rect2i(5, 0, 1, 3))); DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_UR, Rect2i(7, 0, 1, 3)));
dock_container->set_name("DockSlotRightUR"); dock_container->set_name("DockSlotRightUR");
right_r_vsplit->add_child(dock_container); right_r_vsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);
} }
{ {
DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_BR, Rect2i(5, 3, 1, 3))); DockTabContainer *dock_container = memnew(SideDockTabContainer(EditorDock::DOCK_SLOT_RIGHT_BR, Rect2i(7, 3, 1, 3)));
dock_container->set_name("DockSlotRightBR"); dock_container->set_name("DockSlotRightBR");
right_r_vsplit->add_child(dock_container); right_r_vsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);
@ -8652,13 +8652,13 @@ EditorNode::EditorNode() {
bottom_hsplit->set_name("DockHSplitBottom"); bottom_hsplit->set_name("DockHSplitBottom");
main_vsplit->add_child(bottom_hsplit); main_vsplit->add_child(bottom_hsplit);
{ {
DockTabContainer *dock_container = memnew(BottomSideDockTabContainer(EditorDock::DOCK_SLOT_BOTTOM_L, Rect2i(0, 6, 3, 2))); DockTabContainer *dock_container = memnew(BottomSideDockTabContainer(EditorDock::DOCK_SLOT_BOTTOM_L, Rect2i(0, 6, 4, 2)));
dock_container->set_name("DockSlotBottomL"); dock_container->set_name("DockSlotBottomL");
bottom_hsplit->add_child(dock_container); bottom_hsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);
} }
{ {
DockTabContainer *dock_container = memnew(BottomSideDockTabContainer(EditorDock::DOCK_SLOT_BOTTOM_R, Rect2i(3, 6, 3, 2))); DockTabContainer *dock_container = memnew(BottomSideDockTabContainer(EditorDock::DOCK_SLOT_BOTTOM_R, Rect2i(4, 6, 4, 2)));
dock_container->set_name("DockSlotBottomR"); dock_container->set_name("DockSlotBottomR");
bottom_hsplit->add_child(dock_container); bottom_hsplit->add_child(dock_container);
dock_slots.push_back(dock_container); dock_slots.push_back(dock_container);

View file

@ -270,7 +270,7 @@ void EditorBottomPanel::_on_button_visibility_changed(Button *p_button, EditorDo
EditorBottomPanel::EditorBottomPanel() : EditorBottomPanel::EditorBottomPanel() :
DockTabContainer(EditorDock::DOCK_SLOT_BOTTOM) { DockTabContainer(EditorDock::DOCK_SLOT_BOTTOM) {
layout = EditorDock::DOCK_LAYOUT_HORIZONTAL; layout = EditorDock::DOCK_LAYOUT_HORIZONTAL;
grid_rect = Rect2i(2, 4, 2, 2); grid_rect = Rect2i(2, 4, 4, 2);
get_tab_bar()->connect("tab_changed", callable_mp(this, &EditorBottomPanel::_on_tab_changed)); get_tab_bar()->connect("tab_changed", callable_mp(this, &EditorBottomPanel::_on_tab_changed));
set_tabs_position(TabPosition::POSITION_BOTTOM); set_tabs_position(TabPosition::POSITION_BOTTOM);