[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: KIO patch
From: David Faure <david () mandrakesoft ! com>
Date: 2001-10-10 21:55:00
[Download RAW message or body]
> Another thing I noticed now is that it is possible to add context menu
> items for mime types this way.
Yes, well, that's what I was talking about ;)
> But there is an additional possibility
> to do this by installing a desktop-like file in servicemenus. Any reason
> for this duplication.
Servicemenus are very konqueror-specific (and kdesktop).
An application using KTrader to get hold of the applications associated
with a mimetype will get the "allow-as-default=false" applications in the
result, but it won't get the servicemenus.
> BTW, it seems that this context menu is not only
> added for files with the respective mime type, but also for the .desktop
> file itself. For example, if I point Konqueror to kdeutils/ark and click
> the right mouse button over arkservicemenu.desktop, it offers me to
> extract the file arkservicemenu.desktop... this doesn't seem right :-)
Bugs......
> > That doesn't matter. The servicetype Application is implicit for Type=Application
> > files anyway. So it's always there, whether explicitely or implicitely.
> > (The goal of that, is to automatically get all properties for an application,
> > see kdelibs/kio/application.desktop)
>
> Hmm, I'll never understand why mime types are called service types in
> some contexts :-/
After you read all this, and wrote so much docu about it !!?? ;)
Service types are a more generic notion than mimetypes.
Compare
"what are the applications handling text/html"
with
"what are the read-only parts in KDE"
The first one asks for the applications handling a mimetype (specific case)
the second one asks for the services (e.g. parts) handling a servicetype (called KParts/ReadOnlyPart).
The mechanism is the same, but can you say that KParts/ReadOnlyPart is a mimetype ?
Is't not, since it doesn't relate to the type of some files.
So an application is a particular case of a service (one that is described
by a Type=Application .desktop file, as opposed to general services which have
Type=Service),
and a mimetype is a particular case of a servicetype (one that is related to
the type of a file). MIME-types are a type of file... Service-types are a type of... service ;)
> Anyway, I thought that Type=Application files are meant
> to achieve some interoperability, and somehow I doubt that anyone except
> for KDE knows about a mime type "Application".
Of course not, since it's a servicetype, not a mimetype ;)
As I said, this is quite internal, it allows to use the mechanism of "grab the
available properties for a servicetype, from the servicetype's desktop file",
to declare the properties for Applications.
But you're right, no application cares about that explicitely, it's handled
by KIO itself.
> > Cool. Well, please drop me a mail (or mention in the cvs log) when it's finished :)
>
> Ok, I think they are complete enough for a first approximation. At least
> it's IMO more useful than the sparse information in the header files...
Yes, thanks much for your work on this.
I'll have a look whenever I can :}
> Speaking of header files, what about moving ProgressBase and friends into
> the KIO namespace? Also, hmmmmm, their header files are installed twice in
> different directories. One should be enough, shouldn't it? ;-)
That's probably a compatibility issue, feel free to fix and cleanup.
> Then there is ktypecode.h which is not used at all
Right, please remove, it has been replaced by ksycocatype.h
> and uiserver.h which is not part
> of the API but of a separate executable.
Hmm, so ? We need this interface to be declared and publically available,
libkonq needs it to generate the DCOP stubs needed to contact the UIServer.
So it's part of the API, in a way.
> And it seems uiserver.stub
> doesn't have to be linked into libkio..
Then how would a Job's Observer contact the UIServer ?
I think we need this.
David.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic