File 2781-Allow-starting-the-observer-connected-to-a-node.patch of Package erlang

From 0efb9027a57d97a6eab1f1595ce707ac753e40f0 Mon Sep 17 00:00:00 2001
From: Benedikt Reinartz <filmor@gmail.com>
Date: Thu, 27 Oct 2022 15:57:50 +0200
Subject: [PATCH 01/12] Allow starting the observer connected to a node

---
 lib/observer/src/observer.erl    |  8 +++++++-
 lib/observer/src/observer_wx.erl | 10 +++++++++-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/lib/observer/src/observer.erl b/lib/observer/src/observer.erl
index 79ba7fd614..ae2cd930c4 100644
--- a/lib/observer/src/observer.erl
+++ b/lib/observer/src/observer.erl
@@ -19,11 +19,17 @@
 
 -module(observer).
 
--export([start/0, stop/0]).
+-export([start/0, start/1, stop/0]).
 
 
 start() ->
     observer_wx:start().
 
+start(Node) ->
+    net_adm:ping(Node),
+    Res = observer_wx:start(),
+    observer_wx:set_node(Node),
+    Res.
+
 stop() ->
     observer_wx:stop().
diff --git a/lib/observer/src/observer_wx.erl b/lib/observer/src/observer_wx.erl
index 321f189fc9..7b64f82f18 100644
--- a/lib/observer/src/observer_wx.erl
+++ b/lib/observer/src/observer_wx.erl
@@ -22,7 +22,8 @@
 
 -export([start/0, stop/0]).
 -export([create_menus/2, get_attrib/1, get_tracer/0, get_active_node/0, get_menubar/0,
-     get_scale/0, set_status/1, create_txt_dialog/4, try_rpc/4, return_to_localnode/2]).
+     get_scale/0, set_status/1, create_txt_dialog/4, try_rpc/4, return_to_localnode/2,
+     set_node/1]).
 
 -export([init/1, handle_event/2, handle_cast/2, terminate/2, code_change/3,
 	 handle_call/3, handle_info/2, check_page_title/1]).
@@ -89,6 +90,9 @@ get_tracer() ->
 get_active_node() ->
     wx_object:call(observer, get_active_node).
 
+set_node(Node) ->
+    wx_object:call(observer, {set_node, Node}).
+
 get_menubar() ->
     wx_object:call(observer, get_menubar).
 
@@ -427,6 +431,10 @@ handle_call(get_tracer, _From, State=#state{panels=Panels}) ->
 handle_call(get_active_node, _From, State=#state{node=Node}) ->
     {reply, Node, State};
 
+handle_call({set_node, Node}, _From, State) ->
+    State2 = change_node_view(Node, State),
+    {reply, ok, State2};
+
 handle_call(get_menubar, _From, State=#state{menubar=MenuBar}) ->
     {reply, MenuBar, State};
 
-- 
2.35.3

openSUSE Build Service is sponsored by