diff options
Diffstat (limited to 'src/yelp-window.c')
-rw-r--r-- | src/yelp-window.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/yelp-window.c b/src/yelp-window.c index c4c63647..a643d181 100644 --- a/src/yelp-window.c +++ b/src/yelp-window.c @@ -489,7 +489,14 @@ view_external_uri (YelpView *view, YelpWindow *window) { gchar *struri = yelp_uri_get_canonical_uri (uri); - g_app_info_launch_default_for_uri (struri, NULL, NULL); + if (g_str_has_prefix (struri, "install:")) { + YelpWindowPrivate *priv = GET_PRIV (window); + gchar *pkg = struri + 8; + yelp_application_install_package (priv->application, pkg, ""); + } + else + g_app_info_launch_default_for_uri (struri, NULL, NULL); + g_free (struri); } |