External web browsers support for multiple arguments.
This commit is contained in:
parent
975dd62e9b
commit
6095f35d28
@ -215,9 +215,9 @@ void MessagesView::loadFeeds(const QList<int> &feed_ids) {
|
|||||||
void MessagesView::openSelectedSourceArticlesExternally() {
|
void MessagesView::openSelectedSourceArticlesExternally() {
|
||||||
QString browser = Settings::instance()->value(APP_CFG_MESSAGES,
|
QString browser = Settings::instance()->value(APP_CFG_MESSAGES,
|
||||||
"external_browser_executable").toString();
|
"external_browser_executable").toString();
|
||||||
QStringList arguments = Settings::instance()->value(APP_CFG_MESSAGES,
|
QString arguments = Settings::instance()->value(APP_CFG_MESSAGES,
|
||||||
"external_browser_arguments",
|
"external_browser_arguments",
|
||||||
"%1").toString().split(' ');
|
"%1").toString();
|
||||||
|
|
||||||
if (browser.isEmpty() || arguments.isEmpty()) {
|
if (browser.isEmpty() || arguments.isEmpty()) {
|
||||||
QMessageBox::critical(this,
|
QMessageBox::critical(this,
|
||||||
@ -229,9 +229,8 @@ void MessagesView::openSelectedSourceArticlesExternally() {
|
|||||||
|
|
||||||
foreach (const QModelIndex &index, selectionModel()->selectedRows()) {
|
foreach (const QModelIndex &index, selectionModel()->selectedRows()) {
|
||||||
QString link = m_sourceModel->messageAt(m_proxyModel->mapToSource(index).row()).m_url;
|
QString link = m_sourceModel->messageAt(m_proxyModel->mapToSource(index).row()).m_url;
|
||||||
QStringList real_arguments = arguments.replaceInStrings("%1", link);
|
|
||||||
|
|
||||||
if (!QProcess::startDetached(browser, real_arguments)) {
|
if (!QProcess::startDetached(browser + ' ' + arguments.arg(link))) {
|
||||||
QMessageBox::critical(this,
|
QMessageBox::critical(this,
|
||||||
tr("Problem with starting external web browser"),
|
tr("Problem with starting external web browser"),
|
||||||
tr("External web browser could not be started."),
|
tr("External web browser could not be started."),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user