summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorIgnacio Etcheverry <ignalfonsore@gmail.com>2016-01-24 16:26:03 +0100
committerIgnacio Etcheverry <ignalfonsore@gmail.com>2016-01-24 16:26:03 +0100
commita3e491435593f75e394b8ec72c192d3119bf72d0 (patch)
tree16761fd1e9bf0af74355f1696e66e1f55ed76c1c /tools
parentdfbc2dce177462506d9c41dfaa867dd76bd136a7 (diff)
Fix Output panel annoying focus steal
Diffstat (limited to 'tools')
-rw-r--r--tools/editor/editor_node.cpp10
-rw-r--r--tools/editor/editor_node.h1
-rw-r--r--tools/editor/script_editor_debugger.cpp4
3 files changed, 14 insertions, 1 deletions
diff --git a/tools/editor/editor_node.cpp b/tools/editor/editor_node.cpp
index eae2d69dd9..8d36134605 100644
--- a/tools/editor/editor_node.cpp
+++ b/tools/editor/editor_node.cpp
@@ -4579,6 +4579,16 @@ ToolButton *EditorNode::add_bottom_panel_item(String p_text,Control *p_item) {
}
+bool EditorNode::are_bottom_panels_hidden() const {
+
+ for(int i=0;i<bottom_panel_items.size();i++) {
+ if (bottom_panel_items[i].button->is_pressed())
+ return false;
+ }
+
+ return true;
+}
+
void EditorNode::hide_bottom_panel() {
_bottom_panel_switch(false,0);
diff --git a/tools/editor/editor_node.h b/tools/editor/editor_node.h
index 4dc942c023..c687643d30 100644
--- a/tools/editor/editor_node.h
+++ b/tools/editor/editor_node.h
@@ -670,6 +670,7 @@ public:
ToolButton* add_bottom_panel_item(String p_text,Control *p_item);
+ bool are_bottom_panels_hidden() const;
void make_bottom_panel_item_visible(Control *p_item);
void raise_bottom_panel_item(Control *p_item);
void hide_bottom_panel();
diff --git a/tools/editor/script_editor_debugger.cpp b/tools/editor/script_editor_debugger.cpp
index 297f10a1c8..bcc80796c4 100644
--- a/tools/editor/script_editor_debugger.cpp
+++ b/tools/editor/script_editor_debugger.cpp
@@ -360,7 +360,9 @@ void ScriptEditorDebugger::_parse_message(const String& p_msg,const Array& p_dat
if (EditorNode::get_log()->is_hidden()) {
log_forced_visible=true;
- EditorNode::get_singleton()->make_bottom_panel_item_visible(EditorNode::get_log());
+ if (EditorNode::get_singleton()->are_bottom_panels_hidden()) {
+ EditorNode::get_singleton()->make_bottom_panel_item_visible(EditorNode::get_log());
+ }
}
EditorNode::get_log()->add_message(t);