dolphin/nsplugins/plugin_paths.cpp
Laurent Montel b6748719b4 Fix iterator
svn path=/trunk/KDE/kdebase/apps/; revision=883019
2008-11-11 21:58:32 +00:00

72 lines
2.6 KiB
C++

/*
This application scans for Netscape plugins and create a cache and
the necessary mimelnk and service files.
Copyright (c) 2000 Matthias Hoelzer-Kluepfel <hoelzer@kde.org>
Stefan Schimanski <1Stein@gmx.de>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#include "plugin_paths.h"
#include <QtCore/QGlobalStatic>
#include <ksharedconfig.h>
#include <kconfiggroup.h>
#include <stdlib.h>
QStringList getSearchPaths()
{
QStringList searchPaths;
KConfigGroup config(KSharedConfig::openConfig( "kcmnspluginrc", KConfig::NoGlobals ), "Misc");
// setup default paths
if ( !config.hasKey("scanPaths") ) {
QStringList paths;
// keep sync with kdebase/apps/konqueror/settings/konqhtml
paths.append("$HOME/.mozilla/plugins");
paths.append("$HOME/.netscape/plugins");
paths.append("/usr/lib/firefox/plugins");
paths.append("/usr/lib64/browser-plugins");
paths.append("/usr/lib/browser-plugins");
paths.append("/usr/local/netscape/plugins");
paths.append("/opt/mozilla/plugins");
paths.append("/opt/mozilla/lib/plugins");
paths.append("/opt/netscape/plugins");
paths.append("/opt/netscape/communicator/plugins");
paths.append("/usr/lib/netscape/plugins");
paths.append("/usr/lib/netscape/plugins-libc5");
paths.append("/usr/lib/netscape/plugins-libc6");
paths.append("/usr/lib/mozilla/plugins");
paths.append("/usr/lib64/netscape/plugins");
paths.append("/usr/lib64/mozilla/plugins");
paths.append("$MOZILLA_HOME/plugins");
config.writeEntry( "scanPaths", paths );
}
// read paths
searchPaths = config.readPathEntry( "scanPaths", QStringList() );
// append environment variable NPX_PLUGIN_PATH
const QStringList envs = QString( qgetenv("NPX_PLUGIN_PATH") ).split(':');
QStringList::const_iterator it;
for (it = envs.constBegin(); it != envs.constEnd(); ++it)
searchPaths.append(*it);
return searchPaths;
}