Commit graph

4780 commits

Author SHA1 Message Date
l10n daemon script 3b119c4ff9 SVN_SILENT made messages (.desktop file) 2014-06-09 04:33:35 +00:00
Frank Reininghaus 05c8254ee4 Make the settings dialog work in the frameworks branch
The KF5 version of KPageDialog has no virtual slot
"slotButtonClicked(int button)". Its kdelibs 4.x counterpart had such
a slot, which was connected automatically to the corresponding signal.

This slot was overriden by

DolphinSettingsDialog::slotButtonClicked(int button)

which was responsible for applying the changed setting and restoring
the default values if the corresponding button was clicked.

The lack of the buttonClicked(int) signal and the corresponding slot
caused the problem that clicking a button in the settings dialog had no
effect.

This patch makes the functions applySettings() and restoreDefaults()
functions slots, and connects them directly to the "clicked" signal of
the corresponding buttons.

BUG: 335709
REVIEW: 118576
2014-06-06 00:51:15 +02:00
Frank Reininghaus c12dc996f5 Merge remote-tracking branch 'origin/master' into frameworks 2014-06-05 08:57:31 +02:00
Frank Reininghaus ea713e7a79 Merge remote-tracking branch 'origin/KDE/4.13' 2014-06-05 08:54:06 +02:00
Frank Reininghaus e07468c784 Separate width and height info in the layouting code
By separating the width and height info, we can save some unnecessary
overhead in terms of memory and CPU cycles, and make the calculation of
the height of a row (or the width of a column in Compact View) a bit
simpler.

To achieve this, this patch extends the concept of "logical rows"
(which are actually columns in Compact View) to "logical width" and
"logical height" (which is the actual height and width, respectively, in
 Compact View). The distinction between rows/columns and "logical"
rows/columns may be a bit confusing, but the confusion is already in the
current code, and I hope that it will be mitigated a bit by prefixing
the corresponding variables with "logical".

REVIEW: 118454
2014-06-05 08:50:52 +02:00
Frank Reininghaus 470e305be4 Change the Dolphin version in frameworks to 4.60
Since the KF5 libraries and the applications will not have a
synchronized release schedule any more, it does not make sense to
continue using KDE_VERSION_STRING as the Dolphin version.
2014-06-04 22:03:08 +02:00
Frank Reininghaus c7d607a7fc Make Dolphin windows with multiple tabs closable
The return type and return values of KMessageBox::createKMessageBox()
have changed in KF5. We have to adjust the code
in DolphinMainWindow::closeEvent(QCloseEvent* event) in order to make
windows with multiple tabs closable.

BUG: 335732
REVIEW: 118508
2014-06-04 21:56:36 +02:00
Frank Reininghaus 352f644159 Fix possible crash if a kioslave adds multiple items with the same URL
When opening the URL "man:", there are multiple items with the same
name (for example, _exit is shown twice here). When opening a new tab,
the kioslave reports some items as deleted (I have not quite understood
why). The problem is that it reports some of the duplicate items twice
in the list of deleted items. This confused KFileItemModel and
corrupted the internal data structures, and finally, caused a crash.

The fix is to remove all duplicates from
KItemRangeList::fromSortedContainer(const Container& container).

New unit tests included.

BUG: 335672
REVIEW: 118507
FIXED-IN: 4.13.2
2014-06-04 21:49:02 +02:00
Frank Reininghaus 59d01e8acc Merge remote-tracking branch 'origin/master' into frameworks
Conflicts:
	lib/konq/konq_operations.cpp
2014-06-01 14:52:56 +02:00
Frank Reininghaus 90e27974a4 Merge remote-tracking branch 'origin/KDE/4.13' 2014-06-01 14:48:30 +02:00
Emmanuel Pescosta 96c34cfe65 Fix Bug 334696 - File/directory icons/names move to the right when opening/refreshing contents of Dolphin
Take the scrollbar spacing into account.

BUG: 334696
REVIEW: 118319
FIXED-IN: 4.13.2
2014-05-29 15:33:03 +02:00
Emmanuel Pescosta fb69036dbd Use "selectionToggleRect().contains(pos)" instead
of "m_selectionToggle->contains(pos)" in
KItemListWidget::setHoverPosition(const QPointF& pos).

This wrong check was accidentally introduced by
commit 24326d4473

BUG: 299328
REVIEW: 118320
FIXED-IN: 4.13.2
2014-05-29 15:31:24 +02:00
Emmanuel Pescosta fa36c3fd1f Merge branch 'master' into frameworks
Conflicts:
	dolphin/src/statusbar/statusbarspaceinfo.cpp
2014-05-25 14:43:18 +02:00
Frank Reininghaus 4fe788f115 Keep the "free space" information updated in all visible views
The old code would watch the free space on a mount point, i.e.,
determine the free space again, in 10-second intervals, only until the
view became invisible once (even if it was invisible only for a very
short moment, i.e., while splitting the view).

This commit ensures that the mount point is watched again as soon as
the corresponding view becomes visible again.

Moreover, the object that watches the free space for a mount point is
shared among all views that show URLs that belong to this mount point.
To achieve this, there is a central cache which can be used to obtain
an existing MountPointObserver for a certain path. If necessary, a new
MountPointObserver is created and added to the cache.

The MountPointObserver is removed from the cache and destroyed only if
no views use it any more, and no new users appear until the next update
(which happens every 10 seconds). This prevents that the free space is
measured repeatedly when changing the current directory on the same
mount point.

Many thanks to Emmanuel Pescosta for the initial ideas to factor out
the "free space" code and to establish a central storage for the
"observer" objects, and for providing many good suggestions how to
improve the code!

BUG: 327708
REVIEW: 118208
FIXED-IN: 4.14.0
2014-05-22 18:42:17 +02:00
Frank Reininghaus a46121dc51 Merge remote-tracking branch 'origin/master' into frameworks
Conflicts:
	dolphin/src/search/filenamesearchprotocol.cpp
2014-05-21 22:49:40 +02:00
Frank Reininghaus f27c124237 Merge remote-tracking branch 'origin/KDE/4.13' 2014-05-21 22:44:48 +02:00
Frank Reininghaus 4ecdb8fe6e Remove debug output
This debug output was pushed accidentally in commit
c52ba9446b
2014-05-20 08:39:56 +02:00
Frank Reininghaus 1f9d35db19 Do not lose translation of Places items if a Dolphin window is closed
If the "Places" are updated outside the current Dolphin process,
PlacesItemModel::updateBookmarks() is called, which invokes
PlacesItem::setBookmark(const KBookmark& bookmark) for each item. This
commit ensures that the correct translation is used for system
bookmarks like "Root", "Network", etc.

Without this patch, all Places entries in the remaining Dolphin windows
would switch to US English if one of multiple windows is closed.

See http://lists.kde.org/?t=139660468400004&r=1&w=2 for details.

BUG: 334999
REVIEW: 118207
FIXED-IN: 4.13.2
2014-05-20 08:31:31 +02:00
Hrvoje Senjan 6edcabf9a0 Fix build when baloo is found 2014-05-14 18:05:28 +02:00
Hrvoje Senjan ee92e7a8b9 Adjust to changes in KAboutData 2014-05-14 18:04:38 +02:00
Frank Reininghaus d152bfc53b Merge branch 'KDE/4.13' 2014-05-13 19:14:25 +02:00
Frank Reininghaus 99e8f8e2e6 Stop listing children of collapsed folders
Before this patch, KDirLister would continue listing any children of
collapsed folders, even though the children themselves were removed
from the model. This could lead to new items being inserted as
top-level items at some later point, because no parent could be found
for them. This inconsistent model state could lead to a crash later on.

Many thanks to Martin Koller for helping to debug this problem!

BUG: 332102
REVIEW: 118055
FIXED-IN: 4.13.2
2014-05-13 19:06:42 +02:00
Frank Reininghaus 66f1759b6f Ensure that all children of a collapsed folder are removed
Before this patch, any (direct or indirect) children that might have
been in m_pendingItemsToInsert, i.e., that were not inserted into the
model yet because KDirLister had not finished listing the directory
yet, would be added to the model later without a proper parent. This
could cause a crash later on.

CCBUG: 332102
FIXED-IN: 4.13.2
2014-05-13 19:04:09 +02:00
Uzair Shamim 24d0ade8e3 Allow the widget in the "Additional Information" dialog to resize
BUG: 334355
REVIEW: 118088
FIXED-IN: 4.13.2
2014-05-13 18:59:34 +02:00
Frank Reininghaus 4cf04b91dd Merge remote-tracking branch 'origin/master' into frameworks
Since the master branch had never been merged into frameworks since the
creation of the frameworks branch, I had to fix a couple of merge
conflicts and make another change in order to make it build - I hope I
did not get anything wrong.

We should probably merge master into frameworks on a regular basis from
now on.

CCMAIL:kfm-devel@kde.org

Conflicts:
	dolphin/src/dolphinmainwindow.cpp
	dolphin/src/search/dolphinfacetswidget.cpp
	dolphin/src/statusbar/dolphinstatusbar.cpp
	dolphin/src/views/dolphinview.cpp
2014-05-13 18:42:05 +02:00
Alex Richardson 7e92abb4ea KF5::KDE4Support -> KF5::KDELibs4Support 2014-05-05 23:11:12 +02:00
Alex Richardson 9d7af8a24a Fix build of tests
This is the last commit for review 117395

REVIEW: 117395
2014-05-05 23:05:34 +02:00
Alex Richardson 497e2b2fef Allow compiling with the frameworks branches of Baloo 2014-05-05 23:05:34 +02:00
Alex Richardson 8611c990f0 KIcon -> QIcon and KMimeType::iconNameForUrl() -> KIO::iconNameForUrl() 2014-05-05 23:05:34 +02:00
Alex Richardson 00ee5d6727 dolphin: convert the remaining code to Qt5 signal/slot syntax
Middle clicking on Forward/Backward/Home/etc. will no longer open a new
tab since the QAction triggered signal no longer tell us which mouse
button was pressed
2014-05-05 23:05:34 +02:00
Alex Richardson 7a26fbc5c5 dolphin: convert statusbar, settings and search to qt5 signals/slot syntax 2014-05-05 23:05:34 +02:00
Alex Richardson 05f2c9c320 dolphin: convert views/ to qt5 signal/slot syntax
Removed arguments from DolphinViewActionHandler::slotTrashActivated since
they were unused and made the connection fail.

Also fixed a bad connection in dolphinview.cpp, there is no signal
KFileItemModel::loadingCompleted
2014-05-05 23:05:34 +02:00
Alex Richardson b069fb9b43 dolphin: convert panels/ and filterbar to qt signal/slot syntax
TerminalPanel connections to konsole part were not converted since there
is no header available that defines these function, we have to keep the
old syntax here.

Additionally the new syntax no longer accepts QPointer arguments, we have
to explicitly call .data() there.
2014-05-05 23:05:33 +02:00
Alex Richardson bb642c92d3 dolphin: convert kitemviews/ to qt5 signal slot syntax
This conversion was performed automatically using convert2qt5signalslot.
The only manual changes required were changing the overloaded signal
KDirLister::redirection and KDirLister::completed from KUrl to QUrl. All
other cases were no problem since these signals are not overloaded and a
static_cast for disambiguation is not necessary.

Code inside HAVE_BALOO is not converted yet, will do that once I can build
a version with Baloo.
2014-05-05 23:05:33 +02:00
Alex Richardson 1ee5cd6488 make FileNameSearchProtocol::listDir override the KIO::SlaveBase method
The parameter changed from KUrl to QUrl -> we have to add this.

Found with -Woverloaded-virtual
2014-05-05 23:05:33 +02:00
Alex Richardson a6b03236d2 completely disable QAccessible for now, since it causes assertions 2014-05-05 23:05:33 +02:00
Alex Richardson 693bf89f2e KParts::ReadOnlyPart::openUrl() changed from KUrl parameter to QUrl 2014-05-05 23:05:33 +02:00
Alex Richardson 2f045c6010 Allow compiling Dolphin with KF5
This does not work properly yet, there are probably quite a few bad signal/
slot connections due to KUrl -> QUrl. However dolphin starts without
crashing.

Accessibility is not ported since that changed quite a lot from Qt4 -> Qt5
and I have no idea how it is supposed to be used.

This is the first commit for review 117395
2014-05-05 23:05:13 +02:00
Frank Reininghaus 4660ea3a48 Update the "Paste" action only if it is necessary
Updating this action is only required if the clipboard contents change,
or if the "is writable" state of the current location changes. In all
other cases, an update of this action should be prevented because it
can be very expensive if many files are in the clipboard.

In particular, the update when the selection changes could make
changing the current item in the view very slow.

BUG: 333903
REVIEW: 117782
FIXED-IN: 4.13.1
2014-04-30 09:34:32 +02:00
Renato Atilio 5780fab172 Change the icon text for Previous and Next toolbar buttons
In addition to the current long text for previous and next toolbar
buttons ("Activate Previous/Next Tab"), this commit adds shorter icon
texts for them to be used only on the toolbar ("Previous/Next Tab").

BUG: 332629
REVIEW: 117794
FIXED-IN: 4.14.0
2014-04-29 21:54:33 +02:00
Frank Reininghaus eddb62ac0c Merge branch 'KDE/4.13' 2014-04-29 21:44:46 +02:00
Emmanuel Pescosta 5f29eec075 Merge branch 'KDE/4.13' of git://anongit.kde.org/kde-baseapps into KDE/4.13 2014-04-26 13:08:31 +02:00
Emmanuel Pescosta 5e82e598ea Mount partitions when you open them in a new tab.
Instead of just emitting the slotItemMiddleClicked signal in
PlacesPanel::slotItemContextMenuRequested we now use triggerItem with
Qt::MiddleButton, which does set up the storage first and emit
the slotItemMiddleClicked signal afterwards.

BUG: 311226
FIXED-IN: 4.13.1
REVIEW: 117755
2014-04-26 13:07:04 +02:00
Frank Reininghaus b5ca0e2de9 Do not change the selection when re-sorting the view
If a range of items has been selected by Shift-clicking or by pressing
Shift+Arrow, then each of them is added individually to the selection
before the items are re-sorted.

Before this commit, the first and the last item in the range were
moved, and all items between them were selected, even though these were
not necessarily the items which had been selected before the
re-sorting.

BUG: 333457
REVIEW: 117603
FIXED-IN: 4.13.1
2014-04-26 12:37:39 +02:00
Renato Atilio afa1a8ef11 Enable the previous and next tab toolbar buttons
when multiple tabs are opened. Disable them again
when there is only one remaining tab.

Additionally set the default state to disabled.

BUG: 332628
FIXED-IN: 4.13.1
REVIEW: 117778
2014-04-26 12:28:42 +02:00
Emmanuel Pescosta 272cbbd16b Fix memory leak with Dropbox version control plugin.
In the current version we only call endRetrieval when
beginRetrieval was successfully in UpdateItemStatesThread::run().
This causes some problems with version control plugins (like Dropbox plugin),
which have to do cleanups in endRetrieval.

Now we always call endRetrieval after beginRetrieval when updating the version states.

FIXED-IN: 4.13.1
REVIEW: 117753
2014-04-25 12:30:39 +02:00
Emmanuel Pescosta bf4b163a0e Scroll to the right position when going back and show hidden files is enabled.
Instead of emitting the directoryLoadingCompleted signal (via slotCompleted) in
KFileItemModel::setShowHiddenFiles directly, we now call
dispatchPendingItemsToInsert instead.

@Frank: Thanks for your help!

FIXED-IN: 4.13.1
BUG: 332159
REVIEW: 117021
2014-04-24 20:16:30 +02:00
Frank Reininghaus e8eca7c266 Merge branch 'KDE/4.12' into KDE/4.13 2014-04-14 23:11:00 +02:00
Frank Reininghaus a7562862e3 Update the "is cut" state of items if necessary
The icons of items which are "cut" are shown faded in the view. The
"is cut" state of the widget representing an item is updated if the
clipboard contents change. Before this commit, if the sort order was
changed however, then each widget kept the "is cut" state of the item
which had been shown previously at its position.

The solution is to update the "is cut" state also if any of the
widget's data change.

BUG: 332792
REVIEW: 117451
FIXED-IN: 4.12.5
2014-04-14 22:55:58 +02:00
Marco Nelles ae5bcfcdee Translate bookmark text on update. 2014-04-04 11:41:28 +02:00