diff options
author | 2023-10-08 18:07:04 +0600 | |
---|---|---|
committer | 2023-10-08 18:07:04 +0600 | |
commit | 6aaf6e6766906cf37a87bffc171b92b74df8095e (patch) | |
tree | 3f412b0b83c7af33c7feaf436e7a643bcb076730 /src/window.vala | |
parent | 735d125f79fc8bb8234bb255ccd8573d010c13a1 (diff) | |
download | jadupc-remote-support-console-6aaf6e6766906cf37a87bffc171b92b74df8095e.tar.gz jadupc-remote-support-console-6aaf6e6766906cf37a87bffc171b92b74df8095e.zip |
API: Use Stdout Parser to generate events
Signed-off-by: Mubashshir <ahm@jadupc.com>
Diffstat (limited to 'src/window.vala')
-rw-r--r-- | src/window.vala | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/src/window.vala b/src/window.vala index 640e287..8a9eeaa 100644 --- a/src/window.vala +++ b/src/window.vala @@ -32,9 +32,7 @@ namespace JadupcSupport [GtkChild] private unowned Gtk.Label infobarText; [GtkChild] private unowned Gtk.Image infobarIcon; - private Tmate.Config configFactory; private Tmate.Session tmate; - private ulong? session_handler = null; public Window (Gtk.Application app) { @@ -42,17 +40,21 @@ namespace JadupcSupport utils.realize_all(this); // Realize all children to pacify Gtk. icon_name = "com.jadupc.support"; - configFactory = new Tmate.Config(); tmate = new Tmate.Session(); infobar.response.connect(() => infobar.set_revealed(false)); + delete_event.connect(() => { + tmate.delete_config(); + tmate.stop(); + return false; + }); - tmate.network_error.connect((message) => { + tmate.error.connect((message) => { show_in_infobar(ERROR, message); }); tmate.stopped.connect(reset_window); - tmate.address.connect((stype, addr) => { + tmate.address_changed.connect((stype, addr) => { if(Tmate.SessionType.SSH in stype) on_session_connect(addr); }); @@ -63,13 +65,7 @@ namespace JadupcSupport session.label = _("Connecting..."); view.visible_child_name = "inprogress"; - var config = configFactory.get(); - session_handler = tmate.started.connect(() => { - configFactory.delete(config); - tmate.disconnect(session_handler); - }); - - tmate.start(config); + tmate.start(new Tmate.Config()); }); terminal.child_exited.connect(status => { |