diff options
Diffstat (limited to 'scene/gui')
| -rw-r--r-- | scene/gui/base_button.cpp | 5 | ||||
| -rw-r--r-- | scene/gui/control.cpp | 10 | ||||
| -rw-r--r-- | scene/gui/graph_node.cpp | 4 | ||||
| -rw-r--r-- | scene/gui/rich_text_label.cpp | 2 |
4 files changed, 17 insertions, 4 deletions
diff --git a/scene/gui/base_button.cpp b/scene/gui/base_button.cpp index d8229b5f43..6fef44481a 100644 --- a/scene/gui/base_button.cpp +++ b/scene/gui/base_button.cpp @@ -271,6 +271,11 @@ BaseButton::DrawMode BaseButton::get_draw_mode() const { } void BaseButton::set_toggle_mode(bool p_on) { + // Make sure to set 'pressed' to false if we are not in toggle mode + if (!p_on) { + set_pressed(false); + } + toggle_mode = p_on; } diff --git a/scene/gui/control.cpp b/scene/gui/control.cpp index 97daeceda9..2cdee4641e 100644 --- a/scene/gui/control.cpp +++ b/scene/gui/control.cpp @@ -1173,7 +1173,17 @@ Rect2 Control::get_parent_anchorable_rect() const { if (data.parent_canvas_item) { parent_rect = data.parent_canvas_item->get_anchorable_rect(); } else { +#ifdef TOOLS_ENABLED + Node *edited_root = get_tree()->get_edited_scene_root(); + if (edited_root && (this == edited_root || edited_root->is_a_parent_of(this))) { + parent_rect.size = Size2(ProjectSettings::get_singleton()->get("display/window/size/width"), ProjectSettings::get_singleton()->get("display/window/size/height")); + } else { + parent_rect = get_viewport()->get_visible_rect(); + } + +#else parent_rect = get_viewport()->get_visible_rect(); +#endif } return parent_rect; diff --git a/scene/gui/graph_node.cpp b/scene/gui/graph_node.cpp index b6a96238dc..01b54ddaa8 100644 --- a/scene/gui/graph_node.cpp +++ b/scene/gui/graph_node.cpp @@ -503,9 +503,7 @@ void GraphNode::_connpos_update() { } } - if (vofs > 0) { - vofs += sep; - } + vofs += sep; vofs += size.y; idx++; } diff --git a/scene/gui/rich_text_label.cpp b/scene/gui/rich_text_label.cpp index 5ae27081ea..22e5bd55f3 100644 --- a/scene/gui/rich_text_label.cpp +++ b/scene/gui/rich_text_label.cpp @@ -256,7 +256,7 @@ int RichTextLabel::_process_line(ItemFrame *p_frame, const Vector2 &p_ofs, int & lh = line < l.height_caches.size() ? l.height_caches[line] : 1; \ line_ascent = line < l.ascent_caches.size() ? l.ascent_caches[line] : 1; \ line_descent = line < l.descent_caches.size() ? l.descent_caches[line] : 1; \ - if (p_mode == PROCESS_DRAW) { \ + if ((p_mode == PROCESS_DRAW) && (align != ALIGN_FILL)) { \ if (line < l.offset_caches.size()) { \ wofs = l.offset_caches[line]; \ } \ |