diff -Nru kde-baseapps-4.7.95/CMakeLists.txt kde-baseapps-4.7.97/CMakeLists.txt --- kde-baseapps-4.7.95/CMakeLists.txt 2011-12-21 00:24:38.000000000 +0000 +++ kde-baseapps-4.7.97/CMakeLists.txt 2012-01-03 19:37:21.000000000 +0000 @@ -4,9 +4,9 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ) #search packages used by KDE -set(KDE_MIN_VERSION "4.7.4") +set(KDE_MIN_VERSION "4.7.97") set(SOPRANO_MIN_VERSION "2.5.63") -find_package(KDE4 4.7.4 REQUIRED) +find_package(KDE4 4.7.97 REQUIRED) find_package(Strigi REQUIRED) find_package(ZLIB REQUIRED) include (KDE4Defaults) diff -Nru kde-baseapps-4.7.95/debian/changelog kde-baseapps-4.7.97/debian/changelog --- kde-baseapps-4.7.95/debian/changelog 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/changelog 2012-01-06 12:37:51.000000000 +0000 @@ -1,3 +1,9 @@ +kde-baseapps (4:4.7.97-0ubuntu1) precise; urgency=low + + * New upstream release candidate + + -- Jonathan Riddell Wed, 04 Jan 2012 14:55:21 +0000 + kde-baseapps (4:4.7.95-0ubuntu1) precise; urgency=low * New upstream release candidate diff -Nru kde-baseapps-4.7.95/debian/patches/enable_debianabimanager.diff kde-baseapps-4.7.97/debian/patches/enable_debianabimanager.diff --- kde-baseapps-4.7.95/debian/patches/enable_debianabimanager.diff 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/patches/enable_debianabimanager.diff 2012-01-04 14:55:53.000000000 +0000 @@ -5,9 +5,11 @@ For more information about DebianABIManager, refer to /usr/share/doc/pkg-kde-tools/README.DebianABIManager (pkg-kde-tools (>= 0.12)). ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -42,6 +42,8 @@ if ( Q_WS_X11 ) +Index: kde-baseapps-4.7.97/CMakeLists.txt +=================================================================== +--- kde-baseapps-4.7.97.orig/CMakeLists.txt 2012-01-03 19:37:21.000000000 +0000 ++++ kde-baseapps-4.7.97/CMakeLists.txt 2012-01-04 14:55:49.000000000 +0000 +@@ -39,6 +39,8 @@ endif ( Q_WS_X11 ) macro_optional_add_subdirectory( doc ) diff -Nru kde-baseapps-4.7.95/debian/patches/enable_dlrestrictions.diff kde-baseapps-4.7.97/debian/patches/enable_dlrestrictions.diff --- kde-baseapps-4.7.95/debian/patches/enable_dlrestrictions.diff 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/patches/enable_dlrestrictions.diff 2012-01-04 14:55:57.000000000 +0000 @@ -7,9 +7,11 @@ Enable REJECT:OTHERSOVERSION for these libraries because their ABI is typically not stable and structures frequently conflict. ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -44,6 +44,13 @@ macro_optional_add_subdirectory( doc ) +Index: kde-baseapps-4.7.97/CMakeLists.txt +=================================================================== +--- kde-baseapps-4.7.97.orig/CMakeLists.txt 2012-01-04 14:55:49.000000000 +0000 ++++ kde-baseapps-4.7.97/CMakeLists.txt 2012-01-04 14:55:55.000000000 +0000 +@@ -41,6 +41,13 @@ include(/usr/share/pkg-kde-tools/cmake/DebianABIManager.cmake) diff -Nru kde-baseapps-4.7.95/debian/patches/kubuntu_04_hide_kfind.diff kde-baseapps-4.7.97/debian/patches/kubuntu_04_hide_kfind.diff --- kde-baseapps-4.7.95/debian/patches/kubuntu_04_hide_kfind.diff 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/patches/kubuntu_04_hide_kfind.diff 2012-01-04 14:56:06.000000000 +0000 @@ -1,8 +1,8 @@ -Index: kdebase-4.5.80/kfind/kfind.desktop +Index: kde-baseapps-4.7.97/kfind/kfind.desktop =================================================================== ---- kdebase-4.5.80.orig/kfind/kfind.desktop 2010-11-19 10:51:02.000000000 +0000 -+++ kdebase-4.5.80/kfind/kfind.desktop 2010-11-25 16:07:04.071492705 +0000 -@@ -95,3 +95,4 @@ +--- kde-baseapps-4.7.97.orig/kfind/kfind.desktop 2011-07-27 18:36:38.000000000 +0000 ++++ kde-baseapps-4.7.97/kfind/kfind.desktop 2012-01-04 14:56:02.000000000 +0000 +@@ -97,3 +97,4 @@ X-KDE-StartupNotify=true OnlyShowIn=KDE; Categories=Qt;KDE;Core; diff -Nru kde-baseapps-4.7.95/debian/patches/kubuntu_10_konq_scans_nsplugins_at_startup.diff kde-baseapps-4.7.97/debian/patches/kubuntu_10_konq_scans_nsplugins_at_startup.diff --- kde-baseapps-4.7.95/debian/patches/kubuntu_10_konq_scans_nsplugins_at_startup.diff 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/patches/kubuntu_10_konq_scans_nsplugins_at_startup.diff 2012-01-04 14:56:12.000000000 +0000 @@ -1,7 +1,7 @@ -Index: kdebase-4.5.80/konqueror/src/konqmain.cpp +Index: kde-baseapps-4.7.97/konqueror/src/konqmain.cpp =================================================================== ---- kdebase-4.5.80.orig/konqueror/src/konqmain.cpp 2010-07-06 06:54:17.000000000 +0000 -+++ kdebase-4.5.80/konqueror/src/konqmain.cpp 2010-11-25 16:16:44.703492705 +0000 +--- kde-baseapps-4.7.97.orig/konqueror/src/konqmain.cpp 2011-07-27 18:36:39.000000000 +0000 ++++ kde-baseapps-4.7.97/konqueror/src/konqmain.cpp 2012-01-04 14:56:08.000000000 +0000 @@ -24,6 +24,7 @@ #include "konqsessionmanager.h" #include "konqview.h" @@ -10,7 +10,7 @@ #include #include -@@ -216,6 +217,20 @@ +@@ -224,6 +225,20 @@ } args->clear(); diff -Nru kde-baseapps-4.7.95/debian/patches/kubuntu_24_folderview_livecd_directory.diff kde-baseapps-4.7.97/debian/patches/kubuntu_24_folderview_livecd_directory.diff --- kde-baseapps-4.7.95/debian/patches/kubuntu_24_folderview_livecd_directory.diff 2011-12-27 11:56:33.000000000 +0000 +++ kde-baseapps-4.7.97/debian/patches/kubuntu_24_folderview_livecd_directory.diff 2012-01-04 14:56:24.000000000 +0000 @@ -1,7 +1,7 @@ -Index: kde-baseapps-4.7.1/plasma/applets/folderview/folderview.cpp +Index: kde-baseapps-4.7.97/plasma/applets/folderview/folderview.cpp =================================================================== ---- kde-baseapps-4.7.1.orig/plasma/applets/folderview/folderview.cpp 2011-09-22 14:19:07.457402503 -0400 -+++ kde-baseapps-4.7.1/plasma/applets/folderview/folderview.cpp 2011-09-22 14:19:30.721402490 -0400 +--- kde-baseapps-4.7.97.orig/plasma/applets/folderview/folderview.cpp 2012-01-02 19:51:26.000000000 +0000 ++++ kde-baseapps-4.7.97/plasma/applets/folderview/folderview.cpp 2012-01-04 14:56:18.000000000 +0000 @@ -27,6 +27,7 @@ #include #include @@ -10,7 +10,7 @@ #include #include -@@ -379,6 +380,10 @@ +@@ -400,6 +401,10 @@ path = QString("desktop:/"); } } @@ -19,5 +19,5 @@ + path = QString("desktop:/"); + } setUrl(cg.readEntry("url", KUrl(path))); + } - } else { Binary files /tmp/u_uITkQWq8/kde-baseapps-4.7.95/doc/dolphin/index.cache.bz2 and /tmp/DMfYq5kwF5/kde-baseapps-4.7.97/doc/dolphin/index.cache.bz2 differ Binary files /tmp/u_uITkQWq8/kde-baseapps-4.7.95/doc/kdepasswd/index.cache.bz2 and /tmp/DMfYq5kwF5/kde-baseapps-4.7.97/doc/kdepasswd/index.cache.bz2 differ Binary files /tmp/u_uITkQWq8/kde-baseapps-4.7.95/doc/kfind/index.cache.bz2 and /tmp/DMfYq5kwF5/kde-baseapps-4.7.97/doc/kfind/index.cache.bz2 differ Binary files /tmp/u_uITkQWq8/kde-baseapps-4.7.95/doc/konqueror/index.cache.bz2 and /tmp/DMfYq5kwF5/kde-baseapps-4.7.97/doc/konqueror/index.cache.bz2 differ diff -Nru kde-baseapps-4.7.95/dolphin/src/dolphinpart.desktop kde-baseapps-4.7.97/dolphin/src/dolphinpart.desktop --- kde-baseapps-4.7.95/dolphin/src/dolphinpart.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/dolphinpart.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -199,10 +199,13 @@ Name[da]=Kompakt Name[de]=Kompakt Name[es]=Compacta +Name[et]=Kompaktne Name[fi]=Tiivis +Name[ga]=Dlúth Name[hu]=Kompakt Name[ia]=Compacte Name[kk]=Ықшамды +Name[km]=តូច​ល្មម Name[lt]=Kompaktiškas Name[nb]=Kompakt Name[nds]=Drang @@ -210,6 +213,7 @@ Name[pa]=ਸੰਖੇਪ Name[pt]=Compacto Name[pt_BR]=Compacto +Name[sl]=Strnjeno Name[sv]=Kompakt Name[uk]=Компактний Name[x-test]=xxCompactxx diff -Nru kde-baseapps-4.7.95/dolphin/src/dolphinviewcontainer.cpp kde-baseapps-4.7.97/dolphin/src/dolphinviewcontainer.cpp --- kde-baseapps-4.7.95/dolphin/src/dolphinviewcontainer.cpp 2011-12-02 21:17:41.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/dolphinviewcontainer.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -49,6 +49,7 @@ #include "search/dolphinsearchbox.h" #include "statusbar/dolphinstatusbar.h" #include "views/dolphinplacesmodel.h" +#include "views/draganddrophelper.h" #include "views/viewmodecontroller.h" #include "views/viewproperties.h" @@ -532,9 +533,8 @@ void DolphinViewContainer::dropUrls(const KUrl& destination, QDropEvent* event) { - Q_UNUSED(destination); - Q_UNUSED(event); - //DragAndDropHelper::instance().dropUrls(KFileItem(), destination, event, this); + const KFileItem destItem(KFileItem::Unknown, KFileItem::Unknown, destination); + DragAndDropHelper::dropUrls(destItem, event); } void DolphinViewContainer::redirect(const KUrl& oldUrl, const KUrl& newUrl) diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistview.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistview.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistview.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistview.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -107,6 +107,18 @@ return m_itemLayout; } +void KFileItemListView::setEnabledPlugins(const QStringList& list) +{ + if (m_modelRolesUpdater) { + m_modelRolesUpdater->setEnabledPlugins(list); + } +} + +QStringList KFileItemListView::enabledPlugins() const +{ + return m_modelRolesUpdater ? m_modelRolesUpdater->enabledPlugins() : QStringList(); +} + QSizeF KFileItemListView::itemSizeHint(int index) const { const QHash values = model()->data(index); @@ -333,10 +345,7 @@ Q_UNUSED(previous); Q_ASSERT(qobject_cast(current)); - if (m_modelRolesUpdater) { - delete m_modelRolesUpdater; - } - + delete m_modelRolesUpdater; m_modelRolesUpdater = new KFileItemModelRolesUpdater(static_cast(current), this); const int size = styleOption().iconSize; m_modelRolesUpdater->setIconSize(QSize(size, size)); @@ -577,6 +586,7 @@ roles.insert("isDir"); if (m_itemLayout == DetailsLayout) { roles.insert("isExpanded"); + roles.insert("isExpandable"); roles.insert("expansionLevel"); } diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistview.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistview.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistview.h 2011-12-02 21:17:41.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistview.h 2012-01-02 19:51:26.000000000 +0000 @@ -57,6 +57,23 @@ void setItemLayout(Layout layout); Layout itemLayout() const; + /** + * Sets the list of enabled thumbnail plugins that are used for previews. + * Per default all plugins enabled in the KConfigGroup "PreviewSettings" + * are used. + * + * For a list of available plugins, call KServiceTypeTrader::self()->query("ThumbCreator"). + * + * @see enabledPlugins + */ + void setEnabledPlugins(const QStringList& list); + + /** + * Returns the list of enabled thumbnail plugins. + * @see setEnabledPlugins + */ + QStringList enabledPlugins() const; + /** @reimp */ virtual QSizeF itemSizeHint(int index) const; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistwidget.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistwidget.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistwidget.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistwidget.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -44,7 +44,7 @@ KItemListWidget(parent), m_isCut(false), m_isHidden(false), - m_isDir(false), + m_isExpandable(false), m_dirtyLayout(true), m_dirtyContent(true), m_dirtyContentRoles(), @@ -95,7 +95,7 @@ KItemListWidget::paint(painter, option, widget); // Draw expansion toggle '>' or 'V' - if (m_isDir && !m_expansionArea.isEmpty()) { + if (m_isExpandable && !m_expansionArea.isEmpty()) { QStyleOption arrowOption; arrowOption.rect = m_expansionArea.toRect(); const QStyle::PrimitiveElement arrow = data()["isExpanded"].toBool() @@ -147,8 +147,11 @@ } #ifdef KFILEITEMLISTWIDGET_DEBUG - painter->setPen(Qt::red); painter->setBrush(Qt::NoBrush); + painter->setPen(Qt::green); + painter->drawRect(m_iconRect); + + painter->setPen(Qt::red); painter->drawText(QPointF(0, itemListStyleOption.fontMetrics.height()), QString::number(index())); painter->drawRect(rect()); #endif @@ -169,7 +172,7 @@ QRectF KFileItemListWidget::expansionToggleRect() const { const_cast(this)->triggerCacheRefreshing(); - return m_isDir ? m_expansionArea : QRectF(); + return m_isExpandable ? m_expansionArea : QRectF(); } QRectF KFileItemListWidget::selectionToggleRect() const @@ -405,7 +408,7 @@ refreshCache(); const QHash values = data(); - m_isDir = values["isDir"].toBool(); + m_isExpandable = values["isExpandable"].toBool(); m_isHidden = values["name"].toString().startsWith(QLatin1Char('.')); updateExpansionArea(); @@ -494,16 +497,12 @@ squarePixmap.fill(Qt::transparent); QPainter painter(&squarePixmap); - int x, y; - if (iconOnTop) { - x = (iconHeight - m_pixmap.width()) / 2; // Center horizontally - y = iconHeight - m_pixmap.height(); // Align on bottom - painter.drawPixmap(x, y, m_pixmap); - } else { - x = iconHeight - m_pixmap.width(); // Align right - y = (iconHeight - m_pixmap.height()) / 2; // Center vertically - painter.drawPixmap(x, y, m_pixmap); + const int x = (iconHeight - m_pixmap.width()) / 2; // Center horizontally + int y = iconHeight - m_pixmap.height(); // Move to bottom + if (!iconOnTop) { + y /= 2.0; // Center vertically } + painter.drawPixmap(x, y, m_pixmap); m_pixmap = squarePixmap; } else { @@ -559,7 +558,12 @@ hoverHeight *= scaleFactor; } const qreal hoverX = m_pixmapPos.x() + (m_scaledPixmapSize.width() - hoverWidth) / 2.0; - const qreal hoverY = m_pixmapPos.y() + m_scaledPixmapSize.height() - hoverHeight; + qreal hoverY = m_scaledPixmapSize.height() - hoverHeight; + if (!iconOnTop) { + hoverY /= 2.0; + } + hoverY += m_pixmapPos.y(); + m_iconRect = QRectF(hoverX, hoverY, hoverWidth, hoverHeight); const qreal margin = option.margin; m_iconRect.adjust(-margin, -margin, margin, margin); @@ -843,7 +847,7 @@ painter->drawPixmap(m_pixmapPos, scaledPixmap); #ifdef KFILEITEMLISTWIDGET_DEBUG - painter->setPen(Qt::green); + painter->setPen(Qt::blue); painter->drawRect(QRectF(m_pixmapPos, QSizeF(scaledPixmap.size()))); #endif } else { diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistwidget.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistwidget.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemlistwidget.h 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemlistwidget.h 2012-01-02 19:51:26.000000000 +0000 @@ -128,7 +128,7 @@ private: bool m_isCut; bool m_isHidden; - bool m_isDir; + bool m_isExpandable; bool m_dirtyLayout; bool m_dirtyContent; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodel.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodel.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodel.cpp 2011-12-21 00:15:26.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodel.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -358,8 +358,8 @@ m_roles = roles; if (count() > 0) { - const bool supportedExpanding = m_requestRole[IsExpandedRole] && m_requestRole[ExpansionLevelRole]; - const bool willSupportExpanding = roles.contains("isExpanded") && roles.contains("expansionLevel"); + const bool supportedExpanding = m_requestRole[ExpansionLevelRole]; + const bool willSupportExpanding = roles.contains("expansionLevel"); if (supportedExpanding && !willSupportExpanding) { // No expanding is supported anymore. Take care to delete all items that have an expansion level // that is not 0 (and hence are part of an expanded item). @@ -367,6 +367,7 @@ } } + m_groups.clear(); resetRoles(); QSetIterator it(roles); @@ -394,7 +395,7 @@ bool KFileItemModel::setExpanded(int index, bool expanded) { - if (isExpanded(index) == expanded || index < 0 || index >= count()) { + if (!isExpandable(index) || isExpanded(index) == expanded) { return false; } @@ -445,7 +446,7 @@ bool KFileItemModel::isExpandable(int index) const { if (index >= 0 && index < count()) { - return m_itemData.at(index)->item.isDir(); + return m_itemData.at(index)->values.value("isExpandable").toBool(); } return false; } @@ -462,7 +463,6 @@ void KFileItemModel::setExpanded(const QSet& urls) { - const KDirLister* dirLister = m_dirLister.data(); if (!dirLister) { return; @@ -607,20 +607,19 @@ } // Determine the indexes that have been moved - bool emitItemsMoved = false; QList movedToIndexes; movedToIndexes.reserve(itemCount); for (int i = 0; i < itemCount; i++) { const int newIndex = m_items.value(oldUrls.at(i).url()); movedToIndexes.append(newIndex); - if (!emitItemsMoved && newIndex != i) { - emitItemsMoved = true; - } } - if (emitItemsMoved) { - emit itemsMoved(KItemRange(0, itemCount), movedToIndexes); - } + // Don't check whether items have really been moved and always emit a + // itemsMoved() signal after resorting: In case of grouped items + // the groups might change even if the items themselves don't change their + // position. Let the receiver of the signal decide whether a check for moved + // items makes sense. + emit itemsMoved(KItemRange(0, itemCount), movedToIndexes); #ifdef KFILEITEMMODEL_DEBUG kDebug() << "[TIME] Resorting of" << itemCount << "items:" << timer.elapsed(); @@ -674,19 +673,35 @@ void KFileItemModel::slotNewItems(const KFileItemList& items) { + Q_ASSERT(!items.isEmpty()); + if (m_requestRole[ExpansionLevelRole] && m_rootExpansionLevel >= 0) { - // If the expanding of items is enabled in the model, it might be - // possible that the call dirLister->openUrl(url, KDirLister::Keep) in - // KFileItemModel::setExpanded() results in emitting of the same items - // twice due to the Keep-parameter. This case happens if an item gets - // expanded, collapsed and expanded again before the items could be loaded - // for the first expansion. - foreach (const KFileItem& item, items) { - const int index = m_items.value(item.url(), -1); - if (index >= 0) { - // The items are already part of the model. - return; - } + // To be able to compare whether the new items may be inserted as children + // of a parent item the pending items must be added to the model first. + dispatchPendingItemsToInsert(); + + KFileItem item = items.first(); + + // If the expanding of items is enabled, the call + // dirLister->openUrl(url, KDirLister::Keep) in KFileItemModel::setExpanded() + // might result in emitting the same items twice due to the Keep-parameter. + // This case happens if an item gets expanded, collapsed and expanded again + // before the items could be loaded for the first expansion. + const int index = m_items.value(item.url(), -1); + if (index >= 0) { + // The items are already part of the model. + return; + } + + // KDirLister keeps the children of items that got expanded once even if + // they got collapsed again with KFileItemModel::setExpanded(false). So it must be + // checked whether the parent for new items is still expanded. + KUrl parentUrl = item.url().upUrl(); + parentUrl.adjustPath(KUrl::RemoveTrailingSlash); + const int parentIndex = m_items.value(parentUrl, -1); + if (parentIndex >= 0 && !m_itemData[parentIndex]->values.value("isExpanded").toBool()) { + // The parent is not expanded. + return; } } @@ -1081,6 +1096,7 @@ rolesHash.insert("rating", RatingRole); rolesHash.insert("isDir", IsDirRole); rolesHash.insert("isExpanded", IsExpandedRole); + rolesHash.insert("isExpandable", IsExpandableRole); rolesHash.insert("expansionLevel", ExpansionLevelRole); } return rolesHash.value(role, NoRole); @@ -1141,24 +1157,33 @@ } if (m_requestRole[PathRole]) { + QString path; if (item.url().protocol() == QLatin1String("trash")) { - const KIO::UDSEntry udsEntry = item.entry(); - data.insert("path", udsEntry.stringValue(KIO::UDSEntry::UDS_EXTRA)); + path = item.entry().stringValue(KIO::UDSEntry::UDS_EXTRA); } else { - data.insert("path", item.localPath()); + path = item.localPath(); } + + const int index = path.lastIndexOf(item.text()); + path = path.mid(0, index - 1); + data.insert("path", path); } if (m_requestRole[IsExpandedRole]) { data.insert("isExpanded", false); } + if (m_requestRole[IsExpandableRole]) { + data.insert("isExpandable", item.isDir() && item.url() == item.targetUrl()); + } + if (m_requestRole[ExpansionLevelRole]) { if (m_rootExpansionLevel == UninitializedRootExpansionLevel && m_dirLister.data()) { const KUrl rootUrl = m_dirLister.data()->url(); const QString protocol = rootUrl.protocol(); const bool forceRootExpansionLevel = (protocol == QLatin1String("trash") || protocol == QLatin1String("nepomuk") || + protocol == QLatin1String("remote") || protocol.contains(QLatin1String("search"))); if (forceRootExpansionLevel) { m_rootExpansionLevel = ForceRootExpansionLevel; @@ -1506,16 +1531,16 @@ // Compare the items of the parents that represent the first // different path after the common path. - const KUrl parentUrlA(pathA.left(index) + subPathA); - const KUrl parentUrlB(pathB.left(index) + subPathB); + const QString parentPathA = pathA.left(index) + subPathA; + const QString parentPathB = pathB.left(index) + subPathB; const ItemData* parentA = a; - while (parentA && parentA->item.url() != parentUrlA) { + while (parentA && parentA->item.url().path() != parentPathA) { parentA = parentA->parent; } const ItemData* parentB = b; - while (parentB && parentB->item.url() != parentUrlB) { + while (parentB && parentB->item.url().path() != parentPathB) { parentB = parentB->parent; } @@ -1820,12 +1845,12 @@ const int maxIndex = count() - 1; QList > groups; - int groupValue; + int groupValue = -1; for (int i = 0; i <= maxIndex; ++i) { if (isChildItem(i)) { continue; } - const int newGroupValue = m_itemData.at(i)->values.value("rating").toInt(); + const int newGroupValue = m_itemData.at(i)->values.value("rating", 0).toInt(); if (newGroupValue != groupValue) { groupValue = newGroupValue; groups.append(QPair(i, newGroupValue)); @@ -1842,15 +1867,17 @@ const int maxIndex = count() - 1; QList > groups; + bool isFirstGroupValue = true; QString groupValue; for (int i = 0; i <= maxIndex; ++i) { if (isChildItem(i)) { continue; } const QString newGroupValue = m_itemData.at(i)->values.value(role).toString(); - if (newGroupValue != groupValue) { + if (newGroupValue != groupValue || isFirstGroupValue) { groupValue = newGroupValue; groups.append(QPair(i, newGroupValue)); + isFirstGroupValue = false; } } diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodel.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodel.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodel.h 2011-12-21 00:15:26.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodel.h 2012-01-02 19:51:26.000000000 +0000 @@ -199,6 +199,7 @@ RatingRole, IsDirRole, IsExpandedRole, + IsExpandableRole, ExpansionLevelRole, RolesCount // Mandatory last entry }; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -169,7 +169,18 @@ void KFileItemModelRolesUpdater::setEnabledPlugins(const QStringList& list) { + if (m_enabledPlugins == list) { + return; + } + m_enabledPlugins = list; + if (m_previewShown) { + if (m_paused) { + m_previewChangedDuringPausing = true; + } else { + sortAndResolveAllRoles(); + } + } } void KFileItemModelRolesUpdater::setPaused(bool paused) @@ -345,7 +356,8 @@ const bool hasSlowRoles = m_previewShown || m_roles.contains("size") - || m_roles.contains("type"); + || m_roles.contains("type") + || m_roles.contains("isExpandable"); const ResolveHint resolveHint = hasSlowRoles ? ResolveFast : ResolveAll; // Resolving the MIME type can be expensive. Assure that not more than MaxBlockTimeout ms are @@ -704,13 +716,19 @@ { QHash data; - if (m_roles.contains("size")) { - if (item.isDir() && item.isLocalFile()) { - const QString path = item.localPath(); - const int count = subDirectoriesCount(path); - if (count >= 0) { + const bool getSizeRole = m_roles.contains("size"); + const bool getIsExpandableRole = m_roles.contains("isExpandable"); + + if ((getSizeRole || getIsExpandableRole) && item.isDir() && item.isLocalFile()) { + const QString path = item.localPath(); + const int count = subDirectoriesCount(path); + if (count >= 0) { + if (getSizeRole) { data.insert("size", KIO::filesize_t(count)); } + if (getIsExpandableRole) { + data.insert("isExpandable", count > 0); + } } } @@ -759,11 +777,17 @@ return itemList; } -int KFileItemModelRolesUpdater::subDirectoriesCount(const QString& path) +int KFileItemModelRolesUpdater::subDirectoriesCount(const QString& path) const { + const bool countHiddenFiles = m_model->showHiddenFiles(); + #ifdef Q_WS_WIN QDir dir(path); - return dir.entryList(QDir::AllEntries|QDir::NoDotAndDotDot|QDir::System).count(); + QDir::Filters filters = QDir::AllEntries | QDir::NoDotAndDotDot | QDir::System; + if (countHiddenFiles) { + filters |= QDir::Hidden; + } + return dir.entryList(filters).count(); #else // Taken from kdelibs/kio/kio/kdirmodel.cpp // Copyright (C) 2006 David Faure @@ -775,8 +799,8 @@ struct dirent *dirEntry = 0; while ((dirEntry = ::readdir(dir))) { // krazy:exclude=syscalls if (dirEntry->d_name[0] == '.') { - if (dirEntry->d_name[1] == '\0') { - // Skip "." + if (dirEntry->d_name[1] == '\0' || !countHiddenFiles) { + // Skip "." or hidden files continue; } if (dirEntry->d_name[1] == '.' && dirEntry->d_name[2] == '\0') { diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kfileitemmodelrolesupdater.h 2012-01-02 19:51:26.000000000 +0000 @@ -82,13 +82,10 @@ QSet roles() const; /** - * Sets the list of enabled thumbnail plugins. + * Sets the list of enabled thumbnail plugins that are used for previews. * Per default all plugins enabled in the KConfigGroup "PreviewSettings" * are used. * - * Note that this method doesn't cause already generated previews - * to be regenerated. - * * For a list of available plugins, call KServiceTypeTrader::self()->query("ThumbCreator"). * * @see enabledPlugins @@ -160,7 +157,7 @@ KFileItemList sortedItems(const QSet& items) const; - static int subDirectoriesCount(const QString& path); + int subDirectoriesCount(const QString& path) const; private: // Property for setPaused()/isPaused(). diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistcontroller.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistcontroller.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistcontroller.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistcontroller.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -50,7 +50,9 @@ m_pressedIndex(-1), m_pressedMousePos(), m_autoActivationTimer(0), - m_oldSelection() + m_oldSelection(), + m_keyboardAnchorIndex(-1), + m_keyboardAnchorPos(0) { connect(m_keyboardManager, SIGNAL(changeCurrentItem(QString,bool)), this, SLOT(slotChangeCurrentItem(QString,bool))); @@ -175,7 +177,6 @@ const bool shiftOrControlPressed = shiftPressed || controlPressed; const int itemCount = m_model->count(); - const int itemsPerRow = m_view->itemsPerOffset(); // For horizontal scroll orientation, transform // the arrow keys to simplify the event handling. @@ -188,6 +189,16 @@ default: break; } } + + const bool selectSingleItem = itemCount == 1 && + (key == Qt::Key_Home || key == Qt::Key_End || + key == Qt::Key_Up || key == Qt::Key_Down || + key == Qt::Key_Left || key == Qt::Key_Right); + if (selectSingleItem) { + const int current = m_selectionManager->currentItem(); + m_selectionManager->setSelected(current); + return true; + } switch (key) { case Qt::Key_Home: @@ -200,37 +211,28 @@ case Qt::Key_Left: if (index > 0) { - index--; + --index; + m_keyboardAnchorIndex = index; + m_keyboardAnchorPos = keyboardAnchorPos(index); } break; case Qt::Key_Right: if (index < itemCount - 1) { - index++; + ++index; + m_keyboardAnchorIndex = index; + m_keyboardAnchorPos = keyboardAnchorPos(index); } break; case Qt::Key_Up: - if (index >= itemsPerRow) { - index -= itemsPerRow; - } + updateKeyboardAnchor(); + index = previousRowIndex(); break; case Qt::Key_Down: - if (index + itemsPerRow < itemCount) { - // We are not in the last row yet. - index += itemsPerRow; - } else { - // We are either in the last row already, or we are in the second-last row, - // and there is no item below the current item. - // In the latter case, we jump to the very last item. - const int currentColumn = index % itemsPerRow; - const int lastItemColumn = (itemCount - 1) % itemsPerRow; - const bool inLastRow = currentColumn < lastItemColumn; - if (!inLastRow) { - index = itemCount - 1; - } - } + updateKeyboardAnchor(); + index = nextRowIndex(); break; case Qt::Key_Enter: @@ -252,7 +254,8 @@ m_selectionManager->setSelected(index, 1, KItemListSelectionManager::Toggle); m_selectionManager->beginAnchoredSelection(index); } else { - m_keyboardManager->addKeys(event->text()); + const int current = m_selectionManager->currentItem(); + m_selectionManager->setSelected(current); } break; @@ -911,7 +914,7 @@ const QPixmap pixmap = m_view->createDragPixmap(selectedItems); drag->setPixmap(pixmap); - drag->exec(Qt::MoveAction | Qt::CopyAction | Qt::LinkAction, Qt::IgnoreAction); + drag->exec(Qt::CopyAction); } KItemListWidget* KItemListController::hoveredWidget() const @@ -944,4 +947,97 @@ return 0; } +void KItemListController::updateKeyboardAnchor() +{ + const bool validAnchor = m_keyboardAnchorIndex >= 0 && + m_keyboardAnchorIndex < m_model->count() && + keyboardAnchorPos(m_keyboardAnchorIndex) == m_keyboardAnchorPos; + if (!validAnchor) { + const int index = m_selectionManager->currentItem(); + m_keyboardAnchorIndex = index; + m_keyboardAnchorPos = keyboardAnchorPos(index); + } +} + +int KItemListController::nextRowIndex() const +{ + const int currentIndex = m_selectionManager->currentItem(); + if (m_keyboardAnchorIndex < 0) { + return currentIndex; + } + + const int maxIndex = m_model->count() - 1; + if (currentIndex == maxIndex) { + return currentIndex; + } + + // Calculate the index of the last column inside the row of the current index + int lastColumnIndex = currentIndex; + while (keyboardAnchorPos(lastColumnIndex + 1) > keyboardAnchorPos(lastColumnIndex)) { + ++lastColumnIndex; + if (lastColumnIndex >= maxIndex) { + return currentIndex; + } + } + + // Based on the last column index go to the next row and calculate the nearest index + // that is below the current index + int nextRowIndex = lastColumnIndex + 1; + int searchIndex = nextRowIndex; + qreal minDiff = qAbs(m_keyboardAnchorPos - keyboardAnchorPos(nextRowIndex)); + while (searchIndex < maxIndex && keyboardAnchorPos(searchIndex + 1) > keyboardAnchorPos(searchIndex)) { + ++searchIndex; + const qreal searchDiff = qAbs(m_keyboardAnchorPos - keyboardAnchorPos(searchIndex)); + if (searchDiff < minDiff) { + minDiff = searchDiff; + nextRowIndex = searchIndex; + } + } + + return nextRowIndex; +} + +int KItemListController::previousRowIndex() const +{ + const int currentIndex = m_selectionManager->currentItem(); + if (m_keyboardAnchorIndex < 0 || currentIndex == 0) { + return currentIndex; + } + + // Calculate the index of the first column inside the row of the current index + int firstColumnIndex = currentIndex; + while (keyboardAnchorPos(firstColumnIndex - 1) < keyboardAnchorPos(firstColumnIndex)) { + --firstColumnIndex; + if (firstColumnIndex <= 0) { + return currentIndex; + } + } + + // Based on the first column index go to the previous row and calculate the nearest index + // that is above the current index + int previousRowIndex = firstColumnIndex - 1; + int searchIndex = previousRowIndex; + qreal minDiff = qAbs(m_keyboardAnchorPos - keyboardAnchorPos(previousRowIndex)); + while (searchIndex > 0 && keyboardAnchorPos(searchIndex - 1) < keyboardAnchorPos(searchIndex)) { + --searchIndex; + const qreal searchDiff = qAbs(m_keyboardAnchorPos - keyboardAnchorPos(searchIndex)); + if (searchDiff < minDiff) { + minDiff = searchDiff; + previousRowIndex = searchIndex; + } + } + + return previousRowIndex; +} + +qreal KItemListController::keyboardAnchorPos(int index) const +{ + const QRectF itemRect = m_view->itemRect(index); + if (!itemRect.isEmpty()) { + return (m_view->scrollOrientation() == Qt::Vertical) ? itemRect.x() : itemRect.y(); + } + + return 0; +} + #include "kitemlistcontroller.moc" diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistcontroller.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistcontroller.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistcontroller.h 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistcontroller.h 2012-01-02 19:51:26.000000000 +0000 @@ -220,6 +220,34 @@ */ KItemListWidget* widgetForPos(const QPointF& pos) const; + /** + * Updates m_keyboardAnchorIndex and m_keyboardAnchorPos. If no anchor is + * set, it will be adjusted to the current item. If it is set it will be + * checked whether it is still valid, otherwise it will be reset to the + * current item. + */ + void updateKeyboardAnchor(); + + /** + * @return Index for the next row based on the current index. + * If there is no next row the current index will be returned. + */ + int nextRowIndex() const; + + /** + * @return Index for the previous row based on the current index. + * If there is no previous row the current index will be returned. + */ + int previousRowIndex() const; + + /** + * Helper method for updateKeyboardAnchor(), previousRowIndex() and nextRowIndex(). + * @return The position of the keyboard anchor for the item with the index \a index. + * If a horizontal scrolling is used the y-position of the item will be returned, + * for the vertical scrolling the x-position will be returned. + */ + qreal keyboardAnchorPos(int index) const; + private: bool m_selectionTogglePressed; SelectionBehavior m_selectionBehavior; @@ -235,10 +263,27 @@ /** * When starting a rubberband selection during a Shift- or Control-key has been * pressed the current selection should never be deleted. To be able to restore - * the current selection it is remembered in m_oldSelection before + * the current selection it is remembered in m_oldSelection before the * rubberband gets activated. */ QSet m_oldSelection; + + /** + * Assuming a view is given with a vertical scroll-orientation, grouped items and + * a maximum of 4 columns: + * + * 1 2 3 4 + * 5 6 7 + * 8 9 10 11 + * 12 13 14 + * + * If the current index is on 4 and key-down is pressed, then item 7 gets the current + * item. Now when pressing key-down again item 11 should get the current item and not + * item 10. This makes it necessary to keep track of the requested column to have a + * similar behavior like in a text editor: + */ + int m_keyboardAnchorIndex; + qreal m_keyboardAnchorPos; }; #endif diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistselectionmanager.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistselectionmanager.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistselectionmanager.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistselectionmanager.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -288,70 +288,33 @@ // Update the current item if (m_currentItem >= 0) { const int previousCurrent = m_currentItem; - int currentItem = m_currentItem; - foreach (const KItemRange& itemRange, itemRanges) { - if (currentItem < itemRange.index) { - break; - } - - if (currentItem >= itemRange.index + itemRange.count) { - currentItem -= itemRange.count; - } - - if (currentItem >= m_model->count()) { - currentItem = m_model->count() - 1; - } - } - // Calling setCurrentItem would trigger the selectionChanged signal, but we want to + // Calling setCurrentItem() would trigger the selectionChanged signal, but we want to // emit it only once in this function -> change the current item manually and emit currentChanged - m_currentItem = currentItem; - Q_ASSERT(m_currentItem < m_model->count()); - emit currentChanged(m_currentItem, previousCurrent); + m_currentItem = indexAfterRangesRemoving(m_currentItem, itemRanges); + if (m_currentItem < 0) { + m_currentItem = qMin(previousCurrent, m_model->count() - 1); + } + if (m_currentItem != previousCurrent) { + emit currentChanged(m_currentItem, previousCurrent); + } } // Update the anchor item if (m_anchorItem >= 0) { - int anchorItem = m_anchorItem; - foreach (const KItemRange& itemRange, itemRanges) { - if (anchorItem < itemRange.index) { - break; - } - if (anchorItem >= itemRange.index + itemRange.count) { - anchorItem -= itemRange.count; - } else if (anchorItem >= m_model->count()) { - anchorItem = m_model->count() - 1; - } - } - m_anchorItem = anchorItem; + m_anchorItem = indexAfterRangesRemoving(m_anchorItem, itemRanges); if (m_anchorItem < 0) { m_isAnchoredSelectionActive = false; } } - // Update the selections + // Update the selections and the anchor item if (!m_selectedItems.isEmpty()) { const QSet previous = m_selectedItems; m_selectedItems.clear(); m_selectedItems.reserve(previous.count()); QSetIterator it(previous); while (it.hasNext()) { - int index = it.next(); - int dec = 0; - foreach (const KItemRange& itemRange, itemRanges) { - if (index < itemRange.index) { - break; - } - - if (index < itemRange.index + itemRange.count) { - // The selection is part of the removed range - // and will get deleted - index = -1; - break; - } - - dec += itemRange.count; - } - index -= dec; + const int index = indexAfterRangesRemoving(it.next(), itemRanges); if (index >= 0) { m_selectedItems.insert(index); } @@ -362,6 +325,9 @@ if (selection != previousSelection) { emit selectionChanged(selection, previousSelection); } + + Q_ASSERT(m_currentItem < m_model->count()); + Q_ASSERT(m_anchorItem < m_model->count()); } void KItemListSelectionManager::itemsMoved(const KItemRange& itemRange, const QList& movedToIndexes) @@ -408,4 +374,21 @@ } } +int KItemListSelectionManager::indexAfterRangesRemoving(int index, const KItemRangeList& itemRanges) const +{ + int dec = 0; + foreach (const KItemRange& itemRange, itemRanges) { + if (index < itemRange.index) { + break; + } + + if (index < itemRange.index + itemRange.count) { + // The index is part of the removed range + return -1; + } + + dec += itemRange.count; + } + return index - dec; +} #include "kitemlistselectionmanager.moc" diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistselectionmanager.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistselectionmanager.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistselectionmanager.h 2011-10-11 14:42:27.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistselectionmanager.h 2012-01-02 19:51:26.000000000 +0000 @@ -76,6 +76,13 @@ void itemsRemoved(const KItemRangeList& itemRanges); void itemsMoved(const KItemRange& itemRange, const QList& movedToIndexes); + + /** + * Helper method for itemsRemoved. Returns the changed index after removing + * the given range. If the index is part of the range, -1 will be returned. + */ + int indexAfterRangesRemoving(int index, const KItemRangeList& itemRanges) const; + private: int m_currentItem; int m_anchorItem; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistview.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistview.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistview.cpp 2011-12-21 00:15:26.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistview.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -201,13 +201,19 @@ void KItemListView::setItemOffset(qreal offset) { + if (m_layouter->itemOffset() == offset) { + return; + } + m_layouter->setItemOffset(offset); if (m_header) { m_header->setPos(-offset, 0); } - if (!m_layoutTimer->isActive()) { - doLayout(NoAnimation); - } + + // Don't check whether the m_layoutTimer is active: Changing the + // item offset must always trigger a synchronous layout, otherwise + // the smooth-scrolling might get jerky. + doLayout(NoAnimation); } qreal KItemListView::itemOffset() const @@ -485,11 +491,6 @@ } } -int KItemListView::itemsPerOffset() const -{ - return m_layouter->itemsPerOffset(); -} - void KItemListView::beginTransaction() { ++m_activeTransactions; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistview.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistview.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistview.h 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistview.h 2012-01-02 19:51:26.000000000 +0000 @@ -202,15 +202,6 @@ */ void scrollToItem(int index); - /** - * @return The number of items that can be shown in parallel for one offset. - * Assuming the scrolldirection is vertical then a value of 4 means - * that 4 columns for items are available. Assuming the scrolldirection - * is horizontal then a value of 4 means that 4 lines for items are - * available. - */ - int itemsPerOffset() const; - void beginTransaction(); void endTransaction(); bool isTransactionActive() const; diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistviewlayouter.cpp kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistviewlayouter.cpp --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistviewlayouter.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistviewlayouter.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -234,7 +234,7 @@ pos.rx() = 0; size = QSizeF(m_size.width(), m_groupHeaderHeight); } else { - size = QSizeF(firstItemRect.width(), m_groupHeaderHeight); + size = QSizeF(minimumGroupHeaderWidth(), m_groupHeaderHeight); } return QRectF(pos, size); } @@ -253,11 +253,6 @@ return rows * m_columnCount; } -int KItemListViewLayouter::itemsPerOffset() const -{ - return m_columnCount; -} - bool KItemListViewLayouter::isFirstGroupItem(int itemIndex) const { const_cast(this)->doLayout(); @@ -298,10 +293,7 @@ // Apply the unused width equally to each column const qreal unusedWidth = size.width() - m_columnCount * m_columnWidth; if (unusedWidth > 0) { - // [Comment #1] A cast to int is done on purpose to prevent rounding issues when - // drawing pixmaps and drawing text or other graphic primitives: Qt uses a different - // rastering algorithm for the upper/left of pixmaps - const qreal columnInc = int(unusedWidth / (m_columnCount + 1)); + const qreal columnInc = unusedWidth / (m_columnCount + 1); m_columnWidth += columnInc; m_xPosInc += columnInc; } @@ -372,9 +364,9 @@ // (in average a character requires the halve width of the font height). // // TODO: Let the group headers provide a minimum width and respect this width here - const qreal minimumGroupHeaderWidth = int(m_groupHeaderHeight * 15 / 2); // See [Comment #1] - if (requiredItemHeight < minimumGroupHeaderWidth) { - requiredItemHeight = minimumGroupHeaderWidth; + const qreal headerWidth = minimumGroupHeaderWidth(); + if (requiredItemHeight < headerWidth) { + requiredItemHeight = headerWidth; } } @@ -441,21 +433,31 @@ const int maxIndex = m_model->count() - 1; - // Calculate the first visible index that is (at least partly) visible + // Calculate the first visible index that is fully visible int min = 0; int max = maxIndex; int mid = 0; do { mid = (min + max) / 2; - if (m_itemRects[mid].bottom() < m_scrollOffset) { + if (m_itemRects[mid].top() < m_scrollOffset) { min = mid + 1; } else { max = mid - 1; } } while (min <= max); - while (mid < maxIndex && m_itemRects[mid].bottom() < m_scrollOffset) { - ++mid; + if (mid > 0) { + // Include the row before the first fully visible index, as it might + // be partly visible + if (m_itemRects[mid].top() >= m_scrollOffset) { + --mid; + Q_ASSERT(m_itemRects[mid].top() < m_scrollOffset); + } + + const qreal rowTop = m_itemRects[mid].top(); + while (mid > 0 && m_itemRects[mid - 1].top() == rowTop) { + --mid; + } } m_firstVisibleIndex = mid; @@ -506,4 +508,9 @@ return true; } +qreal KItemListViewLayouter::minimumGroupHeaderWidth() const +{ + return m_groupHeaderHeight * 15 / 2; +} + #include "kitemlistviewlayouter_p.moc" diff -Nru kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistviewlayouter_p.h kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistviewlayouter_p.h --- kde-baseapps-4.7.95/dolphin/src/kitemviews/kitemlistviewlayouter_p.h 2011-11-04 14:33:30.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/kitemviews/kitemlistviewlayouter_p.h 2012-01-02 19:51:26.000000000 +0000 @@ -108,13 +108,6 @@ int maximumVisibleItems() const; /** - * @return Maximum number of items that can be shown in the same row - * (= vertical scrolldirection) or same column - * (= horizontal scrolldirection). - */ - int itemsPerOffset() const; - - /** * @return True if the item with the index \p itemIndex * is the first item within a group. */ @@ -127,6 +120,16 @@ void updateVisibleIndexes(); bool createGroupHeaders(); + /** + * @return Minimum width of group headers when grouping is enabled in the horizontal + * alignment mode. The header alignment is done like this: + * Header-1 Header-2 Header-3 + * Item 1 Item 4 Item 7 + * Item 2 Item 5 Item 8 + * Item 3 Item 6 Item 9 + */ + qreal minimumGroupHeaderWidth() const; + private: bool m_dirty; bool m_visibleIndexesDirty; diff -Nru kde-baseapps-4.7.95/dolphin/src/main.cpp kde-baseapps-4.7.97/dolphin/src/main.cpp --- kde-baseapps-4.7.95/dolphin/src/main.cpp 2011-11-17 20:56:05.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/main.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -33,10 +33,10 @@ { KAboutData about("dolphin", 0, ki18nc("@title", "Dolphin"), - "1.99", + "2.0", ki18nc("@title", "File Manager"), KAboutData::License_GPL, - ki18nc("@info:credit", "(C) 2006-2011 Peter Penz")); + ki18nc("@info:credit", "(C) 2006-2012 Peter Penz")); about.setHomepage("http://dolphin.kde.org"); about.addAuthor(ki18nc("@info:credit", "Peter Penz"), ki18nc("@info:credit", "Maintainer and developer"), diff -Nru kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphingeneral.desktop kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphingeneral.desktop --- kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphingeneral.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphingeneral.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -32,7 +32,7 @@ Name[it]=Impostazioni generali di Dolphin Name[ja]=Dolphin 全般 Name[kk]=Dolphin жалпы -Name[km]=ភាព​ទូទៅ​របស់​ឌូហ្វីន +Name[km]=ភាព​ទូទៅ​របស់ Dolphin Name[kn]=ಡಾಲ್ಫಿನ್ ಸಾಮಾನ್ಯ Name[ko]=Dolphin 일반 Name[lt]=Dolphin bendrieji @@ -255,7 +255,7 @@ Comment[it]=Configura le impostazioni generali del gestore dei file Comment[ja]=ファイルマネージャの全般的な設定を行います Comment[kk]=Файл менеджер жалпы параметрлерін баптау -Comment[km]=កំណត់​រចនាសម្ព័ន្ធ​នៃ​ការ​កំណត់​កម្មវិធី​គ្រប់គ្រង​ឯកសារ +Comment[km]=កំណត់​រចនាសម្ព័ន្ធ​នៃ​ការ​កំណត់​កម្មវិធី​គ្រប់គ្រង​ឯកសារ​ទូទៅ Comment[kn]=ಸಾಮಾನ್ಯ ಕಡತ ವ್ಯವಸ್ಥಾಪಕದ ಸಂಯೋಜನೆಗಳನ್ನು ಸಂರಚಿಸಿ Comment[ko]=일반 파일 관리자 설정 Comment[lt]=Bendrųjų failų tvarkyklės nustatymų konfigūravimas @@ -296,10 +296,14 @@ X-KDE-Keywords[cs]=správce souborů X-KDE-Keywords[da]=filhåndtering X-KDE-Keywords[de]=Dateimanager +X-KDE-Keywords[es]=gestor de archivos +X-KDE-Keywords[et]=failihaldur X-KDE-Keywords[fi]=tiedostonhallinta +X-KDE-Keywords[ga]=bainisteoir comhad X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[kk]=file manager +X-KDE-Keywords[km]=កម្មវិធី​គ្រប់គ្រង​ឯកសារ X-KDE-Keywords[nb]=filbehandler X-KDE-Keywords[nds]=Dateipleger X-KDE-Keywords[nl]=bestandsbeheerder diff -Nru kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinnavigation.desktop kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinnavigation.desktop --- kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinnavigation.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinnavigation.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -296,10 +296,14 @@ X-KDE-Keywords[cs]=správce souborů X-KDE-Keywords[da]=filhåndtering X-KDE-Keywords[de]=Dateimanager +X-KDE-Keywords[es]=gestor de archivos +X-KDE-Keywords[et]=failihaldur X-KDE-Keywords[fi]=tiedostonhallinta +X-KDE-Keywords[ga]=bainisteoir comhad X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[kk]=file manager +X-KDE-Keywords[km]=កម្មវិធី​គ្រប់គ្រង​ឯកសារ X-KDE-Keywords[nb]=filbehandler X-KDE-Keywords[nds]=Dateipleger X-KDE-Keywords[nl]=bestandsbeheerder diff -Nru kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinservices.desktop kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinservices.desktop --- kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinservices.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinservices.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -247,10 +247,14 @@ X-KDE-Keywords[cs]=správce souborů X-KDE-Keywords[da]=filhåndtering X-KDE-Keywords[de]=Dateimanager +X-KDE-Keywords[es]=gestor de archivos +X-KDE-Keywords[et]=failihaldur X-KDE-Keywords[fi]=tiedostonhallinta +X-KDE-Keywords[ga]=bainisteoir comhad X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[kk]=file manager +X-KDE-Keywords[km]=កម្មវិធី​គ្រប់គ្រង​ឯកសារ X-KDE-Keywords[nb]=filbehandler X-KDE-Keywords[nds]=Dateipleger X-KDE-Keywords[nl]=bestandsbeheerder diff -Nru kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinviewmodes.desktop kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinviewmodes.desktop --- kde-baseapps-4.7.95/dolphin/src/settings/kcm/kcmdolphinviewmodes.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/settings/kcm/kcmdolphinviewmodes.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -294,10 +294,14 @@ X-KDE-Keywords[cs]=správce souborů X-KDE-Keywords[da]=filhåndtering X-KDE-Keywords[de]=Dateimanager +X-KDE-Keywords[es]=gestor de archivos +X-KDE-Keywords[et]=failihaldur X-KDE-Keywords[fi]=tiedostonhallinta +X-KDE-Keywords[ga]=bainisteoir comhad X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[kk]=file manager +X-KDE-Keywords[km]=កម្មវិធី​គ្រប់គ្រង​ឯកសារ X-KDE-Keywords[nb]=filbehandler X-KDE-Keywords[nds]=Dateipleger X-KDE-Keywords[nl]=bestandsbeheerder diff -Nru kde-baseapps-4.7.95/dolphin/src/tests/kfileitemmodeltest.cpp kde-baseapps-4.7.97/dolphin/src/tests/kfileitemmodeltest.cpp --- kde-baseapps-4.7.95/dolphin/src/tests/kfileitemmodeltest.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/tests/kfileitemmodeltest.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -372,7 +372,7 @@ // yields the correct result for "a/a/1" and "a/a-1/", whis is non-trivial because they share the // first three characters. QSet modelRoles = m_model->roles(); - modelRoles << "isExpanded" << "expansionLevel"; + modelRoles << "isExpanded" << "isExpandable" << "expansionLevel"; m_model->setRoles(modelRoles); QStringList files; diff -Nru kde-baseapps-4.7.95/dolphin/src/views/dolphinitemlistcontainer.cpp kde-baseapps-4.7.97/dolphin/src/views/dolphinitemlistcontainer.cpp --- kde-baseapps-4.7.95/dolphin/src/views/dolphinitemlistcontainer.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/views/dolphinitemlistcontainer.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -176,6 +176,13 @@ updateFont(); updateGridSize(); + + const KConfigGroup globalConfig(KGlobal::config(), "PreviewSettings"); + const QStringList plugins = globalConfig.readEntry("Plugins", QStringList() + << "directorythumbnail" + << "imagethumbnail" + << "jpegthumbnail"); + m_fileItemListView->setEnabledPlugins(plugins); } void DolphinItemListContainer::updateGridSize() diff -Nru kde-baseapps-4.7.95/dolphin/src/views/dolphinview.cpp kde-baseapps-4.7.97/dolphin/src/views/dolphinview.cpp --- kde-baseapps-4.7.95/dolphin/src/views/dolphinview.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/dolphin/src/views/dolphinview.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -311,11 +311,8 @@ const KItemListSelectionManager* selectionManager = m_container->controller()->selectionManager(); const QSet selectedIndexes = selectionManager->selectedItems(); - QList sortedIndexes = selectedIndexes.toList(); - qSort(sortedIndexes); - KFileItemList selectedItems; - QListIterator it(sortedIndexes); + QSetIterator it(selectedIndexes); while (it.hasNext()) { const int index = it.next(); selectedItems.append(model->fileItem(index)); diff -Nru kde-baseapps-4.7.95/kdepasswd/kcm/kcm_useraccount.desktop kde-baseapps-4.7.97/kdepasswd/kcm/kcm_useraccount.desktop --- kde-baseapps-4.7.95/kdepasswd/kcm/kcm_useraccount.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/kdepasswd/kcm/kcm_useraccount.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -106,10 +106,14 @@ X-KDE-Keywords[ca]=contrasenya;correu electrònic;nom;organització;nom real;imatge d'inici de sessió;cara;mode d'eco; X-KDE-Keywords[da]=adgangskode;email;navn;organisation;ægtenavn;login-billede;ansigt;ekko-tilstand; X-KDE-Keywords[de]=Passwort,E-Mail,Name,Organisation,Tatsächlicher Name,Login,Anmeldebild,Bild,Echomodus +X-KDE-Keywords[es]=contraseña;correo;nombre;organización;nombre real;imagen de inicio;cara; modo de eco; +X-KDE-Keywords[et]=parool;e-post;nimi;organisatsioon;tegelik nimi;sisselogimispilt;nägu;echo režiim; X-KDE-Keywords[fi]=salasana;email;sähköposti;nimi;organisaatio;järjestö;oikea nimi;todellinen nimi;tunnuskuva;kaiutustila;salasanakenttä; +X-KDE-Keywords[ga]=focal faire;ríomhphost;ainm;eagras;fíorainm;íomhá logála isteach;aghaidh;mód macalla; X-KDE-Keywords[hu]=jelszó;e-mail;név;szervezet;valódi név;bejelentkezési kép;arckép;visszajelzési mód; X-KDE-Keywords[ia]=contrasigno;e-posta;nomine;organization;ver nomine;image de accesso;facie;modo echo; X-KDE-Keywords[kk]=password;email;name;organization;realname;login image;face; echo mode; +X-KDE-Keywords[km]=ពាក្យសម្ងាត់;អ៊ីមែល;ឈ្មោះ;ស្ថាប័ន;ឈ្មោះ​ពិត;រូបភាព​ចូល;មុខមាត់; របៀប​អេកូ; X-KDE-Keywords[nb]=passord;e-post;navn;organisasjon;fullt navn; innloggingsbilde;ansikt;ekkomodus; X-KDE-Keywords[nds]=Passwoort;Nettpost;Nettpostadress;Afdelen;Organisatschoon;Reaalnaam;Anmell-Bild;Torüchmellen-Bedrief; X-KDE-Keywords[nl]=wachtwoord;e-mail;naam;organisatie;echte naam;aanmeldafbeelding;gezicht; echomodus; diff -Nru kde-baseapps-4.7.95/konq-plugins/adblock/plugin_adblock.desktop kde-baseapps-4.7.97/konq-plugins/adblock/plugin_adblock.desktop --- kde-baseapps-4.7.95/konq-plugins/adblock/plugin_adblock.desktop 2011-09-26 09:43:17.000000000 +0000 +++ kde-baseapps-4.7.97/konq-plugins/adblock/plugin_adblock.desktop 2012-01-02 19:51:26.000000000 +0000 @@ -14,6 +14,7 @@ Name[eu]=Adblock Name[fi]=Mainossuodin Name[fr]=Adblock +Name[ga]=Adblock Name[gl]=Adblock Name[he]=Adblock Name[hr]=Adblock diff -Nru kde-baseapps-4.7.95/konq-plugins/autorefresh/autorefresh.desktop kde-baseapps-4.7.97/konq-plugins/autorefresh/autorefresh.desktop --- kde-baseapps-4.7.95/konq-plugins/autorefresh/autorefresh.desktop 2011-12-02 21:17:41.000000000 +0000 +++ kde-baseapps-4.7.97/konq-plugins/autorefresh/autorefresh.desktop 2012-01-02 19:51:26.000000000 +0000 @@ -25,6 +25,7 @@ Name[eu]=Freskatu automatikoki Name[fi]=Automaattinen päivitys Name[fr]=Rafraîchir automatiquement +Name[ga]=Athnuachan Uathoibríoch Name[gl]=Refrescar automaticamente Name[he]=רענון אוטומטי Name[hr]=Automatsko osvježavanje diff -Nru kde-baseapps-4.7.95/konq-plugins/domtreeviewer/domtreecommands.cpp kde-baseapps-4.7.97/konq-plugins/domtreeviewer/domtreecommands.cpp --- kde-baseapps-4.7.95/konq-plugins/domtreeviewer/domtreecommands.cpp 2011-07-27 18:36:38.000000000 +0000 +++ kde-baseapps-4.7.97/konq-plugins/domtreeviewer/domtreecommands.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -79,14 +79,18 @@ // == ChangedNodeSet ================================================ -namespace domtreeviewer { +namespace DOM { -// collection of nodes for which to emit the nodeChanged signal inline static bool operator <(const DOM::Node &n1, const DOM::Node &n2) { return (qptrdiff)n1.handle() - (qptrdiff)n2.handle() < 0; } +} + +namespace domtreeviewer { + +// collection of nodes for which to emit the nodeChanged signal class ChangedNodeSet : public QMap { }; diff -Nru kde-baseapps-4.7.95/konqueror/client/kfmclient.cpp kde-baseapps-4.7.97/konqueror/client/kfmclient.cpp --- kde-baseapps-4.7.95/konqueror/client/kfmclient.cpp 2011-08-07 15:40:34.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/client/kfmclient.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -344,7 +344,8 @@ kDebug() << url << "mimetype=" << mimetype; needInstance(); - if (url.protocol().startsWith(QLatin1String("http"))) + if (url.protocol().startsWith(QLatin1String("http")) || + url.protocol() == QLatin1String("file")) { KConfig config(QLatin1String("kfmclientrc")); KConfigGroup generalGroup(&config, "General"); @@ -561,6 +562,8 @@ { // compatibility with KDE 3 and xdg-open QStringList kioclientArgs; + if (!s_interactive) + kioclientArgs << QLatin1String("--noninteractive"); kioclientArgs << "exec" << args->arg(1); if (argc == 3) kioclientArgs << args->arg(2); diff -Nru kde-baseapps-4.7.95/konqueror/settings/ebrowsing/ebrowsing.desktop kde-baseapps-4.7.97/konqueror/settings/ebrowsing/ebrowsing.desktop --- kde-baseapps-4.7.95/konqueror/settings/ebrowsing/ebrowsing.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/ebrowsing/ebrowsing.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -158,6 +158,7 @@ Comment[ml]=മെച്ചപ്പെട്ട ബ്രൌസിങ്ങ് ക്രമീകരിയ്ക്കുക Comment[mr]=प्रगत ब्राउजिंग संयोजीत करा Comment[ms]=Konfigur pelayaran lanjutan +Comment[nb]=Sett opp utvidet surfing Comment[nds]=Söökafkörten för't gaue Söken in't Nett inrichten Comment[ne]=बढाइएको ब्राउजिङ कन्फिगर गर्नुहोस् Comment[nl]=Hier kunt u het geavanceerd browsen instellen @@ -198,9 +199,14 @@ X-KDE-Keywords[ca]=Navegació millorada,navegació,WWW,Internet,Filtres d'Internet,Xarxa,Motors de cerca,Dreceres X-KDE-Keywords[da]=Forbedret browsing,browsing,www,internet,internetfiltre,netværk,søgemaskiner,genveje X-KDE-Keywords[de]=Browsen,Erweitertes Browsen,WWW,Internet,Stichwörter,Filter,Netz,Internetfilter,Suchmaschinen,Kurzbefehle,Netzwerk +X-KDE-Keywords[es]=Navegación mejorada,Navegación,WWW,Internet,Filtros de Internet,Red,Motores de búsqueda,Accesos rápidos +X-KDE-Keywords[et]=Täiustatud sirvimine,Sirvimine,WWW,Internet,Internetifiltrid,Võrk,Otsimootorid,Kiirkorraldused X-KDE-Keywords[fi]=selaimen lisäasetukset,edistynyt selailu,selailu,selaus,WWW,Internet,Internet-suotimet,verkko,hakukoneet,pikavalinnat +X-KDE-Keywords[ga]=Brabhsáil Fheabhsaithe,Brabhsáil,WWW,Gréasán,Idirlíon,Scagairí Idirlín,Líonra,Innill Chuardaigh,Aicearraí X-KDE-Keywords[hu]=Fejlesztett böngészés,Böngészés,WWW,Internet,Internetes szűrők,Hálózat,Keresőmotorok,Gyorsbillentyűk +X-KDE-Keywords[ia]=Navigation avantiate, Navigation,WWW,Internet,Filtros de Internet,Rete, Motores de cerca,Vias breve X-KDE-Keywords[kk]=Enhanced Browsing,Browsing,WWW,Internet,Internet Filters,Network,Search Engines,Shortcuts +X-KDE-Keywords[km]=ការ​រកមើល​ដែល​បាន​ធ្វើ​ឲ្យ​ប្រសើរ ការ​រកមើល WWW អ៊ីនធឺណិត តម្រង​អ៊ីនធឺណិត បណ្ដាញ ម៉ាស៊ីន​ស្វែងរក ផ្លូវកាត់ X-KDE-Keywords[nb]=Utvidet surfing,Surfing,WWW,Internett,Internettfiltre,Nettverk,Søkemotorer,Snarveier X-KDE-Keywords[nl]=Verbeterd browsen,browsen,www,internet,internetfilters,netwerk,zoekmachines,sneltoetsen X-KDE-Keywords[pt]=Navegação Melhorada,Navegação,WWW,Internet,Filtros da Internet,Rede,Motores de Busca,Atalhos diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/bookmarks.desktop kde-baseapps-4.7.97/konqueror/settings/kio/bookmarks.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/bookmarks.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/bookmarks.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -185,10 +185,14 @@ X-KDE-Keywords[cs]=Záložky X-KDE-Keywords[da]=Bogmærker X-KDE-Keywords[de]=Lesezeichen +X-KDE-Keywords[es]=Marcadores +X-KDE-Keywords[et]=Järjehoidjad X-KDE-Keywords[fi]=Kirjanmerkit +X-KDE-Keywords[ga]=Leabharmharcanna X-KDE-Keywords[hu]=Könyvjelzők X-KDE-Keywords[ia]=Marcatores de libro X-KDE-Keywords[kk]=Бетбелгі +X-KDE-Keywords[km]=ចំណាំ X-KDE-Keywords[nb]=Bokmerker X-KDE-Keywords[nds]=Leestekens X-KDE-Keywords[nl]=Bladwijzers diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/cache.desktop kde-baseapps-4.7.97/konqueror/settings/kio/cache.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/cache.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/cache.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -199,9 +199,14 @@ X-KDE-Keywords=Cache,History,Browsing History,Ports,Size X-KDE-Keywords[ca]=Memòria cau,Historial,Historial del navegador,Ports,Mida X-KDE-Keywords[da]=Cache,historik,browserhistorik,porte,størrelse +X-KDE-Keywords[es]=Caché,Historial,Ver historial,Puertos,Tamaño +X-KDE-Keywords[et]=Puhver,Ajalugu,Sirvimisajalugu,Pordid,Suurus X-KDE-Keywords[fi]=Välimuisti,Historia,Selaushistoria,Portit,Koko +X-KDE-Keywords[ga]=Taisce,Stair,Stair Brabhsála,Poirt,Méid X-KDE-Keywords[hu]=Gyorsítótár,Előzmények,Böngészési előzmények,Portok,Méret +X-KDE-Keywords[ia]=Cache,Historia,Historia de navigation,Portos,Grandor X-KDE-Keywords[kk]=Cache,History,Browsing History,Ports,Size +X-KDE-Keywords[km]=ឃ្លាំង​សម្ងាត់ ប្រវត្តិ ប្រវត្តិ​ការ​រកមើល ច្រក ទំហំ X-KDE-Keywords[nb]=Mellomlager,Historie,Nettleserhistorie,Porter,Størrelse X-KDE-Keywords[nl]=Cache,geschiedenis,browse geschiedenis,poorten,grootte X-KDE-Keywords[nn]=hurtiglager,historikk,surfehistorikk,portar,storleik diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/cookies.desktop kde-baseapps-4.7.97/konqueror/settings/kio/cookies.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/cookies.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/cookies.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -196,9 +196,14 @@ X-KDE-Keywords[ca]=Galetes,Navegació,Internet,WWW,Xarxa,Polítiques,Dominis X-KDE-Keywords[da]=Cookies,browsing,internet,www,netværk,politik,domæner X-KDE-Keywords[de]=Cookies,Durchsuchen,Browsen,Surfen,Internet,WWW,Netzwerk,Regelungen,Domains +X-KDE-Keywords[es]=Cookies,Navegación,Internet,WWW,Red,Política,Dominios +X-KDE-Keywords[et]=Küpsised,Sirvimine,Internet,WWW,Võrk,Reeglid,Domeenid X-KDE-Keywords[fi]=Evästeet,Selaus,Selailu,Internet,WWW,Verkko,Käytäntö,Käytänne,Verkkoalueet +X-KDE-Keywords[ga]=Fianáin,Brabhsáil,Idirlíon,WWW,Gréasán,Líonra,Polasaí,Fearainn X-KDE-Keywords[hu]=Sütik,Böngészés,Internet,WWW,Hálózat,Házirend,Tartományok +X-KDE-Keywords[ia]=Cookies,Navigation,Internet,WWW,Rete,Politica,Dominios X-KDE-Keywords[kk]=Cookies,Browsing,Internet,WWW,Network,Policy,Domains +X-KDE-Keywords[km]=ខូគី ការ​រកមើល អ៊ីនធឺណិត WWW បណ្ដាញ គោលនយោបាយ ដែន X-KDE-Keywords[nb]=Infokapsler,Nettlesing,Internett,WWW.Nettverk,Praksis,Domener X-KDE-Keywords[nl]=Cookies,browsen,internet,www,netwerk,beleid,domeinen X-KDE-Keywords[nn]=informasjonskapslar,surfing,Internett,WWW,nettverk,regler,domener diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/netpref.desktop kde-baseapps-4.7.97/konqueror/settings/kio/netpref.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/netpref.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/netpref.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -197,9 +197,13 @@ X-KDE-Keywords=timeout,iopref,netpref,network preferences,ftp X-KDE-Keywords[ca]=temps d'espera,iopref,netpref,preferències de xarxa,ftp X-KDE-Keywords[da]=tidsudløb,timeout,iopref,netpref,netværksindstillinger,ftp +X-KDE-Keywords[et]=aegumine,iopref,netpref,võrk,eelistused,ftp X-KDE-Keywords[fi]=aikakatkaisu,iopref,netpref,verkkoasetukset,ftp +X-KDE-Keywords[ga]=timeout,iopref,netpref,sainroghanna líonra,ftp X-KDE-Keywords[hu]=időtúllépés,iopref,netpref,hálózati beállítások,ftp +X-KDE-Keywords[ia]=expiration,iopref,prefderete,rete,preferentias,ftp X-KDE-Keywords[kk]=timeout,iopref,netpref,network preferences,ftp +X-KDE-Keywords[km]=អស់​ពេល iopref netpref ចំណូលចិត្ត​បណ្ដាញ ftp X-KDE-Keywords[nb]=tidsavbrudd,iopref,netpref,nettverksoppsett,ftp X-KDE-Keywords[nl]=timeout,iopref,netpref,netwerk voorkeuren,ftp X-KDE-Keywords[pt]=tempo-limite,iopref,netpref,preferências de rede,ftp diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/proxy.desktop kde-baseapps-4.7.97/konqueror/settings/kio/proxy.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/proxy.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/proxy.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -203,9 +203,14 @@ X-KDE-Keywords[ca]=Intermediari,Servidor intermediari,Tallafocs,Squid,intermediari X-KDE-Keywords[da]=Proxy,Proxy-server,Firewall,Squid,proxy X-KDE-Keywords[de]=Proxy,Proxy-Server,Firewall,Squid,proxy +X-KDE-Keywords[es]=Proxy,Servidor proxy,Cortafuegos,Squid,proxy +X-KDE-Keywords[et]=Puhver,Puhverserver,Tulemüür,Squid,puhverserver X-KDE-Keywords[fi]=Proxy,Välitys,Välityspalvelin,Palomuuri,Squid +X-KDE-Keywords[ga]=Seachfhreastalaí,Balla Dóiteáin,Squid X-KDE-Keywords[hu]=Proxy,Proxy kiszolgáló,Tűzfal,Squid,proxy +X-KDE-Keywords[ia]=Proxy,Servitor de Proxy,Talia Foco,Squid,proxy X-KDE-Keywords[kk]=Proxy,Proxy server,Firewall,Squid,proxy +X-KDE-Keywords[km]=ប្រូកស៊ី ម៉ាស៊ីន​បម្រើ​ប្រូកស៊ី ជញ្ជាំង​ភ្លើង Squid ប្រូកស៊ី X-KDE-Keywords[nb]=Mellomtjener,Brannmur,Squid,mellomtjener X-KDE-Keywords[nl]=Proxy,proxyserver,firewall,squid,proxy X-KDE-Keywords[pt]=Proxy,servidor proxy,Firewall,Squid,proxy diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/smb.desktop kde-baseapps-4.7.97/konqueror/settings/kio/smb.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/smb.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/smb.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -195,9 +195,13 @@ X-KDE-Keywords[ca]=SMB,SAMBA,Client SMB client,Xarxa Windows,LAN,Xarxa,veïnat,Servidor,Difusió,WINS,Compartició,Connexió,Contrasenyes X-KDE-Keywords[da]=SMB,SAMBA,SMB-klient,Windows netværk,LAN,netværk,nabolag,Server,Broadcast,WINS,Share,Login,adgangskoder X-KDE-Keywords[de]=SMB,Samba,SMB-Client,Windows-Netzwerk,LAN,Netzwerk,Netzumgebung,Umgebung,Server,Broadcast,WINS,Freigabe,Anmeldung,Passwörter +X-KDE-Keywords[et]=SMB,SAMBA,SMB klient,Windowsi võrk,LAN,Võrk,naabrus,Server,Leviedastus,Broadcast,WINS,Jagatud ressurss,Sisselogimine,Paroolid X-KDE-Keywords[fi]=SMB,SAMBA,SMB client,SMB-asiakas,SMB-ohjelma,Windows-verkko,LAN,Verkko,ympäristö,Palvelin,Broadcast,Yleislähetys,WINS,Jako,Kirjautuminen,Salasanat +X-KDE-Keywords[ga]=SMB,SAMBA,cliant SMB,líonra Windows,LAN,Líonra,comharsanacht,Freastalaí,Craoladh,WINS,Comhroinn,Logáil Isteach,Focail Fhaire X-KDE-Keywords[hu]=SMB,SAMBA,SMB kliens,Windows hálózat,LAN,Hálózat,szomszéd,Kiszolgáló,Broadcast,WINS,Megosztás,Bejelentkezés,Jelszavak +X-KDE-Keywords[ia]=SMB,SAMBA,Cliente SMB,rete de Windows,LAN,rete,vicinitate,Servitor,Transmission,WINS,Compartite,Authentication,Contrasignos X-KDE-Keywords[kk]=SMB,SAMBA,SMB client,Windows network,LAN,Network,neighborhood,Server,Broadcast,WINS,Share,Login,Passwords +X-KDE-Keywords[km]=SMB SAMBA ម៉ាស៊ីន​ភ្ញៀវ SMB បណ្ដាញ​វីនដូ LAN បណ្ដាញ ក្បែរៗ ម៉ាស៊ីន​បម្រើ ផ្សាយ WINS ចែករំលែក ចូល ពាក្យសម្ងាត់ X-KDE-Keywords[nb]=SMB,SAMBA,SMB-klient,Windows-nettverk,LAN,Nettverk,nabolag,Tjener,Kringkasting,WINS,Ressurs,Login,Passord X-KDE-Keywords[nl]=SMB,SAMBA,SMB-client,Windows-netwerk,LAN,netwerk,nabije omgeving,server,broadcast,WINS,delen,aanmelden,wachtwoorden X-KDE-Keywords[pt]=SMB,SAMBA,cliente de SMB,rede Windows,LAN,rede,vizinhança,servidor,difusão,WINS,partilha,conta,senhas diff -Nru kde-baseapps-4.7.95/konqueror/settings/kio/useragent.desktop kde-baseapps-4.7.97/konqueror/settings/kio/useragent.desktop --- kde-baseapps-4.7.95/konqueror/settings/kio/useragent.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/kio/useragent.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -193,9 +193,13 @@ X-KDE-Keywords=User Agent,Browser,Internet,WWW,Network,agent,bindings,server,login X-KDE-Keywords[ca]=Agent d'usuari,Navagador,Internet,WWW,Xarxa,agent,lligams,servidor,connexió X-KDE-Keywords[da]=User agent,brugeragent,internet,www,netværk,agent,bindinger,server,login +X-KDE-Keywords[et]=Identifikaator,Brauser,Internet,WWW,Võrk,identifikaator,seosed,server,sisselogimine X-KDE-Keywords[fi]=User Agent,Selaimen tunnistetiedot,Selaimen tunnistus,Selain,Internet,WWW,Verkko,agent,palvelin,kirjautuminen +X-KDE-Keywords[ga]=UserAgent,gníomhaire úsáideora,Brabhsálaí,Idirlíon,WWW,Líonra,Gréasán,gníomhaire,ceangail,freastalaí,logáil isteach X-KDE-Keywords[hu]=Böngészőazonosító,Böngésző,Internet,WWW,Hálózat,azonosító,kötések,kiszolgáló,bejelentkezés +X-KDE-Keywords[ia]=Agente usator,Navigator,Internet,WWW,Rete.agente,ligamines,servitor,authentication X-KDE-Keywords[kk]=User Agent,Browser,Internet,WWW,Network,agent,bindings,server,login +X-KDE-Keywords[km]=ភ្នាក់ងារ​អ្នកប្រើ កម្មវិធី​រុករក អ៊ីនធឺណិត WWW បណ្ដាញ ភ្នាក់ងារ ការ​ចង ម៉ាស៊ីន​បម្រើ ចូល X-KDE-Keywords[nb]=Brukeragent,Nettleser,Internett,WWW,Nettverk,agent,bindinger,tjener,login X-KDE-Keywords[nl]=Gebruikersagent,browser,internet,www,netwerk,agent,bindings,server,aanmelden X-KDE-Keywords[pt]=Agente do Utilizador,Navegador,Internet,WWW,Rede,agente,interfaces,servidor,conta diff -Nru kde-baseapps-4.7.95/konqueror/settings/konq/fileappearance.desktop kde-baseapps-4.7.97/konqueror/settings/konq/fileappearance.desktop --- kde-baseapps-4.7.95/konqueror/settings/konq/fileappearance.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konq/fileappearance.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -199,9 +199,13 @@ X-KDE-Keywords[ca]=konqueror,gestor de fitxers,ajust de paraules,ajust,subratllat,pantalla,mida de fitxer,bytes,tipus de lletra,color X-KDE-Keywords[da]=konqueror,filhåndtering,ordombrydning,ombrydning,understregning,visning,filstørrelse,bytes,font,skrifttype,farve X-KDE-Keywords[de]=Konqueror,Dateimanager,Zeilenumbruch,Textumbruch,Unterstreichen,Darstellung,Dateigröße,Schrift,Farbe,Byte +X-KDE-Keywords[et]=konqueror,failihaldur,reamurdmine,allajoonimine,kuvamine,failisuurus,baidid,font,värv X-KDE-Keywords[fi]=konqueror,tiedostonhallinta,rivitys,alleviivaus,näkymä,näyttö,tiedostokoko,tavuja,tavut,kirjasin,fontti,väri +X-KDE-Keywords[ga]=konqueror,bainisteoir comhad,timfhilleadh focal,timfhilleadh,líne faoi,scáileán,méid comhaid,bearta,cló,clófhoireann,dath X-KDE-Keywords[hu]=konqueror,fájlkezelő,szótördelés,tördelés,aláhúzás,megjelenítés,fájlméret,bájtok,betűtípus,szín,szín +X-KDE-Keywords[ia]=konqueror,gerente de file, torno de parolas, torno,sublinea,monstra,grandor de file,bytes,font,color,color X-KDE-Keywords[kk]=konqueror,filemanager,word wrap,wrap,underline,display,filesize,bytes,font,color,colour +X-KDE-Keywords[km]=konqueror កម្មវិធី​គ្រប់គ្រង​ឯកសារ ការ​រុំ​ពាក្យ រុំ គូស​បន្ទាត់​ក្រោម ទិដ្ឋភាព ទំហំ​ឯកសារ បៃ ពុម្ពអក្សរ ពណ៌ ពណ៌ X-KDE-Keywords[nb]=konqueror,filbehandler,ordbryting,bryting,understrek,visning,filstørrelse,byte,skrift,farge X-KDE-Keywords[nl]=konqueror,bestandsbeheerder,regelafbreken,afbreken,onderstrepen,tonen,bestandsgrootte,bytes,lettertype,kleur,kleur X-KDE-Keywords[pt]=konqueror,gestor de ficheiros,mudança de linha,mudança,sublinhado,mostrar,tamanho do ficheiro,bytes,tipo de letra,cor diff -Nru kde-baseapps-4.7.95/konqueror/settings/konq/filebehavior.desktop kde-baseapps-4.7.97/konqueror/settings/konq/filebehavior.desktop --- kde-baseapps-4.7.95/konqueror/settings/konq/filebehavior.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konq/filebehavior.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -198,9 +198,13 @@ X-KDE-Keywords=konqueror,filemanager,kfm,tips,file tips,separate window,spawn windows,behavior,behaviour,memory usage,Home URL,network operations,progress dialog,trash can,delete,confirmation X-KDE-Keywords[ca]=konqueror,gestor de fitxers,kfm,consells,consells de fitxers,finestres separades,finestres engendrades,comportament,ús de memòria,URL inicial,operacions de xarxa,diàleg de progrés,paperera,esborrat,confirmació X-KDE-Keywords[da]=konqueror,filhåndtering,kfm,tips,filtips,separat vindue,affød vinduer,opførsel,hukommelsesforbrug,startside,netværksoperationer,fremgangsdialog,affald kan,slette,bekræftelse +X-KDE-Keywords[et]=konqueror,failihaldur,kfm,vihjed,soovitused,eraldi aken,aknad,käitumine,mälukasutus,Kodu,URL,võrguoperatsioonid,edenemine,dialoog,prügikast,kustutamine,kinnitus X-KDE-Keywords[fi]=konqueror,tiedostonhallinta,kfm,vinkit,tiedostovinkit,omat ikkunat,erilliset ikkunat,käyttäytyminen,muistinkäyttö,kotiosoite,verkkotoiminnot,edistymisikkuna,roskakori,poista,varmistus,varmista +X-KDE-Keywords[ga]=konqueror,bainisteoir comhad,kfm,leideanna,leideanna comhaid,fuinneog ar leith,sceith fuinneoga,oibriú,úsáid chuimhne,URL Baile,oibríochtaí líonra,dialóg dul chun cinn,bruscar,scrios,deimhniú,dearbhú X-KDE-Keywords[hu]=konqueror,fájlkezelő,kfm,tippek,fájltippek,külön ablak,ablak létrehozása,működés,működés,memóriahasználat,kezdőlap,hálózati műveletek,folyamatablak,kuka,törlés,megerősítés +X-KDE-Keywords[ia]=konqueror,gerente de file,kfm,suggestiones,fenestra separate,fenestras generate,comportamento,comportamento,uso de memoria.URL domo,operationes de rete,dialogo de progression. corbe,dele,confirmation X-KDE-Keywords[kk]=konqueror,filemanager,kfm,tips,file tips,separate window,spawn windows,behavior,behaviour,memory usage,Home URL,network operations,progress dialog,trash can,delete,confirmation +X-KDE-Keywords[km]=konqueror កម្មវិធី​គ្រប់គ្រង​ឯកសារ kfm ព័ត៌មាន​ជំនួយ ព័ត៌មាន​ជំនួយ​ពី​ឯកសារ ញែក​បង្អួច បង្កើត​បង្អួច ឥរិយាបថ ឥរិយាបថ ការ​ប្រើប្រាស់​អង្គ​ចងចាំ URL ដើម ប្រតិបត្តិការ​បណ្ដាញ ប្រអប់​វឌ្ឍនភាព ធុង​សំរាម លុប ការ​អះអាង X-KDE-Keywords[nb]=konqueror,filbehandler,kfm,tips,filtips,separat vindu,lag vinduer,oppførsel,minnebruk,hjemme-url,nettverkshandlinger,framdriftsdialog,papirkurv,slett,bekreftelse X-KDE-Keywords[nl]=konqueror,bestandsbeheerder,kfm,tips,bestandstips,gescheiden venster,vensters afsplitsen,gedrag,geheugengebruik,start-url,netwerkbesturing,voortgangsdialoog,prullenbak,verwijderen,bevestiging X-KDE-Keywords[pt]=konqueror,gestor de ficheiros,kfm,dicas,dicas do ficheiro,janela separada,janelas recriadas,comportamento,utilização de memória,URL inicial,operações de rede,janela de evolução,caixote do lixo,remoção,confirmação diff -Nru kde-baseapps-4.7.95/konqueror/settings/konq/webappearance.desktop kde-baseapps-4.7.97/konqueror/settings/konq/webappearance.desktop --- kde-baseapps-4.7.95/konqueror/settings/konq/webappearance.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konq/webappearance.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -200,9 +200,13 @@ X-KDE-Keywords[ca]=konqueror,gestor de fitxers,ajust de paraules,ajust,subratllat,pantalla,mida de fitxer,bytes,tipus de lletra,color X-KDE-Keywords[da]=konqueror,filhåndtering,ordombrydning,ombrydning,understregning,visning,filstørrelse,bytes,font,skrifttype,farve X-KDE-Keywords[de]=Konqueror,Dateimanager,Zeilenumbruch,Textumbruch,Unterstreichen,Darstellung,Dateigröße,Schrift,Farbe,Byte +X-KDE-Keywords[et]=konqueror,failihaldur,reamurdmine,allajoonimine,kuvamine,failisuurus,baidid,font,värv X-KDE-Keywords[fi]=konqueror,tiedostonhallinta,rivitys,alleviivaus,näkymä,näyttö,tiedostokoko,tavuja,tavut,kirjasin,fontti,väri +X-KDE-Keywords[ga]=konqueror,bainisteoir comhad,timfhilleadh focal,timfhilleadh,líne faoi,scáileán,méid comhaid,bearta,cló,clófhoireann,dath X-KDE-Keywords[hu]=konqueror,fájlkezelő,szótördelés,tördelés,aláhúzás,megjelenítés,fájlméret,bájtok,betűtípus,szín,szín +X-KDE-Keywords[ia]=konqueror,gerente de file, torno de parolas, torno,sublinea,monstra,grandor de file,bytes,font,color,color X-KDE-Keywords[kk]=konqueror,filemanager,word wrap,wrap,underline,display,filesize,bytes,font,color,colour +X-KDE-Keywords[km]=konqueror កម្មវិធី​គ្រប់គ្រង​ឯកសារ ការ​រុំ​ពាក្យ រុំ គូស​បន្ទាត់​ក្រោម ទិដ្ឋភាព ទំហំ​ឯកសារ បៃ ពុម្ពអក្សរ ពណ៌ ពណ៌ X-KDE-Keywords[nb]=konqueror,filbehandler,ordbryting,bryting,understrek,visning,filstørrelse,byte,skrift,farge X-KDE-Keywords[nl]=konqueror,bestandsbeheerder,regelafbreken,afbreken,onderstrepen,tonen,bestandsgrootte,bytes,lettertype,kleur,kleur X-KDE-Keywords[pt]=konqueror,gestor de ficheiros,mudança de linha,mudança,sublinhado,mostrar,tamanho do ficheiro,bytes,tipo de letra,cor diff -Nru kde-baseapps-4.7.95/konqueror/settings/konq/webbehavior.desktop kde-baseapps-4.7.97/konqueror/settings/konq/webbehavior.desktop --- kde-baseapps-4.7.95/konqueror/settings/konq/webbehavior.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konq/webbehavior.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -199,9 +199,13 @@ X-KDE-Keywords=konqueror,filemanager,kfm,tips,file tips,separate window,spawn windows,behavior,behaviour,memory usage,Home URL, X-KDE-Keywords[ca]=konqueror,gestor de fitxers,kfm,consells,consells de fitxers,finestres separades,finestres engendrades,comportament,ús de memòria,URL inicial X-KDE-Keywords[da]=konqueror,filhåndtering,kfm,tips,filtips,separat vindue,affød vinduer,opførsel,hukommelsesforbrug,startside, +X-KDE-Keywords[et]=konqueror,failihaldur,kfm,vihjed,soovitused,eraldi aken,aknad,käitumine,mälukasutus,Kodu,URL X-KDE-Keywords[fi]=konqueror,tiedostonhallinta,kfm,vinkit,tiedostovinkit,omat ikkunat,erilliset ikkunat,käyttäytyminen,muistinkäyttö,kotiosoite, +X-KDE-Keywords[ga]=konqueror,bainisteoir comhad,kfm,leideanna,leideanna comhaid,fuinneog ar leith,sceith fuinneoga,oibriú,úsáid chuimhne,URL Baile, X-KDE-Keywords[hu]=konqueror,fájlkezelő,kfm,tippek,fájltippek,külön ablak,ablak létrehozása,működés,működés,memóriahasználat,kezdőlap, +X-KDE-Keywords[ia]=konqueror,gerente de file,kfm,suggestiones,fenestra separate,fenestras generate,comportamento,comportamento,uso de memoria,URL Domo X-KDE-Keywords[kk]=konqueror,filemanager,kfm,tips,file tips,separate window,spawn windows,behavior,behaviour,memory usage,Home URL, +X-KDE-Keywords[km]=konqueror កម្មវិធី​គ្រប់គ្រង​ឯកសារ kfm ព័ត៌មាន​ជំនួយ ព័ត៌មាន​ជំនួយ​ឯកសារ ញែក​បង្អួច បង្កើត​បង្អួច ឥរិយាបថ ឥរិយាបថ ការ​ប្រើប្រាស់​អង្គ​ចងចាំ URL ដើម X-KDE-Keywords[nb]=konqueror,filbehandler,kfm,tips,filtips,separat vindu,lag vinduer,oppførsel,minnebruk,hjemme-url, X-KDE-Keywords[nl]=konqueror,bestandsbeheerder,kfm,tips,bestandstips,gescheiden venster,vensters afsplitsen,gedrag,geheugengebruik,start-url X-KDE-Keywords[pt]=konqueror,gestor de ficheiros,kfm,dicas,dicas de ficheiros,janela separada,janelas recriadas,comportamento,utilização de memória,URL inicial, diff -Nru kde-baseapps-4.7.95/konqueror/settings/konqhtml/css/kcmcss.desktop kde-baseapps-4.7.97/konqueror/settings/konqhtml/css/kcmcss.desktop --- kde-baseapps-4.7.95/konqueror/settings/konqhtml/css/kcmcss.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konqhtml/css/kcmcss.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -198,9 +198,14 @@ X-KDE-Keywords[ca]=CSS,HTML,estil,fulles d'estil,accessibilitat X-KDE-Keywords[da]=CSS,HTML,stil,stylesheet,stilark,tilgængelighed,accessibility X-KDE-Keywords[de]=CSS,HTML,Stylesheet,Stilvorlagen,Zugangshilfen +X-KDE-Keywords[es]=CSS,HTML,estilo,hoja de estilo,accesibilidad +X-KDE-Keywords[et]=CSS,HTML,stiil,laaditabel,hõlbustus X-KDE-Keywords[fi]=CSS,HTML,style,tyyli,stylesheet,tyylisivu,esteettömyys +X-KDE-Keywords[ga]=CSS,HTML,stíl,stílbhileog,inrochtaineacht X-KDE-Keywords[hu]=CSS,HTML,stílus,stíluslap,akadálymentesítés +X-KDE-Keywords[ia]=CSS,HTML,stilo,folio de stilo,accessibilitate X-KDE-Keywords[kk]=CSS,HTML,style,stylesheet,accessibility +X-KDE-Keywords[km]=CSS HTML រចនាប័ទ្ម សន្លឹក​រចនាប័ទ្ម មធ្យោបាយ​ងាយស្រួល X-KDE-Keywords[nb]=CSS,HTML,stil,stilsett,tilgjengelighet X-KDE-Keywords[nds]=CSS,HTML,Stil,Stilvörlaag,Toganghülp X-KDE-Keywords[nl]=CSS,HTML,stijl,stijlblad,toegankelijkheid diff -Nru kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_appearance.desktop kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_appearance.desktop --- kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_appearance.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_appearance.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -179,9 +179,14 @@ X-KDE-Keywords[ca]=konqueror,kfm,navegador,html,web,www,tipus de lletres,joc de caràcters,jocs de caràcters,codificació X-KDE-Keywords[da]=konqueror,kfm,browser,html,web,www,fonts,tegnsæt,indkodning X-KDE-Keywords[de]=Konqueror,kfm,Browser,HTML,Web,WWW,Schriften,Zeichensätze,Kodierung +X-KDE-Keywords[es]=konqueror,kfm,navegador,html,web,www,tipos de letra,juegos de caracteres,juegos de caracteres,codificación +X-KDE-Keywords[et]=konqueror,kfm,brauser,html,veeb,www,fondid,kooditabel,kodeering X-KDE-Keywords[fi]=konqueror,kfm,selain,html,web,www,kirjasimet,fontit,merkistöt,merkistö,koodaus +X-KDE-Keywords[ga]=konqueror,kfm,brabhsálaí,html,gréasán,www,clónna,clófhoirne,tacair charachtair,ionchódú X-KDE-Keywords[hu]=konqueror,kfm,böngésző,html,web,www,betűtípusok,karakterkészletek,karakterkészletek,kódolás +X-KDE-Keywords[ia]=konqueror,kfm,navigator,html,web,fonts,insimul de chars,insimules de character,codification X-KDE-Keywords[kk]=konqueror,kfm,browser,html,web,www,fonts,charsets,character sets,encoding +X-KDE-Keywords[km]=konqueror kfm កម្មវិធី​រុករក html បណ្ដាញ www ពុម្ពអក្សរ សំណុំ​តួអក្សរ សំណុំ​តួអក្សរ ការ​អ៊ិនកូដ X-KDE-Keywords[nb]=konqueror,kfm,nettleser,html,vev,www,skrifter,tegnsett,tegnkoding X-KDE-Keywords[nl]=konqueror,kfm,browser,html,web,www,lettertypen,tekensets,codering X-KDE-Keywords[pt]=konqueror,kfm,navegador,HTML,Web,WWW,tipos de letra,codificações,codificações de caracteres,codificação diff -Nru kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_behavior.desktop kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_behavior.desktop --- kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_behavior.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_behavior.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -196,9 +196,14 @@ X-KDE-Keywords[ca]=konqueror,kfm,navegador,html,web,www,tipus de lletres,colors,java,javascript,cursor,enllaços,imatges,joc de caràcters,joc de caràcters,codificació X-KDE-Keywords[da]=konqueror,kfm,browser,html,web,www,fonts,skrifttyper,farver,java,javascript,cursor,markør,links,billeder,tegnsæt,indkodning X-KDE-Keywords[de]=Konqueror,Kfm,Browser,HTML,Web,WWW,Schriften,Farben,Java,JavaScript,Cursor,Links,Verknüpfungen,Bilder,Zeichensätze,Kodierung +X-KDE-Keywords[es]=konqueror,kfm,navegador,html,web,www,tipos de letra,colores,colores,java,javascript,cursor,enlaces,imágenes,juegos de caracteres,juegos de caracteres,codificación +X-KDE-Keywords[et]=konqueror,kfm,brauser,html,veeb,www,fondid,värvid,java,javascript,lingid,pildid,kooditabel,kodeering X-KDE-Keywords[fi]=konqueror,kfm,selain,html,web,www,kirjasimet,fontit,värit,java,javascript,osoitin,linkit,kuvat,merkistöt,merkistö,koodaus +X-KDE-Keywords[ga]=konqueror,kfm,brabhsálaí,html,gréasán,www,clófhoirne,clónna,dathanna,java,javascript,cúrsóir,naisc,nascanna,íomhánna,tacair charachtair,ionchódú X-KDE-Keywords[hu]=konqueror,kfm,böngésző,html,web,www,betűtípusok,színek,színek,java,javascript,kurzor,hivatkozások,képek,karakterkódolások,karakterkódolások,kódolás +X-KDE-Keywords[ia]=konqueror,kfm,navigator,html,web,www,fonts,colores,colores,java,javascript,cursor,ligamines,images,insimules de character,insimules de character,codification X-KDE-Keywords[kk]=konqueror,kfm,browser,html,web,www,fonts,colours,colors,java,javascript,cursor,links,images,charsets,character sets,encoding +X-KDE-Keywords[km]=konqueror kfm កម្មវិធី​រុករក html បណ្ដាញ www ពុម្ពអក្សរ ពណ៌ ពណ៌ java javascript ទស្សន៍ទ្រនិច តំណ រូបភាព សំណុំ​តួអក្សរ សំណុំ​តួអក្សរ ការ​អ៊ិនកូដ X-KDE-Keywords[nb]=konqueror,kfm,nettleser,html,vev,www,skrifter,farger,java,javascript,markør,lenker,bilder,tegnsett,tegnkoding X-KDE-Keywords[nl]=konqueror,kfm,browser,html,web,www,lettertypen,tekensets,kleuren,java,javascript,cursor,koppelingen,tekensets,codering X-KDE-Keywords[pt]=konqueror,kfm,navegador,HTML,Web,WWW,cores,Java,Javascript,cursor,ligações,imagens,codificações,codificações de caracteres,codificação diff -Nru kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_general.desktop kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_general.desktop --- kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_general.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_general.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -165,10 +165,14 @@ X-KDE-Keywords[cs]=konqueror,karty X-KDE-Keywords[da]=konqueror,faneblade X-KDE-Keywords[de]=Konqueror,Unterfenster +X-KDE-Keywords[es]=konqueror,pestañas +X-KDE-Keywords[et]=konqueror,kaardid X-KDE-Keywords[fi]=konqueror,välilehdet +X-KDE-Keywords[ga]=Konqueror,cluaisíní X-KDE-Keywords[hu]=konqueror,lapok X-KDE-Keywords[ia]=konqueror,schedas X-KDE-Keywords[kk]=konqueror,tabs +X-KDE-Keywords[km]=konqueror ផ្ទាំង X-KDE-Keywords[nb]=konqueror,faner X-KDE-Keywords[nl]=konqueror,tabbladen X-KDE-Keywords[pa]=ਕੋਨਕਿਉਰੋਰ,ਟੈਬ diff -Nru kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_java_js.desktop kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_java_js.desktop --- kde-baseapps-4.7.95/konqueror/settings/konqhtml/khtml_java_js.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/konqhtml/khtml_java_js.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -198,9 +198,14 @@ X-KDE-Keywords[ca]=konqueror,kfm,navegador,html,web,www,java,javascript X-KDE-Keywords[da]=konqueror,kfm,browser,html,web,www,java,javascript X-KDE-Keywords[de]=Konqueror,kfm,Browser,HTML,Web,WWW,Java,JavaScript +X-KDE-Keywords[es]=konqueror,kfm,navegador,html,web,www,java,javascript +X-KDE-Keywords[et]=konqueror,kfm,brauser,html,veeb,www,java,javascript X-KDE-Keywords[fi]=konqueror,kfm,selain,html,web,www,java,javascript +X-KDE-Keywords[ga]=konqueror,kfm,brabhsálaí,html,gréasán,www,java,javascript X-KDE-Keywords[hu]=konqueror,kfm,böngésző,html,web,www,java,javascript +X-KDE-Keywords[ia]=konqueror,kfm,navigator,html,web,java,javascript X-KDE-Keywords[kk]=konqueror,kfm,browser,html,web,www,java,javascript +X-KDE-Keywords[km]=konqueror kfm កម្មវិធី​រុករក html បណ្ដាញ www java javascript X-KDE-Keywords[nb]=konqueror,kfm,nettleser,html,vev,www,java,javascript X-KDE-Keywords[nl]=konqueror,kfm,browser,html,web,www,java,javascript X-KDE-Keywords[pt]=konqueror,kfm,navegador,HTML,Web,WWW,Java,Javascript diff -Nru kde-baseapps-4.7.95/konqueror/settings/performance/kcmkonqyperformance.desktop kde-baseapps-4.7.97/konqueror/settings/performance/kcmkonqyperformance.desktop --- kde-baseapps-4.7.95/konqueror/settings/performance/kcmkonqyperformance.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/performance/kcmkonqyperformance.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -194,10 +194,14 @@ X-KDE-Keywords=konqueror,reuse,preloading X-KDE-Keywords[ca]=konqueror,tornar a usar,precàrrega X-KDE-Keywords[da]=konqueror,genbrug,preloading,forudindlæsning +X-KDE-Keywords[es]=konqueror,reutilización,precarga +X-KDE-Keywords[et]=konqueror,taaskasutus,eellaadimine X-KDE-Keywords[fi]=konqueror,uudelleenkäyttö,esilataus +X-KDE-Keywords[ga]=konqueror,athúsáid,réamhluchtú X-KDE-Keywords[hu]=konqueror,újrafelhasználás,gyorsbetöltés X-KDE-Keywords[ia]=konqueror,reusa,precargante X-KDE-Keywords[kk]=konqueror,reuse,preloading +X-KDE-Keywords[km]=konqueror ប្រើ​ឡើងវិញ ការ​ផ្ទុក​ជាមុន X-KDE-Keywords[nb]=konqueror,gjenbruk,forhåndslasting X-KDE-Keywords[nl]=konqueror,hergebruik,voorladen X-KDE-Keywords[pa]=ਕੋਨਕਿਉਰੋਰ,ਮੁੜ-ਵਰਤੋਂ,ਮੁੜ-ਲੋਡਕਰਨਾ diff -Nru kde-baseapps-4.7.95/konqueror/settings/performance/kcmperformance.desktop kde-baseapps-4.7.97/konqueror/settings/performance/kcmperformance.desktop --- kde-baseapps-4.7.95/konqueror/settings/performance/kcmperformance.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/settings/performance/kcmperformance.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -194,9 +194,14 @@ X-KDE-Keywords[ca]=rendiment,velocitat,memòria,millora X-KDE-Keywords[da]=ydelse,hastighed,hukommelse,forbedr X-KDE-Keywords[de]=leistung,geschwindigkeit,speichern,optimieren +X-KDE-Keywords[es]=rendimiento,velocidad,memoria,mejorar +X-KDE-Keywords[et]=jõudlus,kiirus,mälu,parandamine X-KDE-Keywords[fi]=suorituskyky,nopeus,muisti,paranna,parannus +X-KDE-Keywords[ga]=oibriú,luas,cuimhne,feabhsaigh,feabhsú X-KDE-Keywords[hu]=teljesítmény,sebesség,memória,fejlesztés +X-KDE-Keywords[ia]=prestation,velocitate,memoria,meliora X-KDE-Keywords[kk]=performance,speed,memory,improve +X-KDE-Keywords[km]=ការ​អនុវត្ត ល្បឿន អង្គ​ចងចាំ ធ្វើ​ឲ្យ​ប្រសើរ X-KDE-Keywords[nb]=ytelse,fart,minne,forbedre X-KDE-Keywords[nl]=prestatie,snelheid,geheugen,verbeteren X-KDE-Keywords[pt]=performance,velocidade,memória,melhoria diff -Nru kde-baseapps-4.7.95/konqueror/sidebar/history_module/kcmhistory.desktop kde-baseapps-4.7.97/konqueror/sidebar/history_module/kcmhistory.desktop --- kde-baseapps-4.7.95/konqueror/sidebar/history_module/kcmhistory.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/sidebar/history_module/kcmhistory.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -195,9 +195,14 @@ X-KDE-Keywords=history,expire X-KDE-Keywords[ca]=historial,venciment X-KDE-Keywords[da]=historik,udløb +X-KDE-Keywords[es]=historial,expiración +X-KDE-Keywords[et]=ajalugu,aegumine X-KDE-Keywords[fi]=historia,vanhentuminen +X-KDE-Keywords[ga]=stair,caite,as feidhm,téigh as feidhm X-KDE-Keywords[hu]=előzmények,lejárat +X-KDE-Keywords[ia]=historia,expira X-KDE-Keywords[kk]=history,expire +X-KDE-Keywords[km]=ប្រវត្តិ ផុត​កំណត់ X-KDE-Keywords[nb]=historie,utdatere X-KDE-Keywords[nl]=geschiedenis,verlopen X-KDE-Keywords[pt]=histórico,expiração diff -Nru kde-baseapps-4.7.95/konqueror/src/konqmainwindow.cpp kde-baseapps-4.7.97/konqueror/src/konqmainwindow.cpp --- kde-baseapps-4.7.95/konqueror/src/konqmainwindow.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/konqueror/src/konqmainwindow.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -405,11 +405,13 @@ if (!bar) return; + const bool wasVisible = bar->isVisible(); + delete m_paBookmarkBar; m_paBookmarkBar = new KBookmarkBar( s_bookmarkManager, m_pBookmarksOwner, bar, this ); // hide if empty - if (bar->actions().count() == 0 ) + if (bar->actions().count() == 0 || !wasVisible) bar->hide(); } @@ -4886,7 +4888,10 @@ // Create a KToggleAction for this view mode, and plug it into the menu KToggleAction* action = new KToggleAction(KIcon(service->icon()), serviceText, this); - actionCollection()->addAction(desktopEntryName, action); + // NOTE: "-viewmode" is appended to desktopEntryName to avoid overwritting existing + // action, e.g. konsolepart added through ToggleViewGUIClient in the ctor will be + // overwritten by the view mode konsolepart action added here. #266517. + actionCollection()->addAction(desktopEntryName + QLatin1String("-viewmode"), action); action->setObjectName(desktopEntryName); action->setActionGroup(m_viewModesGroup); m_viewModeMenu->menu()->addAction(action); diff -Nru kde-baseapps-4.7.95/nsplugins/khtml_plugins.desktop kde-baseapps-4.7.97/nsplugins/khtml_plugins.desktop --- kde-baseapps-4.7.95/nsplugins/khtml_plugins.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/nsplugins/khtml_plugins.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -200,9 +200,14 @@ X-KDE-Keywords[ca]=konqueror,kfm,navegador,html,web,www,tipus de lletres,connectors X-KDE-Keywords[da]=konqueror,kfm,browser,html,web,www,fonts,plugins,skrifttyper X-KDE-Keywords[de]=Konqueror,kfm,Browser,HTML,Web,WWW,Schriften,Plugins +X-KDE-Keywords[es]=konqueror,kfm,navegador,html,web,www,tipos de letra,complementos +X-KDE-Keywords[et]=konqueror,kfm,brauser,html,veeb,www,fondid,pluginad X-KDE-Keywords[fi]=konqueror,kfm,selain,html,web,www,kirjasimet,fontit,liitännäiset +X-KDE-Keywords[ga]=konqueror,kfm,brabhsálaí,html,idirlíon,www,gréasán,clófhoirne,clónna,breiseáin X-KDE-Keywords[hu]=konqueror,kfm,böngésző,html,web,www,betűtípusok,bővítmények +X-KDE-Keywords[ia]=konqueror,kfm,navigator,html,web,www,fonts,plugins X-KDE-Keywords[kk]=konqueror,kfm,browser,html,web,www,fonts,plugins +X-KDE-Keywords[km]=konqueror kfm កម្មវិធី​រុករក html បណ្ដាញ www ពុម្ពអក្សរ កម្មវិធី​ជំនួយ X-KDE-Keywords[nb]=konqueror,kfm,nettleser,html,vev,www,skrifter,programtillegg X-KDE-Keywords[nl]=konqueror,kfm,browser,html,web,www,lettertypen,plug-ins X-KDE-Keywords[pt]=konqueror,kfm,navegador,HTML,Web,WWW,tipos de letra,plugins diff -Nru kde-baseapps-4.7.95/plasma/applets/folderview/folderview.cpp kde-baseapps-4.7.97/plasma/applets/folderview/folderview.cpp --- kde-baseapps-4.7.95/plasma/applets/folderview/folderview.cpp 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/plasma/applets/folderview/folderview.cpp 2012-01-02 19:51:26.000000000 +0000 @@ -39,6 +39,7 @@ #include #include #include +#include #include #include #include @@ -384,9 +385,12 @@ m_dirModel->setDirLister(m_dirLister); - if (!m_url.isValid()) { - - //FIXME: 4.3 Need to update folderview's description + if (m_url.isValid()) { + // this means that we were passed a URL via the args list in the constructor + // setUrl has already been called, we just need to save it in the config file + KConfigGroup cg = config(); + cg.writeEntry("url", m_url); + } else { QString path = QDir::homePath(); if (isContainment()) { const QString desktopPath = KGlobalSettings::desktopPath(); @@ -397,30 +401,10 @@ } } setUrl(cg.readEntry("url", KUrl(path))); - - } else { - KConfigGroup cg = config(); - cg.writeEntry("url", m_url); - } - - if (!m_url.isLocalFile()) { - //If host is connected to the network and url is remote, list the remote files - connect(Solid::Networking::notifier(), SIGNAL(shouldConnect()), this, - SLOT(networkAvailable()), Qt::UniqueConnection); - //Check if network is not in the "Connected" state - if (Solid::Networking::status() != Solid::Networking::Connected) { - //FIXME: Remove the comment when KDE 4.9 development starts - //QString networkStatus(i18n("Network is not reachable")); - //showMessage(KIcon("dialog-warning"), networkStatus, Plasma::ButtonOk); - return; - } - } else { - disconnect(Solid::Networking::notifier(), 0, this, 0); - m_dirLister->openUrl(m_url); } createActions(); - + if (isContainment()) { setupIconView(); @@ -449,7 +433,7 @@ void FolderView::networkAvailable() { - if (!m_url.isLocalFile()) { + if (KProtocolInfo::protocolClass(m_url.protocol()) == ":local") { m_dirLister->openUrl(m_url); } } @@ -463,14 +447,16 @@ bool preserveIconPositions = false; //Reload m_customLabel values - QString label = m_customLabel; - m_customLabel = cg.readEntry("customLabel", m_customLabel); + const QString label = cg.readEntry("customLabel", m_customLabel); if (label != m_customLabel) { + m_customLabel = label; setAppletTitle(); needReload = true; } - bool blank = cg.readEntry("blankLabel", m_blankLabel); + + const bool blank = cg.readEntry("blankLabel", m_blankLabel); if (blank != m_blankLabel) { + m_blankLabel = blank; needReload = true; } //Reload m_customIconSize values @@ -482,20 +468,21 @@ m_showPreviews = cg.readEntry("showPreviews", m_showPreviews); m_drawShadows = cg.readEntry("drawShadows", m_drawShadows); - m_iconsLocked = cg.readEntry("iconsLocked", m_iconsLocked); - m_alignToGrid = cg.readEntry("alignToGrid", m_alignToGrid); m_clickToView = cg.readEntry("clickForFolderPreviews", m_clickToView); m_numTextLines = cg.readEntry("numTextLines", m_numTextLines); + m_alignToGrid = cg.readEntry("alignToGrid", m_alignToGrid); + if (QAction *action = m_actionCollection.action("auto_align")) { + action->setChecked(m_alignToGrid); + } - const int filterType = m_filterType; - m_filterType = cg.readEntry("filter", m_filterType); - if (filterType != m_filterType) { - needReload = true; + m_iconsLocked = cg.readEntry("iconsLocked", m_iconsLocked); + if (QAction *action = m_actionCollection.action("lock_icons")) { + action->setChecked(m_iconsLocked); } - QColor color = m_textColor; - m_textColor = cg.readEntry("textColor", m_textColor); + const QColor color = cg.readEntry("textColor", m_textColor); if (color != m_textColor) { + m_textColor = color; needReload = true; } @@ -513,9 +500,9 @@ m_sortDirsFirst = cg.readEntry("sortDirsFirst", m_sortDirsFirst); toggleDirectoriesFirst(m_sortDirsFirst); - const int sortColumn = m_sortColumn; - m_sortColumn = cg.readEntry("sortColumn", m_sortColumn); + const int sortColumn = cg.readEntry("sortColumn", m_sortColumn); if (m_sortColumn != sortColumn) { + m_sortColumn = sortColumn; if (m_sortColumn != -1) { m_model->invalidate(); m_model->sort(m_sortColumn, Qt::AscendingOrder); @@ -527,28 +514,35 @@ updateSortActionsState(); } - const QString filterFiles = m_filterFiles; - m_filterFiles = cg.readEntry("filterFiles", m_filterFiles); + const int filterType = cg.readEntry("filter", m_filterType); + if (filterType != m_filterType) { + m_filterType = filterType; + m_model->setFilterMode(ProxyModel::filterModeFromInt(m_filterType)); + needReload = true; + } + + m_userSelectedShowAllFiles = m_filterType; + const QString filterFiles = cg.readEntry("filterFiles", m_filterFiles); if (filterFiles != m_filterFiles) { + m_filterFiles = filterFiles; + m_model->setFileNameFilter(m_filterFiles); needReload = true; } - const QStringList mimeFilter = m_filterFilesMimeList; - m_filterFilesMimeList = cg.readEntry("mimeFilter", m_filterFilesMimeList); - + const QStringList mimeFilter = cg.readEntry("mimeFilter", m_filterFilesMimeList); if (mimeFilter != m_filterFilesMimeList) { + m_filterFilesMimeList = mimeFilter; + m_model->setMimeTypeFilterList(m_filterFilesMimeList); needReload = true; } - const KUrl url = m_url; - m_url = cg.readEntry("url", m_url); + const KUrl url = cg.readEntry("url", m_url); if (url != m_url) { - setUrl(m_url); + m_url = url; needReload = true; } - if (m_iconView) { updateIconViewState(); } @@ -562,17 +556,17 @@ QStringList iconPositionsData; if (preserveIconPositions && m_iconView) { iconPositionsData = m_iconView->iconPositionsData(); - } - if (preserveIconPositions && m_iconView) { m_iconView->setIconPositionsData(iconPositionsData); } + // So the KFileItemActions will be recreated for the new URL. delete m_itemActions; m_itemActions = 0; - m_dirModel->dirLister()->openUrl(m_url); + + setUrl(m_url); } } @@ -798,34 +792,12 @@ url = KUrl(QDir::homePath()); } - // Now, we have to iterate over all items (not only the filtered ones). For that reason we have - // to ask the source model, not the proxy model. - QStringList selectedItems; - ProxyMimeModel *proxyModel = static_cast(uiFilter.filterFilesList->model()); - for (int i = 0; i < proxyModel->sourceModel()->rowCount(); i++) { - const QModelIndex index = proxyModel->sourceModel()->index(i, 0); - if (index.model()->data(index, Qt::CheckStateRole).toInt() == Qt::Checked) { - KMimeType *mime = static_cast(index.internalPointer()); - if (mime) { - selectedItems << mime->name(); - } - } - } - - const int filterType = uiFilter.filterType->currentIndex(); KConfigGroup cg = config(); - bool needReload = false; - bool preserveIconPositions = false; - if (m_drawShadows != uiDisplay.drawShadows->isChecked()) { - m_drawShadows = uiDisplay.drawShadows->isChecked(); - cg.writeEntry("drawShadows", m_drawShadows); - } + cg.writeEntry("drawShadows", uiDisplay.drawShadows->isChecked()); if (m_showPreviews != uiDisplay.showPreviews->isChecked()) { - m_showPreviews = uiDisplay.showPreviews->isChecked(); - cg.writeEntry("showPreviews", m_showPreviews); - + cg.writeEntry("showPreviews", uiDisplay.showPreviews->isChecked()); //As disabling the previews will force a rearrangement, we need to manually //save and restore the icons positions @@ -846,129 +818,54 @@ if (m_previewGenerator && m_previewPlugins != m_previewGenerator->enabledPlugins()) { cg.writeEntry("previewPlugins", m_previewPlugins); - m_previewGenerator->setEnabledPlugins(m_previewPlugins); - - //Changing the preview plugins will also need a reload to work, so we need to preserve - //the icons position - needReload = true; - preserveIconPositions = true; } - - const QColor defaultColor = isContainment() ? Qt::white : - Plasma::Theme::defaultTheme()->color(Plasma::Theme::TextColor); + + const QColor defaultColor = isContainment() ? Qt::white + : Plasma::Theme::defaultTheme()->color(Plasma::Theme::TextColor); const QColor color = uiDisplay.colorButton->color(); if ((m_textColor != Qt::transparent && color != m_textColor) || (m_textColor == Qt::transparent && color != defaultColor)) { - m_textColor = color; - cg.writeEntry("textColor", m_textColor); + cg.writeEntry("textColor", color); } - if (m_numTextLines != uiDisplay.numLinesEdit->value()) { - m_numTextLines = uiDisplay.numLinesEdit->value(); - cg.writeEntry("numTextLines", m_numTextLines); - } + cg.writeEntry("numTextLines", uiDisplay.numLinesEdit->value()); const QList iconSizes = QList() << 16 << 22 << 32 << 48 << 64 << 128; const int size = iconSizes.at(uiDisplay.sizeSlider->value()); - if (size != iconSize().width()) - { - m_customIconSize = size; - cg.writeEntry("customIconSize", m_customIconSize); - - // This is to force the preview images to be regenerated with the new size - if (m_showPreviews) { - needReload = true; - } - } + cg.writeEntry("customIconSize", size); const int sortColumn = uiDisplay.sortCombo->itemData(uiDisplay.sortCombo->currentIndex()).toInt(); - if (m_sortColumn != sortColumn) { - m_sortColumn = sortColumn; - if (m_sortColumn != -1) { - m_model->invalidate(); - m_model->sort(m_sortColumn, Qt::AscendingOrder); - m_model->setDynamicSortFilter(true); - } else if (m_iconView) { - m_iconView->setCustomLayout(true); - m_model->setDynamicSortFilter(false); - } - updateSortActionsState(); - cg.writeEntry("sortColumn", m_sortColumn); - } + cg.writeEntry("sortColumn", sortColumn); const int flow = uiDisplay.flowCombo->itemData(uiDisplay.flowCombo->currentIndex()).toInt(); - if (m_flow != flow) { - m_flow = static_cast(flow); - cg.writeEntry("flow", flow); - } - - if (m_alignToGrid != uiDisplay.alignToGrid->isChecked()) { - m_alignToGrid = uiDisplay.alignToGrid->isChecked(); - cg.writeEntry("alignToGrid", m_alignToGrid); - m_actionCollection.action("auto_align")->setChecked(m_alignToGrid); - } + cg.writeEntry("flow", flow); - if (m_clickToView != uiDisplay.setClicktoView->isChecked()) { - m_clickToView = uiDisplay.setClicktoView->isChecked(); - cg.writeEntry("clickForFolderPreviews", m_clickToView); - } - - if (m_iconsLocked != uiDisplay.lockInPlace->isChecked()) { - m_iconsLocked = uiDisplay.lockInPlace->isChecked(); - cg.writeEntry("iconsLocked", m_iconsLocked); - m_actionCollection.action("lock_icons")->setChecked(m_iconsLocked); - } + cg.writeEntry("alignToGrid", uiDisplay.alignToGrid->isChecked()); + cg.writeEntry("clickForFolderPreviews", uiDisplay.setClicktoView->isChecked()); + cg.writeEntry("iconsLocked", uiDisplay.lockInPlace->isChecked()); cg.writeEntry("blankLabel" , m_blankLabel); cg.writeEntry("customLabel", m_customLabel); - if (m_url != url || m_filterFiles != uiFilter.filterFilesPattern->text() || - m_filterFilesMimeList != selectedItems || m_filterType != filterType) - { - m_model->setFileNameFilter(uiFilter.filterFilesPattern->text()); - m_filterFiles = uiFilter.filterFilesPattern->text(); - m_filterFilesMimeList = selectedItems; - m_filterType = filterType; - setUrl(url); - - cg.writeEntry("url", m_url); - cg.writeEntry("filterFiles", m_filterFiles); - cg.writeEntry("filter", m_filterType); - m_userSelectedShowAllFiles = m_filterType; - cg.writeEntry("mimeFilter", m_filterFilesMimeList); - - m_model->setMimeTypeFilterList(m_filterFilesMimeList); - m_model->setFilterMode(ProxyModel::filterModeFromInt(m_filterType)); - needReload = true; - } else { - setAppletTitle(); - } + cg.writeEntry("url", url); + cg.writeEntry("filterFiles", uiFilter.filterFilesPattern->text()); + cg.writeEntry("filter", uiFilter.filterType->currentIndex()); - if (m_iconView) { - updateIconViewState(); - } - - if (m_listView) { - updateListViewState(); - } - - if (needReload) { - //Manually save and restore the icon positions if we need it - QStringList iconPositionsData; - if (preserveIconPositions && m_iconView) { - iconPositionsData = m_iconView->iconPositionsData(); - } - - m_dirModel->dirLister()->openUrl(m_url); - - if (preserveIconPositions && m_iconView) { - m_iconView->setIconPositionsData(iconPositionsData); + // Now, we have to iterate over all items (not only the filtered ones). For that reason we have + // to ask the source model, not the proxy model. + QStringList selectedItems; + ProxyMimeModel *proxyModel = static_cast(uiFilter.filterFilesList->model()); + for (int i = 0; i < proxyModel->sourceModel()->rowCount(); i++) { + const QModelIndex index = proxyModel->sourceModel()->index(i, 0); + if (index.model()->data(index, Qt::CheckStateRole).toInt() == Qt::Checked) { + KMimeType *mime = static_cast(index.internalPointer()); + if (mime) { + selectedItems << mime->name(); + } } - // So the KFileItemActions will be recreated for the new URL. - delete m_itemActions; - m_itemActions = 0; } + cg.writeEntry("mimeFilter", selectedItems); m_delayedSaveTimer.start(5000, this); emit configNeedsSaving(); @@ -1407,12 +1304,26 @@ void FolderView::setUrl(const KUrl &url) { m_url = url; - setAssociatedApplicationUrls(KUrl::List() << m_url); + if (KProtocolInfo::protocolClass(m_url.protocol()) == ":local") { + disconnect(Solid::Networking::notifier(), 0, this, 0); + m_dirLister->openUrl(m_url); + } else { + //If host is connected to the network and url is remote, list the remote files + connect(Solid::Networking::notifier(), SIGNAL(shouldConnect()), this, + SLOT(networkAvailable()), Qt::UniqueConnection); + //Check if network is not in the "Connected" state + if (Solid::Networking::status() == Solid::Networking::Connected) { + //FIXME: Remove the comment when KDE 4.9 development starts + //QString networkStatus(i18n("Network is not reachable")); + //showMessage(KIcon("dialog-warning"), networkStatus, Plasma::ButtonOk); + m_dirLister->openUrl(m_url); + } + } + // Only parse desktop files when sorting if we're showing the desktop folder m_model->setParseDesktopFiles(m_url.protocol() == "desktop"); - setAppletTitle(); } diff -Nru kde-baseapps-4.7.95/plasma/applets/folderview/plasma-applet-folderview.desktop kde-baseapps-4.7.97/plasma/applets/folderview/plasma-applet-folderview.desktop --- kde-baseapps-4.7.95/plasma/applets/folderview/plasma-applet-folderview.desktop 2011-12-20 19:10:51.000000000 +0000 +++ kde-baseapps-4.7.97/plasma/applets/folderview/plasma-applet-folderview.desktop 2012-01-03 19:37:20.000000000 +0000 @@ -92,10 +92,12 @@ Comment[et]=Kataloogide sisu näitamine Comment[eu]=Bistaratu karpeten edukia Comment[fi]=Näyttää kansion sisällön +Comment[ga]=Taispeáin inneachar d'fhillteáin Comment[hu]=Megjeleníti a mappák tartalmát Comment[ia]=Monstra le contentos de dossieres Comment[is]=Sýna innihald mappa Comment[kk]=Қапшықтардағыны көрсету +Comment[km]=បង្ហាញ​មាតិកា​របស់​ថត Comment[lt]=Rodyti aplankų turinį Comment[nb]=Vis mappers innhold Comment[nds]=Den Inholt vun Ornern wiesen