@@ -677,8 +677,8 @@ void QgsPluginManager::showPluginDetails( QStandardItem *item )
677
677
" padding-right:10px;"
678
678
" text-align:right;"
679
679
" }"
680
- " td.version {"
681
- " cursor:pointer ;"
680
+ " td.version img {"
681
+ " height:0.8em ;"
682
682
" }"
683
683
" </style>" ;
684
684
@@ -940,17 +940,30 @@ void QgsPluginManager::showPluginDetails( QStandardItem *item )
940
940
{
941
941
QString ver = metadata->value ( QStringLiteral ( " version_installed" ) );
942
942
if ( ver == QLatin1String ( " -1" ) ) ver = ' ?' ;
943
- html += QStringLiteral ( " <tr><td class='key'>%1 </td><td class='version' title='%2 %3'> %4 </td></tr>" ).arg ( tr ( " Installed version" ),
944
- tr ( " in" ),
945
- metadata->value ( QStringLiteral ( " library" ) ),
946
- ver );
943
+ html += QStringLiteral ( " <tr><td class='key'>%1 </td><td class='version' title='%2 %3'> %4 <a href=\" %5\" >
944
+ " <img src=\" qrc:/images/themes/default/externalLink.svg\" ></a></td></tr>"
945
+ ).arg ( tr ( " Installed version" ),
946
+ tr ( " in" ),
947
+ metadata->value ( QStringLiteral ( " library" ) ),
948
+ ver,
949
+ QUrl::fromLocalFile ( metadata->value ( QStringLiteral ( " library" ) ) ).toString () );
947
950
}
948
951
if ( ! metadata->value ( QStringLiteral ( " version_available" ) ).isEmpty () )
949
952
{
950
- html += QStringLiteral ( " <tr><td class='key'>%1 </td><td class='version' title='%2 %3'> %4 </td></tr>" ).arg ( tr ( " Available version" ),
951
- tr ( " in" ),
952
- metadata->value ( QStringLiteral ( " zip_repository" ) ),
953
- metadata->value ( QStringLiteral ( " version_available" ) ) );
953
+ QString downloadUrl = metadata->value ( QStringLiteral ( " download_url" ) );
954
+ if ( downloadUrl.contains ( QStringLiteral ( " plugins.qgis.org" ) ) )
955
+ {
956
+ // For the main repo, open the plugin version page instead of the download link. For other repositories the download link is the only known endpoint.
957
+ downloadUrl = downloadUrl.replace ( QStringLiteral ( " download/" ), QStringLiteral ( " " ) );
958
+ }
959
+
960
+ html += QStringLiteral ( " <tr><td class='key'>%1 </td><td class='version' title='%2 %3'> %4 <a href=\" %5\" >"
961
+ " <img src=\" qrc:/images/themes/default/externalLink.svg\" ></a></td></tr>"
962
+ ).arg ( tr ( " Available version" ),
963
+ tr ( " in" ),
964
+ metadata->value ( QStringLiteral ( " zip_repository" ) ),
965
+ metadata->value ( QStringLiteral ( " version_available" ) ),
966
+ downloadUrl );
954
967
}
955
968
956
969
if ( ! metadata->value ( QStringLiteral ( " changelog" ) ).isEmpty () )
0 commit comments