File 2492-observer-listen-on-correct-notebook-change.patch of Package erlang

From 55dc2d3f1bc236de9b47aeeb2a38120fd16e8394 Mon Sep 17 00:00:00 2001
From: Dan Gudmundsson <dgud@erlang.org>
Date: Tue, 9 May 2017 11:22:26 +0200
Subject: [PATCH 2/4] observer: listen on correct notebook change

Only listen to toplevel notebook changes, otherwise if
another windows have a notebook and do not handle the event
this process gets it and handles it wrongly.
---
 lib/observer/src/observer_wx.erl | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/observer/src/observer_wx.erl b/lib/observer/src/observer_wx.erl
index 739761e7f..9b9e80f47 100644
--- a/lib/observer/src/observer_wx.erl
+++ b/lib/observer/src/observer_wx.erl
@@ -143,7 +143,8 @@ setup(#state{frame = Frame} = State) ->
     wxFrame:setTitle(Frame, atom_to_list(node())),
     wxStatusBar:setStatusText(StatusBar, atom_to_list(node())),
 
-    wxNotebook:connect(Notebook, command_notebook_page_changed, [{skip, true}]),
+    wxNotebook:connect(Notebook, command_notebook_page_changed,
+                       [{skip, true}, {id, ?ID_NOTEBOOK}]),
     wxFrame:connect(Frame, close_window, []),
     wxMenu:connect(Frame, command_menu_selected),
     wxFrame:show(Frame),
@@ -230,12 +231,13 @@ setup(#state{frame = Frame} = State) ->
 
 %%Callbacks
 handle_event(#wx{event=#wxNotebook{type=command_notebook_page_changed, nSel=Next}},
-	     #state{active_tab=Previous, node=Node, panels=Panels} = State) ->
+	     #state{active_tab=Previous, node=Node, panels=Panels, status_bar=SB} = State) ->
     {_, Obj, _} = lists:nth(Next+1, Panels),
     case wx_object:get_pid(Obj) of
 	Previous ->
             {noreply, State};
 	Pid ->
+            wxStatusBar:setStatusText(SB, ""),
 	    Previous ! not_active,
 	    Pid ! {active, Node},
 	    {noreply, State#state{active_tab=Pid}}
-- 
2.13.0

openSUSE Build Service is sponsored by