1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/desktop.py Fri Sep 23 16:31:52 2005 +0000
1.3 @@ -0,0 +1,37 @@
1.4 +#!/usr/bin/env python
1.5 +
1.6 +"Simple desktop integration for Python."
1.7 +
1.8 +import os
1.9 +import subprocess
1.10 +
1.11 +def open(url, desktop=None):
1.12 +
1.13 + """
1.14 + Open the 'url' in the current desktop's preferred file browser. If the
1.15 + optional 'desktop' parameter is specified then attempt to use that
1.16 + particular desktop environment's mechanisms to open the 'url' instead of
1.17 + guessing or detecting which environment is being used.
1.18 +
1.19 + Suggested values for 'desktop' are "KDE" and "GNOME".
1.20 + """
1.21 +
1.22 + if desktop == "KDE" or \
1.23 + desktop is None and (os.environ.has_key("KDE_FULL_SESSION") or
1.24 + os.environ.has_key("KDE_MULTIHEAD")):
1.25 +
1.26 + cmd = ["kfmclient", "openURL", url]
1.27 +
1.28 + elif desktop == "GNOME" or \
1.29 + desktop is None and (os.environ.has_key("GNOME_DESKTOP_SESSION_ID") or
1.30 + os.environ.has_key("GNOME_KEYRING_SOCKET")):
1.31 +
1.32 + cmd = ["gnome-open", url]
1.33 +
1.34 + else:
1.35 + os.startfile(url)
1.36 + return
1.37 +
1.38 + subprocess.Popen(cmd)
1.39 +
1.40 +# vim: tabstop=4 expandtab shiftwidth=4