using explicit QUrl

so that we can be sure it's always properly encoded everywhere