Commit 4ef1c7e7 authored by Ronald Oussoren's avatar Ronald Oussoren

For for issue #7192: with this patch webbrowser.get("firefox")

works on OSX
parent 328284ad
...@@ -599,9 +599,35 @@ if sys.platform == 'darwin': ...@@ -599,9 +599,35 @@ if sys.platform == 'darwin':
rc = osapipe.close() rc = osapipe.close()
return not rc return not rc
class MacOSXOSAScript(BaseBrowser):
def __init__(self, name):
self._name = name
def open(self, url, new=0, autoraise=True):
if self._name == 'default':
script = 'open location "%s"' % url.replace('"', '%22') # opens in default browser
else:
script = '''
tell application "%s"
activate
open location "%s"
end
'''%(self._name, url.replace('"', '%22'))
osapipe = os.popen("osascript", "w")
if osapipe is None:
return False
osapipe.write(script)
rc = osapipe.close()
return not rc
# Don't clear _tryorder or _browsers since OS X can use above Unix support # Don't clear _tryorder or _browsers since OS X can use above Unix support
# (but we prefer using the OS X specific stuff) # (but we prefer using the OS X specific stuff)
register("MacOSX", None, MacOSX('default'), -1) register("MacOSX", None, MacOSXOSAScript('default'), -1)
register("safari", None, MacOSXOSAScript('safari'), -1)
register("firefox", None, MacOSXOSAScript('firefox'), -1)
# #
......
...@@ -31,6 +31,9 @@ Core and Builtins ...@@ -31,6 +31,9 @@ Core and Builtins
Library Library
------- -------
- Issue #7192: webbrowser.get("firefox") now wors on Mac OS X, as does
webbrowser.get("safari").
- Issue #8577: distutils.sysconfig.get_python_inc() now makes a difference - Issue #8577: distutils.sysconfig.get_python_inc() now makes a difference
between the build dir and the source dir when looking for "python.h" or between the build dir and the source dir when looking for "python.h" or
"Include". "Include".
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment