[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: Review Request: Allow KUrlRequest file dialog to be non-modal
From: Darío Andrés <andresbajotierra () gmail ! com>
Date: 2009-09-28 14:02:01
Message-ID: 20090928140201.10101.57313 () localhost
[Download RAW message or body]
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1716/#review2485
-----------------------------------------------------------
I have been thinking that the signals (dis)connection on modality change could not be \
needed... I should check if even in modal behavior (and using exec()), the signal \
"finished" is emitted from the dialog. If that works I could remove the \
updateMyFileDialogModality() function as this wont be needed. (and the code could be \
adapted)
About the naming of the functions I agree (I'm bad with names)
Also, David Faure pointed out that he added the comments about KDirSelectDialog in \
the apidox recently; so we could remove that and use the KFileDialog directory mode \
to implement the directory selection in a non-modal behavior. (this may need more \
discussion)
Thanks for the review
- Darío
On 2009-09-27 21:43:16, Darío Andrés wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/1716/
> -----------------------------------------------------------
>
> (Updated 2009-09-27 21:43:16)
>
>
> Review request for kdelibs.
>
>
> Summary
> -------
>
> The current KUrlRequester behavior is to use modal dialogs (for both selecting \
> files and directories) This is sometimes not desirable as it causes blocks like the \
> one described in bug 162616
> This patch introduces two public functions: setModalFileDialog and modalFileDialog
>
> The default behavior is to use modal=true (legacy)
>
> I have adapted the code the set the modality of the file dialog and to use (or not) \
> show() + signals and slots instead of exec()
> - Known problem (fix later):
>
> When KUrlRequester is set to select Directories, the static function \
> "KFileDialog::getExistingDirectory" is used; so I tried different approaches to \
> replace it:
> - Setting the KFileDialog to the directory mode will have a different GUI \
> ("KFileDialog::getExistingDirectory" uses KDirSelectDialog; when KFileDialog with a \
> directory mode uses a simple file dialog but hiding the file listing....). Using \
> this method is going to change the "behavior" as another kind of dialog is going to \
> be used. Also, the apidox of the class states that in Directory mode the \
> KDirSelectDialog is used; and I think we shouldn't change this for compatibility \
> reasons.
> - Using KDirSelectDialog + show() + signals and slots (I wasn't really sure about \
> this; the first time I tried it, the linker complained; and I didn't wanted to add \
> another link library and mess with KIO/KFile dependencies)
> gkiakia commented that KFileDialog with a Directory mode having a different GUI \
> than KDirSelectDialog could be a bug/inconsistency; but we don't know the code that \
> much in order to try to fix it.
> As I didn't found a better implementation I left the modal dialog for directories. \
> (It should probably be commented in the apidox...)
>
> This addresses bug 162616.
> https://bugs.kde.org/show_bug.cgi?id=162616
>
>
> Diffs
> -----
>
> svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs/kio/kfile/kurlrequester.h 1028323
> svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs/kio/kfile/kurlrequester.cpp \
> 1028323
> Diff: http://reviewboard.kde.org/r/1716/diff
>
>
> Testing
> -------
>
> Now the Picture Frame file selector do not block Plasma anymore :)
> Further testing would be needed
>
>
> Thanks,
>
> Darío
>
>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic