Review Request: Make KFileDialog remember settings

Aurélien Gâteau agateau at kde.org
Tue Oct 2 09:15:50 BST 2012



> On Sept. 30, 2012, 8:26 a.m., David Faure wrote:
> > Looks good to me (feel free to commit if nobody else has comments).
> > 
> > But then, what if someone is annoyed by icon views, and wants a details view everywhere? [switch this sentence around if the default is details view]
> > He'll have to switch the view mode of kfiledialog in every single KDE app, right?
> > Tough problem, there's never a perfect solution with these things (making everyone happy leads to too many config options, and alternatives leave some people unhappy).
> >

I have been using it for a while, and I have to admit it is surprising to have the dialog show up with different layouts depending on the application. I found a way to force KDirOperator to write its config to kdeglobals without extending the API, by replacing the call to KDirOperator::writeConfig() with this:

    KConfig tmp( QString(), KConfig::SimpleConfig );
    KConfigGroup tmpGroup( &tmp, configGroup.name() );
    ops->writeConfig( tmpGroup );
    tmpGroup.copyTo( &configGroup, globalFlags );

I can update the patch to do this if you prefer. It should even be possible to avoid adding globalFlags to all writeEntry() calls by making all the code of the function write to the tmpGroup. That would be closer to the way the code was supposed to work.


- Aurélien


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/106581/#review19620
-----------------------------------------------------------


On Sept. 26, 2012, 4:19 p.m., Aurélien Gâteau wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/106581/
> -----------------------------------------------------------
> 
> (Updated Sept. 26, 2012, 4:19 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Description
> -------
> 
> This patch makes KFileDialog remember settings such as which view mode is selected and whether the places sidebar should be visible.
> 
> Original code tried to save those to kdeglobals so that changes would be shared among all applications but it did so the wrong way. The patch writes the configuration to kdeglobals correctly, but saves the KDirOperator to the application config file (KDirOperator configuration settings are sort settings, show preview, show hidden files, view style (icon, detail, treeview))
> 
> There are two reasons for not saving KDirOperator config to kdeglobals:
> 
> 1. It is right now not possible to tell KDirOperator::writeConfig() to save to kdeglobals. It could be done by adding a new version of writeConfig() which would accept a KConfigBase::WriteFlags argument though.
> 
> 2. It probably would not be a good idea to remember KDirOperator settings globally anyway because depending on the application one may want to use different settings.
> For example if user wants to select images or videos he might set the file dialog to show big icons and the preview pane (so that videos can be played). This setup would however not be adapted in an application where one wants to select a text file.
> 
> 
> This addresses bug 139475.
>     http://bugs.kde.org/show_bug.cgi?id=139475
> 
> 
> Diffs
> -----
> 
>   kfile/kfilewidget.cpp 8e2f967 
> 
> Diff: http://git.reviewboard.kde.org/r/106581/diff/
> 
> 
> Testing
> -------
> 
> Tested with two different KDE applications. Settings are correctly remembered.
> 
> 
> Thanks,
> 
> Aurélien Gâteau
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20121002/39f59b27/attachment.htm>


More information about the kde-core-devel mailing list