George Staikos staikos at
Tue Nov 8 13:34:56 GMT 2005

On Tuesday 08 November 2005 04:14, Andras Mantia wrote:
> On Tuesday 08 November 2005 10:51, Andras Mantia wrote:
> >  I will look at it.
> Well, this issue is more complex, than I thought. The problem is that
> you rely that KRecentFilesAction::items() returns a list with URLs, but
> now it returns a string that has the URL in it as well:
> nicename [URL]
> It is not that simple that I override items() in KRecentFilesAction to
> return the URL, as this method is called in the upper KListAction and
> KSelectAction classes to build the menu, modify the items and so.

  Yes, this is the problem.  (Thanks for fixing exports btw.  I need to get an 
updated compiler so I can test this too.)

> So the solutions are:
> - revert what I did. I would be sad.


> - rewrite KRecentFileAction, so it does not depend on
> KListAction/KSelectAction and does what we want. It is possible, but
> this close to the freeze it is dangerous.

   And it would also break code that casts to the base.

> - add a new method to KRecentFileAction called urls() or files() which
> return what you want and you have to use an #ifdef to call the right
> version, if kst should run on KDE 3.4 or lower. I'd prefer this one,
> even if this means some kind of behavioral incompatibility. The new way
> of working is there since July, so I'd assume not too many applications
> relied on items() returning a list of files. If we go this way, I will
> document the change as well.

  If a user has a KDE 3.4 compiled Kst and updates KDE to 3.5 it will still 
break.  Who knows which other applications out there do this too...

George Staikos
KDE Developer
Staikos Computing Services Inc.

More information about the kde-core-devel mailing list