diff --git a/src/handlers/xdgurl.cpp b/src/handlers/xdgurl.cpp
index 3ab4e3b588c13402622eff3c46e6c74ed33207f2..8391558febb0c7229035317fc256caf78f539a38 100644
--- a/src/handlers/xdgurl.cpp
+++ b/src/handlers/xdgurl.cpp
@@ -21,6 +21,7 @@ XdgUrl::XdgUrl(const QString &xdgUrl, Core::Config *config, Core::Network *netwo
     _loadDestinations();
 
     connect(_network, &Core::Network::finished, this, &XdgUrl::_downloaded);
+    connect(_network, &Core::Network::downloadProgress, this, &XdgUrl::downloadProgress);
 }
 
 void XdgUrl::_parse()
diff --git a/src/handlers/xdgurl.h b/src/handlers/xdgurl.h
index ada3943c6061949dd7a3096ed06e6bc169dc3b5e..becb66906f6a9c0a0a93cda79390ac5db35b67a9 100644
--- a/src/handlers/xdgurl.h
+++ b/src/handlers/xdgurl.h
@@ -48,6 +48,7 @@ signals:
     void started();
     void finished(const QString &result);
     void error(const QString &result);
+    void downloadProgress(const qint64 &received, const qint64 &total);
 };
 
 } // namespace Handlers