From 332941e9d86e9c2a5238620390fcc39ffccaeed4 Mon Sep 17 00:00:00 2001 From: Dmytro Milinevskyy Date: Fri, 26 Feb 2010 00:29:30 +0200 Subject: [uzbl-tabbed] add support for opening tab next to current and background tabs --- examples/data/scripts/uzbl-tabbed | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'examples/data/scripts/uzbl-tabbed') diff --git a/examples/data/scripts/uzbl-tabbed b/examples/data/scripts/uzbl-tabbed index 7bd90d5..e3e890d 100755 --- a/examples/data/scripts/uzbl-tabbed +++ b/examples/data/scripts/uzbl-tabbed @@ -488,6 +488,13 @@ class UzblInstance: self.parent.update_tablist() elif type == "NEW_TAB": self.parent.new_tab(args) + elif type == "NEW_BG_TAB": + self.parent.new_tab(args, '', 0) + elif type == "NEW_TAB_NEXT": + self.parent.new_tab(args, next=True) + elif type == "NEW_BG_TAB_NEXT": + self.parent.new_tab(args, '', 0, next=True) + elif type == "NEXT_TAB": if args: self.parent.next_tab(int(args)) @@ -966,7 +973,7 @@ class UzblTabbed: return False - def new_tab(self, uri='', title='', switch=None): + def new_tab(self, uri='', title='', switch=None, next=False): '''Add a new tab to the notebook and start a new instance of uzbl. Use the switch option to negate config['switch_to_new_tabs'] option when you need to load multiple tabs at a time (I.e. like when @@ -974,7 +981,7 @@ class UzblTabbed: tab = gtk.Socket() tab.show() - self.notebook.append_page(tab) + self.notebook.insert_page(tab, position=next and self.notebook.get_current_page() + 1 or -1) sid = tab.get_id() uri = uri.strip() name = "%d-%d" % (os.getpid(), self.next_pid()) -- cgit v1.2.3 From 69380293dc1fdf65a7e105b55150e9feee715e2c Mon Sep 17 00:00:00 2001 From: Dmytro Milinevskyy Date: Fri, 26 Feb 2010 01:08:57 +0200 Subject: [uzbl-tabbed] correctly wait for child uzbl-core when tab is closed --- examples/data/scripts/uzbl-tabbed | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'examples/data/scripts/uzbl-tabbed') diff --git a/examples/data/scripts/uzbl-tabbed b/examples/data/scripts/uzbl-tabbed index e3e890d..e542dbf 100755 --- a/examples/data/scripts/uzbl-tabbed +++ b/examples/data/scripts/uzbl-tabbed @@ -371,8 +371,9 @@ class SocketClient: class UzblInstance: '''Uzbl instance meta-data/meta-action object.''' - def __init__(self, parent, tab, name, uri, title, switch): + def __init__(self, parent, tab, name, uri, title, switch, process): + self.process = process self.parent = parent self.tab = tab self.name = name @@ -527,6 +528,7 @@ class UzblInstance: if self._client: self._client.close() self._client = None + self.process.wait() class UzblTabbed: @@ -994,9 +996,9 @@ class UzblTabbed: cmd = ['uzbl-browser', '-n', name, '-s', str(sid), '--connect-socket', self.socket_path, '--uri', uri] - subprocess.Popen(cmd) # TODO: do i need close_fds=True ? + process = subprocess.Popen(cmd) # TODO: do i need close_fds=True ? - uzbl = UzblInstance(self, tab, name, uri, title, switch) + uzbl = UzblInstance(self, tab, name, uri, title, switch, process) SocketClient.instances_queue[name] = uzbl self.tabs[tab] = uzbl -- cgit v1.2.3 From 8e34c38f9709a38872a962e78e1d5096f4ddf05b Mon Sep 17 00:00:00 2001 From: Dmytro Milinevskyy Date: Fri, 26 Feb 2010 01:56:32 +0200 Subject: reverted commit --- examples/data/scripts/uzbl-tabbed | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'examples/data/scripts/uzbl-tabbed') diff --git a/examples/data/scripts/uzbl-tabbed b/examples/data/scripts/uzbl-tabbed index e542dbf..e3e890d 100755 --- a/examples/data/scripts/uzbl-tabbed +++ b/examples/data/scripts/uzbl-tabbed @@ -371,9 +371,8 @@ class SocketClient: class UzblInstance: '''Uzbl instance meta-data/meta-action object.''' - def __init__(self, parent, tab, name, uri, title, switch, process): + def __init__(self, parent, tab, name, uri, title, switch): - self.process = process self.parent = parent self.tab = tab self.name = name @@ -528,7 +527,6 @@ class UzblInstance: if self._client: self._client.close() self._client = None - self.process.wait() class UzblTabbed: @@ -996,9 +994,9 @@ class UzblTabbed: cmd = ['uzbl-browser', '-n', name, '-s', str(sid), '--connect-socket', self.socket_path, '--uri', uri] - process = subprocess.Popen(cmd) # TODO: do i need close_fds=True ? + subprocess.Popen(cmd) # TODO: do i need close_fds=True ? - uzbl = UzblInstance(self, tab, name, uri, title, switch, process) + uzbl = UzblInstance(self, tab, name, uri, title, switch) SocketClient.instances_queue[name] = uzbl self.tabs[tab] = uzbl -- cgit v1.2.3