diff options
author | Bryan Quigley <gquigs@gmail.com> | 2016-01-06 15:11:09 -0500 |
---|---|---|
committer | Jan-Marek Glogowski <glogow@fbihome.de> | 2016-03-02 16:19:27 +0000 |
commit | cafd3adcbaa6714dc3674788401cf0f58fbbcb5e (patch) | |
tree | 869887be67d97d6bd0a838ffeea1d42109a8c5ae /shell/source | |
parent | 3fd13a33670e8526bfe32bd4af83315cb35db697 (diff) |
Just use xdg-open
Remove kde4/tde/open-url.sh and have LO just use xdg-open.
It's available on TDE builds as well as any recent KDE. We recently
did this just for gnome-open-url and have had no reported issues.
Change-Id: I4e1ee6caef368051af92023fa382b6fed9d9397e
Reviewed-on: https://gerrit.libreoffice.org/21173
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Diffstat (limited to 'shell/source')
-rw-r--r-- | shell/source/unix/exec/shellexec.cxx | 47 | ||||
-rwxr-xr-x | shell/source/unix/misc/kde4-open-url.sh | 21 | ||||
-rwxr-xr-x | shell/source/unix/misc/open-url.sh | 96 | ||||
-rwxr-xr-x | shell/source/unix/misc/tde-open-url.sh | 25 |
4 files changed, 2 insertions, 187 deletions
diff --git a/shell/source/unix/exec/shellexec.cxx b/shell/source/unix/exec/shellexec.cxx index 7dadfd213e24..89481bf2c2db 100644 --- a/shell/source/unix/exec/shellexec.cxx +++ b/shell/source/unix/exec/shellexec.cxx @@ -153,52 +153,9 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aPar // the CWD) on stderr and SystemShellExecuteException. aBuffer.append("open --"); #else - // The url launchers are expected to be in the $BRAND_BASE_DIR/LIBO_LIBEXEC_FOLDER - // directory: - css::uno::Reference< css::util::XMacroExpander > exp = css::util::theMacroExpander::get(m_xContext); - OUString aProgramURL; - try { - aProgramURL = exp->expandMacros( "$BRAND_BASE_DIR/" LIBO_LIBEXEC_FOLDER "/"); - } catch (css::lang::IllegalArgumentException &) - { - throw SystemShellExecuteException( - "Could not expand $BRAND_BASE_DIR path", - static_cast < XSystemShellExecute * > (this), ENOENT ); - } - - OUString aProgram; - if ( FileBase::E_None != FileBase::getSystemPathFromFileURL(aProgramURL, aProgram)) - { - throw SystemShellExecuteException( - "Cound not convert executable path", - static_cast < XSystemShellExecute * > (this), ENOENT ); - } - - OString aTmp = OUStringToOString(aProgram, osl_getThreadTextEncoding()); - escapeForShell(aBuffer, aTmp); - -#ifdef SOLARIS - if ( m_aDesktopEnvironment.getLength() == 0 ) - m_aDesktopEnvironment = OString("GNOME"); -#endif - - // Respect the desktop environment - if there is an executable named - // <desktop-environement-is>-open-url, pass the url to this one instead - // of the default "open-url" script. - if ( !m_aDesktopEnvironment.isEmpty() ) - { - OString aDesktopEnvironment(m_aDesktopEnvironment.toAsciiLowerCase()); - OStringBuffer aCopy(aTmp); - - aCopy.append(aDesktopEnvironment + "-open-url"); - - if ( 0 == access( aCopy.getStr(), X_OK) ) - { - aBuffer.append(aDesktopEnvironment + "-"); - } - } + // Just use xdg-open on non-Mac - aBuffer.append("open-url"); + aBuffer.append("/usr/bin/xdg-open"); #endif aBuffer.append(" "); escapeForShell(aBuffer, OUStringToOString(aURL, osl_getThreadTextEncoding())); diff --git a/shell/source/unix/misc/kde4-open-url.sh b/shell/source/unix/misc/kde4-open-url.sh deleted file mode 100755 index c6e8b17453e8..000000000000 --- a/shell/source/unix/misc/kde4-open-url.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# This file incorporates work covered by the following license notice: -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed -# with this work for additional information regarding copyright -# ownership. The ASF licenses this file to you under the Apache -# License, Version 2.0 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.apache.org/licenses/LICENSE-2.0 . -# - -# use kde-open or xdg-open if available, falling back to our own open-url -kde-open "$1" 2>/dev/null || xdg-open "$1" 2>/dev/null || `dirname "$0"`/open-url "$1" 2>/dev/null diff --git a/shell/source/unix/misc/open-url.sh b/shell/source/unix/misc/open-url.sh deleted file mode 100755 index 72aa566e9aa9..000000000000 --- a/shell/source/unix/misc/open-url.sh +++ /dev/null @@ -1,96 +0,0 @@ -#!/bin/sh -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# This file incorporates work covered by the following license notice: -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed -# with this work for additional information regarding copyright -# ownership. The ASF licenses this file to you under the Apache -# License, Version 2.0 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.apache.org/licenses/LICENSE-2.0 . -# - -# tries to locate the executable specified -# as first parameter in the user's path. -which() { - if [ ! -z "$1" ]; then - for i in `echo $PATH | sed -e 's/^:/.:/g' -e 's/:$/:./g' -e 's/::/:.:/g' -e 's/:/ /g'`; do - if [ -x "$i/$1" -a ! -d "$i/$1" ]; then - echo "$i/$1" - break; - fi - done - fi -} - -# checks for the original mozilla start script(s) -# and restrict the "-remote" semantics to those. -run_mozilla() { - if file "$1" | grep script > /dev/null && grep NPL "$1" > /dev/null; then - "$1" -remote 'ping()' 2>/dev/null >/dev/null - if [ $? -eq 2 ]; then - "$1" "$2" & - else - "$1" -remote \ - "openURL($(printf '%s' "$2" \ - | sed -e 's/(/%28/g' -e 's/)/%29/g' -e 's/,/%2C/g'),new-window)" & - fi - else - "$1" "$2" & - fi -} - -# special handling for mailto: uris -if echo "$1" | grep '^mailto:' > /dev/null; then - # check for xdg-email - mailer=`which xdg-email` - if [ ! -z "$mailer" ]; then - $mailer "$1" & - exit 0 - fi - # check $MAILER variable - if [ ! -z "$MAILER" ]; then - $MAILER "$1" & - exit 0 - fi - # mozilla derivates may need -remote semantics - for i in thunderbird mozilla netscape icedove iceape; do - mailer=`which $i` - if [ ! -z "$mailer" ]; then - run_mozilla "$mailer" "$1" - exit 0 - fi - done - # handle all non mozilla mail clients below - # .. -else - # check for xdg-open - browser=`which xdg-open` - if [ ! -z "$browser" ]; then - $browser "$1" & - exit 0 - fi - # check $BROWSER variable - if [ ! -z "$BROWSER" ]; then - $BROWSER "$1" & - exit 0 - fi - # mozilla derivates may need -remote semantics - for i in chrome seamonkey firefox iceweasel iceape; do - browser=`which $i` - if [ ! -z "$browser" ]; then - run_mozilla "$browser" "$1" - exit 0 - fi - done - # handle all non mozilla browsers below - # .. -fi -exit 1 diff --git a/shell/source/unix/misc/tde-open-url.sh b/shell/source/unix/misc/tde-open-url.sh deleted file mode 100755 index b0eac27963df..000000000000 --- a/shell/source/unix/misc/tde-open-url.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/sh -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# -# This file incorporates work covered by the following license notice: -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed -# with this work for additional information regarding copyright -# ownership. The ASF licenses this file to you under the Apache -# License, Version 2.0 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.apache.org/licenses/LICENSE-2.0 . -# - -# special handling for mailto: uris -if echo $1 | grep '^mailto:' > /dev/null; then - kmailservice "$1" & -else - kfmclient openURL "$1" & -fi |