@@ -541,7 +541,7 @@ void QgsPluginManager::reloadModelData()
541
541
mypDetailItem->setData ( error, PLUGIN_ERROR_ROLE );
542
542
mypDetailItem->setData ( description, PLUGIN_DESCRIPTION_ROLE );
543
543
mypDetailItem->setData ( author, PLUGIN_AUTHOR_ROLE );
544
- mypDetailItem->setData ( it->value ( QStringLiteral ( " tags" ) ), PLUGIN_TAGS_ROLE );
544
+ mypDetailItem->setData ( it->value ( QStringLiteral ( " tags" ) ). toLower () , PLUGIN_TAGS_ROLE );
545
545
mypDetailItem->setData ( it->value ( QStringLiteral ( " downloads" ) ).rightJustified ( 10 , ' 0' ), PLUGIN_DOWNLOADS_ROLE );
546
546
mypDetailItem->setData ( it->value ( QStringLiteral ( " average_vote" ) ), PLUGIN_VOTE_ROLE );
547
547
mypDetailItem->setData ( it->value ( QStringLiteral ( " deprecated" ) ), PLUGIN_ISDEPRECATED_ROLE );
@@ -909,7 +909,12 @@ void QgsPluginManager::showPluginDetails( QStandardItem *item )
909
909
}
910
910
if ( ! metadata->value ( QStringLiteral ( " tags" ) ).isEmpty () )
911
911
{
912
- html += QStringLiteral ( " <tr><td class='key'>%1 </td><td>%2</td></tr>" ).arg ( tr ( " Tags" ), metadata->value ( QStringLiteral ( " tags" ) ) );
912
+ QStringList tags = metadata->value ( QStringLiteral ( " tags" ) ).split ( ' ,' );
913
+ for ( auto tag = tags.begin (); tag != tags.end (); ++tag )
914
+ {
915
+ *tag = QStringLiteral ( " <a href='rpc2://search.tag/%1/'>%1</a>" ).arg ( ( *tag ).trimmed () );
916
+ }
917
+ html += QStringLiteral ( " <tr><td class='key'>%1 </td><td>%2</td></tr>" ).arg ( tr ( " Tags" ), tags.join ( QStringLiteral ( " , " ) ) );
913
918
}
914
919
915
920
if ( ! metadata->value ( QStringLiteral ( " homepage" ) ).isEmpty () || ! metadata->value ( QStringLiteral ( " tracker" ) ).isEmpty () || ! metadata->value ( QStringLiteral ( " code_repository" ) ).isEmpty () )
@@ -1305,8 +1310,13 @@ void QgsPluginManager::wvDetails_linkClicked( const QUrl &url )
1305
1310
{
1306
1311
if ( url.host () == QLatin1String ( " plugin.vote" ) )
1307
1312
{
1308
- QString params = url.path ();
1309
- sendVote ( params.split ( ' /' )[1 ].toInt (), params.split ( ' /' )[2 ].toInt () );
1313
+ QStringList params = url.path ().split ( ' /' );
1314
+ sendVote ( params[1 ].toInt (), params[2 ].toInt () );
1315
+ }
1316
+ else if ( url.host () == QLatin1String ( " search.tag" ) )
1317
+ {
1318
+ QStringList params = url.path ().split ( ' /' );
1319
+ leFilter->setText ( QStringLiteral ( " tag:%1" ).arg ( params[1 ] ) );
1310
1320
}
1311
1321
}
1312
1322
else
0 commit comments