[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kfm-devel
Subject:    Re: Intergrating mht file to konqueror
From:       David Faure <faure () kde ! org>
Date:       2004-11-04 19:29:41
Message-ID: 200411042029.42360.faure () kde ! org
[Download RAW message or body]

On Thursday 04 November 2004 20:08, Spiros Georgaras wrote:
> David Faure wrote:
> > Ah yeah I'm still behind with that.
> > How about adding support for X-KDE-LocalProtocol instead? Query the
> > mimetype for it, and if it's set, redirect to <protocol>://path.
> 
> Sorry David I don't understand what you mean.... :(
> Where does X-KDE-LocalProtocol refer to?
> Do you mean to change the mht.protocol file?
> 
> I see in konq_mainwindow.cc file:
> //////////// Tar/zip files support
> // The hack-ish and hardcoded way.
> // Possible cleaner solution: 2 properties in the mimetype definition,
> // e.g. X-Konq-Redirect-URL set to tar:%f/
> //  and X-Konq-Redirect-Mimetype set to inode/directory
> 
> This is something different right?
It was the initial idea long ago, but after discussion with Jowenn he added
X-KDE-LocalProtocol to the mimetypes instead.

For instance the mimetype application/x-tar has a property X-KDE-LocalProtocol
set to "tar" (see kdelibs/mimetypes/application/x-tar.desktop)

So the konq_mainwindow code would be like 

if ( url.isLocalFile() )
{
  KServiceType::Ptr ptr = KServiceType::serviceType( serviceType );
  if ( ptr ) 
  {
     const QString protocol = ptr->property("X-KDE-LocalProtocol").toString();
     if ( !protocol.isEmpty() )
     {
         url.setProtocol( protocol );
         url.setPath( url.path() + '/' );        // TODO: for *.war files we want \
                "/index.html". New property?
         serviceType = "inode/directory"; // would be text/html for *.war files...
     }
   }
}

Please test, it should work :)
Don't forget to add this to your mimetype .desktop file:

[Property::X-KDE-LocalProtocol]
Type=QString
Value=mht

Hmm, it looks like x-zip.desktop is missing it...

-- 
David Faure, faure@kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic