Commit graph

2466 commits

Author SHA1 Message Date
Peter Penz
79a6e75b65 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".
svn path=/trunk/KDE/kdebase/apps/; revision=1005715
2009-08-01 21:11:29 +00:00
Peter Penz
52478842e3 Assure that non-default messages don't get hidden after a very short time by default messages.
svn path=/trunk/KDE/kdebase/apps/; revision=1005712
2009-08-01 20:30:23 +00:00
Peter Penz
99eacd9f56 move statusbar code into the directory "statusbar"
svn path=/trunk/KDE/kdebase/apps/; revision=1005704
2009-08-01 20:01:51 +00:00
Peter Penz
67de9286a0 Assure that the panels don't shrink when the view is split and the zoomslide and spaceinfo is shown in the statusbar.
BUG: 202147

svn path=/trunk/KDE/kdebase/apps/; revision=1005693
2009-08-01 19:30:52 +00:00
Peter Penz
22718cef13 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!
svn path=/trunk/KDE/kdebase/apps/; revision=1005674
2009-08-01 18:33:12 +00:00
Peter Penz
0706af30c0 Assure that the revision control observer receives the correct revision states of subtree-items.
svn path=/trunk/KDE/kdebase/apps/; revision=1005646
2009-08-01 16:07:42 +00:00
Peter Penz
34b6b30050 SVN_SILENT: warning--, fixed indentations
svn path=/trunk/KDE/kdebase/apps/; revision=1005230
2009-07-31 15:29:37 +00:00
Peter Penz
802902c9b1 SVN_SILENT: warning--
svn path=/trunk/KDE/kdebase/apps/; revision=1005229
2009-07-31 15:29:09 +00:00
Laurent Montel
0dd0f27f83 Fix forward declaration
svn path=/trunk/KDE/kdebase/apps/; revision=1004949
2009-07-31 07:14:20 +00:00
Peter Penz
6c5ffd1455 provide texts for each revision state
svn path=/trunk/KDE/kdebase/apps/; revision=1004795
2009-07-30 21:46:51 +00:00
Peter Penz
b74958854c Use "svn commit -F" instead of "svn commit -m" to provide a commit description, otherwise line-break, quotes etc. don't work in comments.
Tested with local SVN repository, I hope everything works now too with this official commit...

svn path=/trunk/KDE/kdebase/apps/; revision=1004788
2009-07-30 21:22:14 +00:00
Peter Penz
99cdb9d5ba 'Prepare
svn path=/trunk/KDE/kdebase/apps/; revision=1004416
2009-07-30 06:30:21 +00:00
Peter Penz
9470f30828 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.
svn path=/trunk/KDE/kdebase/apps/; revision=1004412
2009-07-30 06:21:35 +00:00
Peter Penz
ddc1461147 terminate the thread which checks the revision state of items if the revision control observer gets deleted
svn path=/trunk/KDE/kdebase/apps/; revision=1004371
2009-07-29 22:50:35 +00:00
Peter Penz
1abf1974f5 inform the revision control observer about changed revision states
svn path=/trunk/KDE/kdebase/apps/; revision=1004351
2009-07-29 22:03:11 +00:00
Peter Penz
a70be712fd Allow the revision control plugins to indicate information-, error- and operation-completed messages.
svn path=/trunk/KDE/kdebase/apps/; revision=1004346
2009-07-29 21:56:37 +00:00
Michael Jansen
a48c813fd9 Fix memory leak. QMenu::addAction(QMenu*) does not take ownership.
svn path=/trunk/KDE/kdebase/apps/; revision=1004276
2009-07-29 18:59:06 +00:00
Script Kiddy
b1d5b7d017 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/apps/; revision=1004107
2009-07-29 11:36:58 +00:00
Peter Penz
11b2a3f61c - 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

svn path=/trunk/KDE/kdebase/apps/; revision=1004044
2009-07-29 07:38:57 +00:00
Peter Penz
d4ba16b900 Use QProcess instead of the low-level API popen(). Thanks to André Wöbbeking for the hint.
svn path=/trunk/KDE/kdebase/apps/; revision=1004024
2009-07-29 06:31:20 +00:00
Rafael Fernández López
9eaecac019 Adapt KCategorizedView and KCategoryDrawer changes from kdelibs
svn path=/trunk/KDE/kdebase/apps/; revision=1003883
2009-07-28 23:30:46 +00:00
Peter Penz
a2913a0205 SVN_SILENT: add m_revisionInfoKeys to the initializer list
svn path=/trunk/KDE/kdebase/apps/; revision=1003848
2009-07-28 22:08:39 +00:00
Peter Penz
47615514f8 Use the output of 'svn status' instead of doing a custom and error-prone .svn-parsing. BTW: this commit is the first done within Dolphin itself :-)
svn path=/trunk/KDE/kdebase/apps/; revision=1003845
2009-07-28 22:04:00 +00:00
Peter Penz
66ad27aba1 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.
svn path=/trunk/KDE/kdebase/apps/; revision=1002839
2009-07-27 05:31:48 +00:00
Peter Penz
47d5003283 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.
svn path=/trunk/KDE/kdebase/apps/; revision=1001388
2009-07-23 06:28:28 +00:00
Peter Penz
fddd17030c replace list.count() > 0 by !list.isEmpty()
svn path=/trunk/KDE/kdebase/apps/; revision=1001386
2009-07-23 06:14:57 +00:00
Peter Penz
9340a52cf8 also provide revision control actions for the viewport-context-menu
svn path=/trunk/KDE/kdebase/apps/; revision=1001385
2009-07-23 06:10:01 +00:00
Peter Penz
a9ef4bd96a show the actions of a revision control plugin in the context menu
svn path=/trunk/KDE/kdebase/apps/; revision=1001270
2009-07-22 19:26:25 +00:00
Peter Penz
ebf78d6ac2 - 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.

svn path=/trunk/KDE/kdebase/apps/; revision=1000831
2009-07-22 07:07:43 +00:00
Script Kiddy
c92c5cada0 SVN_SILENT made messages (.desktop file)
svn path=/trunk/KDE/kdebase/apps/; revision=1000560
2009-07-21 15:15:44 +00:00
Peter Penz
d288b1cda4 - interface cleanups
- the subversion test plugin is at least capable of indicating the revision state for files

svn path=/trunk/KDE/kdebase/apps/; revision=999489
2009-07-19 22:29:59 +00:00
Peter Penz
46dcb12d9f no need to export this internal class
svn path=/trunk/KDE/kdebase/apps/; revision=998500
2009-07-17 19:41:29 +00:00
Peter Penz
68a2ef9143 remove revision-information entries when items got deleted in the model
svn path=/trunk/KDE/kdebase/apps/; revision=998498
2009-07-17 19:37:47 +00:00
Peter Penz
a447eb391c 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.

svn path=/trunk/KDE/kdebase/apps/; revision=998492
2009-07-17 19:26:46 +00:00
Peter Penz
93ce7f40e2 When pressing a key after entering a directory, QAbstractItemView::scrollTo() must be invoked to have autoscroll behavior.
BUG: 199833

svn path=/trunk/KDE/kdebase/apps/; revision=998474
2009-07-17 18:33:37 +00:00
Darío Andrés Rodríguez
17b8ac7458 Call MediaObject::play() on Audio files mode.
BUG: 196243


svn path=/trunk/KDE/kdebase/apps/; revision=998153
2009-07-17 01:49:08 +00:00
Peter Penz
fae6ac51a1 simplify the revision control API
svn path=/trunk/KDE/kdebase/apps/; revision=996886
2009-07-15 06:27:53 +00:00
Frank Reininghaus
027bfb1789 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. 

svn path=/trunk/KDE/kdebase/apps/; revision=996758
2009-07-14 20:47:37 +00:00
Peter Penz
32157cc47c Forward port for SVN commit 996129: Fix possible crash when no current item is given. Thanks to Martin Koller for the patch!
CCBUG: 198805
CCBUG: 200037

svn path=/trunk/KDE/kdebase/apps/; revision=996131
2009-07-13 21:28:54 +00:00
Peter Penz
a655a560fb The Oxygen team will provide revision control emblems for KDE 4.4. Adjust the code to use icons instead of coloring the text... The icon position at the moment is terrible, an interface extension in KFileItemDelegate is required to get the icon boundaries.
svn path=/trunk/KDE/kdebase/apps/; revision=996101
2009-07-13 20:39:44 +00:00
Peter Penz
220355ca8d Just change the text color for revisioned files instead of using a completely filled background. I'm unsure whether we should use emblems or not... The problem with emblems is that most people that work with revisioned files use the details view with very small icons. So having an emblem above an icon and additionally the selection indicator does not work. Any ideas?
svn path=/trunk/KDE/kdebase/apps/; revision=995378
2009-07-12 15:15:10 +00:00
Peter Penz
01a158c9e0 The information whether an item is a file or a directory is already known by Dolphin and might be useful for revision control plugins.
svn path=/trunk/KDE/kdebase/apps/; revision=995365
2009-07-12 14:33:26 +00:00
Peter Penz
fa4680cb38 Enable Dolphin to show the revision states of files that are under revision control systems like SVN, Git, CVS, ... The current code is an early draft and it is planned that all plugins (SVN, Git, CVS, ...) are maintained outside Dolphin. If the API is stable enough, a discussion will be done at kfm-devel@kde.org regarding the location of the plugins (the current implementation of SubversionPlugin is only temporary located in Dolphin for testing purposes).
RevisionControlObserver is implemented in a way that no recognizable slowdown is given for directories that are not under revision control.

CCBUG: 192158

svn path=/trunk/KDE/kdebase/apps/; revision=995351
2009-07-12 14:00:45 +00:00
David Faure
2df2d4ea7e Same change as in r995015, but for usage in konq: Don't connect to KDirLister::itemDeleted(const KFileItem&), but KDirLister::itemsDeleted(const KFileItemList&).
svn path=/trunk/KDE/kdebase/apps/; revision=995123
2009-07-12 01:00:14 +00:00
Peter Penz
430c2e768c Don't open folders on a single-click in the column view when the mouse settings specify double-click. Originally this was meant as a kind of feature (open files on double-click, but folders still on single-click), but it has been received as bug.
BUG: 198464

svn path=/trunk/KDE/kdebase/apps/; revision=995029
2009-07-11 18:56:03 +00:00
Peter Penz
00cc24a9ba Update the statusbar synchronously when the directory lister has been completed. As no selection is given at this moment, there is no risk that updateStatusBar() is expensive.
svn path=/trunk/KDE/kdebase/apps/; revision=995021
2009-07-11 18:10:35 +00:00
Peter Penz
8e6dbadef2 Fixed performance issues related to selections and deleting of files:
- Don't connect to KDirLister::itemDeleted(const KFileItem&), but KDirLister::itemsDeleted(const KFileItemList&). Otherwise Dolphin is informed about each single file deletion instead of getting the deleted items as a list. Thanks to David Faure for the hint!

- DolphinViewContainer::updateStatusBar() can be expensive when a lot of files are selected, as the file size must get retrieved. Assure that fast calls for updateStatusBar() don't trigger a synchronous update, do the update after 300 ms where no further update has been triggered.

- Dolphin provides a list of file items when emitting the selectionChanged() signal. Collecting the file items is a quite expensive operation, so use the same approach as when updating the statusbar: only emit the selection changed signal when no change has been done within 300 ms. This improves the performance when doing huge selections a lot.

- Make updateStatusBar() a private method, the main window should not need to take care about updating the statusbar (this is done internally now by DolphinViewContainer).

BUG: 199090
BUG: 195787
CCBUG: 199352
CCBUG: 188218

svn path=/trunk/KDE/kdebase/apps/; revision=995015
2009-07-11 17:48:05 +00:00
David Faure
ebd0f1b06f Fix regression introduced by an obviously untested "krazy fix" (r973284). Setting a
QVariant to QString() is not the same as calling clear on the QVariant (which makes the variant invalid).
(BUG 194502)

svn path=/trunk/KDE/kdebase/apps/; revision=994217
2009-07-10 11:46:48 +00:00
Peter Penz
c3ffc95a73 - adding missing const
- minor adjustment of name
- use same declaration order as other private methods

CCMAIL: predator106@gmail.com 

svn path=/trunk/KDE/kdebase/apps/; revision=994089
2009-07-10 06:07:32 +00:00
Shaun Reich
70915125f7 Fixed the annoying bug (for me) that dealt with having a very long folder name. In this case, the name of the tab could be many more times bigger than the tabBar itself.
Now they are ellided, so e.g. "really really long folder name...is" or something.

Few more cases left for me to fix(shortly), but those are not quite close to this section.

svn path=/trunk/KDE/kdebase/apps/; revision=993618
2009-07-09 04:41:53 +00:00