Peter Penz [Sat, 10 Oct 2009 21:28:37 +0000 (21:28 +0000)]
Reactivate showing of general meta information. This is also done as part of the LoadFilesThread and is no special case anymore like in the old code base.
Peter Penz [Sat, 10 Oct 2009 20:12:58 +0000 (20:12 +0000)]
Reactivate reading of the meta data for the rating, comments and tags. All expensive operations are done in a separate thread to assure that the Dolphin UI never gets blocked.
Peter Penz [Sat, 10 Oct 2009 14:13:50 +0000 (14:13 +0000)]
Start of refactoring so that the metadata widget can be moved outside of Dolphin for other applications. The temporary removed code will be integrated again within the next 10 days (-> currently no meta data is shown and cannot be updated).
Matthias Fuchs [Mon, 5 Oct 2009 18:46:35 +0000 (18:46 +0000)]
Adds autocompletition to the dolphin-search-box. So far existing tags and commands like "and", "or" and "-" (for not) are offered as completition-suggestions.
David Faure [Fri, 2 Oct 2009 10:55:59 +0000 (10:55 +0000)]
Make "most local url" determination asynchronous so that it doesn't block the GUI for a long time
(e.g. when accessing the non-existing sftp://192.168.1.100/home)
and only run this job if the terminal panel is shown (or at the time when it is made visible).
Sorry kdebase users, you get to update kdelibs again.
BUG: 202176
Fix deadlock when changing the rating and the comment of the same
object, in that order. The harmless looking setEnabled() call two lines
down from here triggers a convoluted chain of (q)events that eventually
ends up calling a method that tries to lock the mutex itself.
Peter Penz [Sun, 13 Sep 2009 14:49:26 +0000 (14:49 +0000)]
Originally it was intended to move the SVN plugin from Dolphin to kdevplatform, but kdevplatform most probably won't get released with KDE 4.4. So for KDE 4.4 Dolphin will temporary contain the plugin in it's own codebase. As soon as kdevplatform will get released the SVN plugin will get moved to kdevplatform.
Still open: KServiceTypeTrader::query does not find the "FileViewVersionControlPlugin", I could not find the root cause for this yet (old cache?)
Peter Penz [Fri, 11 Sep 2009 19:50:40 +0000 (19:50 +0000)]
Fixed minor regression introduced with the column view refactoring: When switching the view mode in a folder showing previews, the previews get lost after switching.
The KFilePreviewGenerator initialized in the ViewExtensionsFactory wants a valid icon size to accept previews. Fixed + Q_ASSERT added to prevent such a mistake in future.
Peter Penz [Sun, 30 Aug 2009 19:17:08 +0000 (19:17 +0000)]
Move the selection listener from DolphinView to ViewExtensionsFactory. The statusbar and information panel are now informed correctly about selection changes also when using the column view.
Peter Penz [Sun, 30 Aug 2009 18:39:03 +0000 (18:39 +0000)]
Move the VersionControlObserver from the DolphinView to the ViewExtensionsFactory. This automatically enables also the column view to be able handling version controlled files.
Peter Penz [Sat, 29 Aug 2009 09:42:21 +0000 (09:42 +0000)]
Move code for initializing and handling view extensions to the new class ViewExtensionsFactory. Beside making DolphinView less complex this will allow the column view to share the view extension code instead of (partly) duplicating it as it has been done before.
Currently only the tooltips- and filepreview-handling have been moved into ViewExtensionsFactory, a further cleanup will be done later.
Peter Penz [Fri, 28 Aug 2009 21:53:18 +0000 (21:53 +0000)]
Restore filtering of items. The DolphinView just tells the controller about the filter, the views (1:1 iconView + detailView, 1:n columnView) connect to the filter-changed signal and apply it to their proxy model.
Peter Penz [Fri, 28 Aug 2009 21:15:58 +0000 (21:15 +0000)]
Remove the class DolphinColumnWidget. Due to the refactoring the column view classes are now represented by DolphinColumnViewContainer and DolphinColumnView.
Peter Penz [Fri, 28 Aug 2009 21:04:15 +0000 (21:04 +0000)]
I wanted to this for KDE 4.1 already, but well...
Columview refactoring: Get rid of "isColumnView()" special cases in DolphinView and the interface code duplications due to delegating non-QAbstractItemView interfaces to the column view. This reduces the code size + complexity a lot and will make future maintainance of the columnview and DolphinView a lot easier.
Currently there are some regressions in the column view, but this will be fixed during the next 14 days.
Do not warn the user about closing Dolphin windows with multiple tabs
if Dolphin is closed by the session manager, i.e., if the user logs
out. The fix is inspired by the way this issue is handled in
Konqueror.
Peter Penz [Sat, 1 Aug 2009 21:11:29 +0000 (21:11 +0000)]
Assure that no empty error message is shown in the statusbar. This should not happen and the fix in this case should be done in the corresponding IO-slave, but let's be prepared for the "worst case".
Peter Penz [Sat, 1 Aug 2009 18:33:12 +0000 (18:33 +0000)]
Use QTemporaryFile instead of QFile. This assures an automatic deleting of the file and works reliable on multiuser system. Thanks to André Wöbbeking for the hint!
Peter Penz [Thu, 30 Jul 2009 06:21:35 +0000 (06:21 +0000)]
If the revision states have been changed because of executing a SVN context menu action, the resulting update should be done silently without information messages.
Peter Penz [Wed, 29 Jul 2009 07:38:57 +0000 (07:38 +0000)]
- indicate whether the server provides an updated version of a file
- QProcess::waitForReadyRead() must be invoked until it returns false. BTW: this method is invoked inside a non-GUI-thread and hence does not block Dolphin
Peter Penz [Mon, 27 Jul 2009 05:31:48 +0000 (05:31 +0000)]
Improved Subversion test plugin to allow committing, updating, diffing, adding and removing of files. As soon as the test plugin gets moved to kdesdk, the code should be improved to use the libsvn interface.
Peter Penz [Thu, 23 Jul 2009 06:28:28 +0000 (06:28 +0000)]
The revision control plugin must be aware on which directory the context-menu-actions should get applied. Relying on the directory that has been used in beginRetrieval() does not work when having a treeview.
Peter Penz [Wed, 22 Jul 2009 07:07:43 +0000 (07:07 +0000)]
- Documentation updates.
- Allow the revision plugin to emit a signal which indicates a changed revision state.
- Update the revision state if the state of file items has been changed.
- Check also the content of a file if the size of a local and revisioned file is equal.
Peter Penz [Fri, 17 Jul 2009 19:26:46 +0000 (19:26 +0000)]
The performance of updating the revision state of items depends on the used plugin. To prevent that Dolphin gets blocked by a slow plugin, the updating is delegated to a thread.
Still open issue: Applying the revision control property to the model is a bottleneck in QListView (a detailed description of the reason is in kdelibs/kfile/kfilepreviewgenerator.cpp, class LayoutBlocker). But the approach used in KFilePreviewGenerator destroys the textlayout in this case and is temporary disabled until I could track down the reason.
Improve selection behaviour concerning the new "jump to next/previous
row using right/left arrow" and "jump to next/previous column using
down/up arrow" when using the Icon View's "Rows" and "Columns"
arrangement, respectively, in the following cases:
1. In "Columns" arrangement, if the first item is selected and
Ctrl-Down is pressed repeatedly, don't deselect the first item when
jumping to the next column.
2. In "Rows" arrangement, if the first item in the second row is
active and then Left and finally Shift-Left is pressed, don't
re-select the first item in the second row unexpectedly.
3. If an item in the middle of the second row is selected, make sure
that selection with Shift-Left/Shift-Right is reversible even if the
previous/next row is reached.