From b044dec60c0274ebf016154a26f6e1aa3eaa95d7 Mon Sep 17 00:00:00 2001 From: Mike Skec Date: Wed, 30 Dec 2020 13:16:41 +1100 Subject: file:// protocol now supports text/gemini by checking file extension --- src/protocols/filehandler.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/protocols/filehandler.cpp') diff --git a/src/protocols/filehandler.cpp b/src/protocols/filehandler.cpp index d26cd57..d53f13b 100644 --- a/src/protocols/filehandler.cpp +++ b/src/protocols/filehandler.cpp @@ -3,6 +3,7 @@ #include #include #include +#include FileHandler::FileHandler() { @@ -22,9 +23,22 @@ bool FileHandler::startRequest(const QUrl &url, RequestOptions options) if (file.open(QFile::ReadOnly)) { - QMimeDatabase db; - auto mime = db.mimeTypeForUrl(url).name(); auto data = file.readAll(); + QString mime; + + // Find mime type of file. We detect text/gemini + // using the file suffix. + QString suffix = QFileInfo(file).completeSuffix(); + if (suffix == "gmi") + { + mime = "text/gemini"; + } + else + { + QMimeDatabase db; + mime = db.mimeTypeForUrl(url).name(); + } + emit this->requestComplete(data, mime); } else -- cgit v1.2.3