[kupfer: 5/67] Change launch_commandline
- From: Ulrik Sverdrup <usverdrup src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [kupfer: 5/67] Change launch_commandline
- Date: Sat, 19 Mar 2011 00:58:09 +0000 (UTC)
commit c76c0bd17cdab1864f550e68093c3adb8c77f34c
Author: Ulrik Sverdrup <ulrik sverdrup gmail com>
Date: Tue Mar 15 22:52:25 2011 +0100
Change launch_commandline
kupfer/utils.py | 22 +++++++++++++++++++---
1 files changed, 19 insertions(+), 3 deletions(-)
---
diff --git a/kupfer/utils.py b/kupfer/utils.py
index d4d48ad..c1fd8ae 100644
--- a/kupfer/utils.py
+++ b/kupfer/utils.py
@@ -181,12 +181,25 @@ class AsyncCommand (object):
TERM = "gnome-terminal"
TERM_STARTUPNOTIFY = True
+TERM_EXECARG = "-x"
TERM_ID = "gnome-terminal.desktop"
+def _get_term_argv(_argv):
+ argv = [TERM]
+ if TERM_EXECARG:
+ argv.append(TERM_EXECARG)
+ argv.extend(_argv)
+ return argv
+
def spawn_terminal(workdir=None):
desktop_launch.spawn_app_id(TERM_ID, [TERM], workdir, TERM_STARTUPNOTIFY)
+def spawn_in_terminal(argv, workdir=None):
+ _argv = _get_term_argv(argv)
+ desktop_launch.spawn_app_id(TERM_ID, _argv , workdir, TERM_STARTUPNOTIFY)
+
def spawn_async(argv, in_dir="."):
+ "Silently spawn @argv in the background"
pretty.print_debug(__name__, "Spawn commandline", argv, in_dir)
argv = _argv_to_locale(argv)
try:
@@ -205,9 +218,12 @@ def app_info_for_commandline(cli, name=None, in_terminal=False):
def launch_commandline(cli, name=None, in_terminal=False):
from kupfer import launch
- app_info = app_info_for_commandline(cli, name, in_terminal)
- pretty.print_debug(__name__, "Launch commandline (in_terminal=", in_terminal, "):", cli, sep="")
- return launch.launch_application(app_info, activate=False, track=False)
+ from kupfer import desktop_parse
+ argv = desktop_parse.parse_argv(cli)
+ pretty.print_debug(__name__, "Launch commandline (in_terminal=", in_terminal, "):", argv, sep="")
+ if in_terminal:
+ return spawn_in_terminal(argv)
+ return spawn_async(argv)
def launch_app(app_info, files=(), uris=(), paths=()):
from kupfer import launch
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]