commit kdebase4 for openSUSE:Factory
Hello community, here is the log from the commit of package kdebase4 for openSUSE:Factory checked in at 2014-04-18 11:35:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kdebase4 (Old) and /work/SRC/openSUSE:Factory/.kdebase4.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "kdebase4" Changes: -------- --- /work/SRC/openSUSE:Factory/kdebase4/kdebase4.changes 2014-03-30 08:24:49.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kdebase4.new/kdebase4.changes 2014-04-18 12:37:35.000000000 +0200 @@ -1,0 +2,7 @@ +Fri Apr 11 16:44:10 UTC 2014 - tittiatcoke@gmail.com + +- Update to 4.13.0 + * KDE 4.13 release + * See http://www.kde.org/announcements/4.13/ + +------------------------------------------------------------------- Old: ---- kde-baseapps-4.12.97.tar.xz New: ---- kde-baseapps-4.13.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kdebase4.spec ++++++ --- /var/tmp/diff_new_pack.Did3Kn/_old 2014-04-18 12:37:36.000000000 +0200 +++ /var/tmp/diff_new_pack.Did3Kn/_new 2014-04-18 12:37:36.000000000 +0200 @@ -17,7 +17,7 @@ Name: kdebase4 -Version: 4.12.97 +Version: 4.13.0 Release: 0 Summary: The Base KDE Apps License: GPL-2.0+ ++++++ kde-baseapps-4.12.97.tar.xz -> kde-baseapps-4.13.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/dolphinviewcontainer.cpp new/kde-baseapps-4.13.0/dolphin/src/dolphinviewcontainer.cpp --- old/kde-baseapps-4.12.97/dolphin/src/dolphinviewcontainer.cpp 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/dolphinviewcontainer.cpp 2014-04-03 09:03:47.000000000 +0200 @@ -314,36 +314,18 @@ m_urlNavigator->setVisible(!enabled); if (enabled) { - KUrl url = m_urlNavigator->locationUrl(); - m_searchBox->setText(QString()); - m_searchBox->setReadOnly(isSearchUrl(url), url); - - // Remember the most recent non-search URL as search path - // of the search-box, so that it can be restored - // when switching back to the URL navigator. - int index = m_urlNavigator->historyIndex(); - const int historySize = m_urlNavigator->historySize(); - while (isSearchUrl(url) && (index < historySize)) { - ++index; - url = m_urlNavigator->locationUrl(index); - } - - if (!isSearchUrl(url)) { - m_searchBox->setSearchPath(url); - } + const KUrl& locationUrl = m_urlNavigator->locationUrl(); + m_searchBox->fromSearchUrl(locationUrl); } else { m_view->setViewPropertiesContext(QString()); // Restore the URL for the URL navigator. If Dolphin has been // started with a search-URL, the home URL is used as fallback. - const KUrl url = m_searchBox->searchPath(); - if (url.isValid() && !url.isEmpty()) { - if (isSearchUrl(url)) { - m_urlNavigator->goHome(); - } else { - m_urlNavigator->setLocationUrl(url); - } + KUrl url = m_searchBox->searchPath(); + if (url.isEmpty() || !url.isValid() || isSearchUrl(url)) { + url = GeneralSettings::self()->homeUrl(); } + m_urlNavigator->setLocationUrl(url); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/kitemviews/private/kdirectorycontentscounter.cpp new/kde-baseapps-4.13.0/dolphin/src/kitemviews/private/kdirectorycontentscounter.cpp --- old/kde-baseapps-4.12.97/dolphin/src/kitemviews/private/kdirectorycontentscounter.cpp 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/kitemviews/private/kdirectorycontentscounter.cpp 2014-04-03 09:03:47.000000000 +0200 @@ -60,14 +60,23 @@ { --m_workersCount; - if (m_workersCount == 0) { + if (m_workersCount > 0) { + // The worker thread will continue running. It could even be running + // a method of m_worker at the moment, so we delete it using + // deleteLater() to prevent a crash. + m_worker->deleteLater(); + } else { + // There are no remaining workers -> stop the worker thread. m_workerThread->quit(); m_workerThread->wait(); delete m_workerThread; m_workerThread = 0; - } - delete m_worker; + // The worker thread has finished running now, so it's safe to delete + // m_worker. deleteLater() would not work at all because the event loop + // which would deliver the event to m_worker is not running any more. + delete m_worker; + } } void KDirectoryContentsCounter::addDirectory(const QString& path) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/search/dolphinfacetswidget.cpp new/kde-baseapps-4.13.0/dolphin/src/search/dolphinfacetswidget.cpp --- old/kde-baseapps-4.12.97/dolphin/src/search/dolphinfacetswidget.cpp 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/search/dolphinfacetswidget.cpp 2014-04-03 09:03:47.000000000 +0200 @@ -179,8 +179,117 @@ return QString(); } +bool DolphinFacetsWidget::isRatingTerm(const Baloo::Term& term) const +{ + const QList<Baloo::Term> subTerms = term.subTerms(); + if (subTerms.isEmpty()) { + // If term has no sub terms, then the term itself is either a "rating" term + // or a "modified" term. + return term.property() == QLatin1String("modified") || + term.property() == QLatin1String("rating"); + + } else if (subTerms.size() == 2) { + // If term has sub terms, then the sub terms are always "rating" and "modified" terms. + + QStringList properties; + foreach (const Baloo::Term& subTerm, subTerms) { + properties << subTerm.property(); + } + + return properties.contains(QLatin1String("modified")) && + properties.contains(QLatin1String("rating")); + } + + return false; +} + +void DolphinFacetsWidget::setRatingTerm(const Baloo::Term& term) +{ + // If term has sub terms, then the sub terms are always "rating" and "modified" terms. + // If term has no sub terms, then the term itself is either a "rating" term or a "modified" + // term. To avoid code duplication we add term to subTerms list, if the list is empty. + QList<Baloo::Term> subTerms = term.subTerms(); + if (subTerms.isEmpty()) { + subTerms << term; + } + + foreach (const Baloo::Term& subTerm, subTerms) { + const QString property = subTerm.property(); + + if (property == QLatin1String("modified")) { + const QDate date = subTerm.value().toDate(); + setTimespan(date); + } else if (property == QLatin1String("rating")) { + const int stars = subTerm.value().toInt() / 2; + setRating(stars); + } + } +} + #endif +void DolphinFacetsWidget::setFacetType(const QString& type) +{ + if (type == QLatin1String("Document")) { + m_documents->setChecked(true); + } else if (type == QLatin1String("Image")) { + m_images->setChecked(true); + } else if (type == QLatin1String("Audio")) { + m_audio->setChecked(true); + } else if (type == QLatin1String("Video")) { + m_videos->setChecked(true); + } else { + m_anyType->setChecked(true); + } +} + +void DolphinFacetsWidget::setRating(const int stars) +{ + switch (stars) { + case 5: + m_maxRating->setChecked(true); + break; + + case 4: + m_fourOrMore->setChecked(true); + break; + + case 3: + m_threeOrMore->setChecked(true); + break; + + case 2: + m_twoOrMore->setChecked(true); + break; + + case 1: + m_oneOrMore->setChecked(true); + break; + + default: + m_anyRating->setChecked(true); + } +} + +void DolphinFacetsWidget::setTimespan(const QDate& date) +{ + const QDate currentDate = QDate::currentDate(); + const int days = date.daysTo(currentDate); + + if (days <= 0) { + m_today->setChecked(true); + } else if (days <= 1) { + m_yesterday->setChecked(true); + } else if (days <= currentDate.dayOfWeek()) { + m_thisWeek->setChecked(true); + } else if (days <= currentDate.day()) { + m_thisMonth->setChecked(true); + } else if (days <= currentDate.dayOfYear()) { + m_thisYear->setChecked(true); + } else { + m_anytime->setChecked(true); + } +} QRadioButton* DolphinFacetsWidget::createRadioButton(const QString& text, QButtonGroup* group) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/search/dolphinfacetswidget.h new/kde-baseapps-4.13.0/dolphin/src/search/dolphinfacetswidget.h --- old/kde-baseapps-4.12.97/dolphin/src/search/dolphinfacetswidget.h 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/search/dolphinfacetswidget.h 2014-04-03 09:03:47.000000000 +0200 @@ -29,6 +29,7 @@ class QButtonGroup; class QCheckBox; +class QDate; class QRadioButton; /** @@ -58,12 +59,20 @@ #ifdef HAVE_BALOO Baloo::Term ratingTerm() const; QString facetType() const; + + bool isRatingTerm(const Baloo::Term& term) const; + void setRatingTerm(const Baloo::Term& term); #endif + void setFacetType(const QString& type); + signals: void facetChanged(); private: + void setRating(const int stars); + void setTimespan(const QDate& date); + /** * @return New radiobutton which is connected to the * slotFacedChanged() slot whenever it has diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/search/dolphinsearchbox.cpp new/kde-baseapps-4.13.0/dolphin/src/search/dolphinsearchbox.cpp --- old/kde-baseapps-4.12.97/dolphin/src/search/dolphinsearchbox.cpp 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/search/dolphinsearchbox.cpp 2014-04-03 09:03:47.000000000 +0200 @@ -49,7 +49,6 @@ DolphinSearchBox::DolphinSearchBox(QWidget* parent) : QWidget(parent), m_startedSearching(false), - m_readOnly(false), m_active(true), m_topLayout(0), m_searchLabel(0), @@ -63,7 +62,6 @@ m_facetsToggleButton(0), m_facetsWidget(0), m_searchPath(), - m_readOnlyQuery(), m_startSearchTimer(0) { } @@ -102,7 +100,7 @@ const QString elidedLocation = metrics.elidedText(location, Qt::ElideMiddle, maxWidth); m_fromHereButton->setText(i18nc("action:button", "From Here (%1)", elidedLocation)); - const bool showSearchFromButtons = url.isLocalFile() && !m_readOnly; + const bool showSearchFromButtons = url.isLocalFile(); m_separator->setVisible(showSearchFromButtons); m_fromHereButton->setVisible(showSearchFromButtons); m_everywhereButton->setVisible(showSearchFromButtons); @@ -152,23 +150,24 @@ return url; } -void DolphinSearchBox::selectAll() -{ - m_searchInput->selectAll(); -} - -void DolphinSearchBox::setReadOnly(bool readOnly, const KUrl& query) +void DolphinSearchBox::fromSearchUrl(const KUrl& url) { - if (m_readOnly != readOnly || m_readOnlyQuery != query) { - m_readOnly = readOnly; - m_readOnlyQuery = query; - applyReadOnlyState(); + if (url.protocol() == "baloosearch") { + fromBalooSearchUrl(url); + } else if (url.protocol() == "filenamesearch") { + const QMap<QString, QString>& queryItems = url.queryItems(); + setText(queryItems.value("search")); + setSearchPath(queryItems.value("url")); + m_contentButton->setChecked(queryItems.value("checkContent") == "yes"); + } else { + setText(QString()); + setSearchPath(url); } } -bool DolphinSearchBox::isReadOnly() const +void DolphinSearchBox::selectAll() { - return m_readOnly; + m_searchInput->selectAll(); } void DolphinSearchBox::setActive(bool active) @@ -426,7 +425,6 @@ connect(m_startSearchTimer, SIGNAL(timeout()), this, SLOT(emitSearchRequest())); updateFacetsToggleButton(); - applyReadOnlyState(); } KUrl DolphinSearchBox::balooUrlForSearching() const @@ -464,26 +462,46 @@ #endif } -void DolphinSearchBox::applyReadOnlyState() +void DolphinSearchBox::fromBalooSearchUrl(const KUrl& url) { #ifdef HAVE_BALOO - if (m_readOnly) { - m_searchLabel->setText(Baloo::Query::titleFromQueryUrl(m_readOnlyQuery)); + const Baloo::Query query = Baloo::Query::fromSearchUrl(url); + const Baloo::Term term = query.term(); + + // Block all signals to avoid unnecessary "searchRequest" signals + // while we adjust the search text and the facet widget. + blockSignals(true); + + const QVariantHash customOptions = query.customOptions(); + if (customOptions.contains("includeFolder")) { + setSearchPath(customOptions.value("includeFolder").toString()); } else { -#else - { -#endif - m_searchLabel->setText(i18nc("@label:textbox", "Find:")); + setSearchPath(QDir::homePath()); } - m_searchInput->setVisible(!m_readOnly); - m_optionsScrollArea->setVisible(!m_readOnly); + if (!query.searchString().isEmpty()) { + setText(query.searchString()); + } - if (m_readOnly) { - m_facetsWidget->hide(); - } else { - m_facetsWidget->setVisible(SearchSettings::showFacetsWidget()); + QStringList types = query.types(); + types.removeOne("File"); // We are only interested in facet widget types + if (!types.isEmpty()) { + m_facetsWidget->setFacetType(types.first()); + } + + foreach (const Baloo::Term& subTerm, term.subTerms()) { + const QString property = subTerm.property(); + + if (property == QLatin1String("filename")) { + setText(subTerm.value().toString()); + } else if (m_facetsWidget->isRatingTerm(subTerm)) { + m_facetsWidget->setRatingTerm(subTerm); + } } + + m_startSearchTimer->stop(); + blockSignals(false); +#endif } void DolphinSearchBox::updateFacetsToggleButton() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/dolphin/src/search/dolphinsearchbox.h new/kde-baseapps-4.13.0/dolphin/src/search/dolphinsearchbox.h --- old/kde-baseapps-4.12.97/dolphin/src/search/dolphinsearchbox.h 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/dolphin/src/search/dolphinsearchbox.h 2014-04-03 09:03:47.000000000 +0200 @@ -72,20 +72,15 @@ KUrl urlForSearching() const; /** - * Selects the whole text of the search box. + * Extracts information from the given search \a url to + * initialize the search box properly. */ - void selectAll(); + void fromSearchUrl(const KUrl& url); /** - * @param readOnly If set to true the searchbox cannot be modified - * by the user and acts as visual indicator for - * an externally triggered search query. - * @param query If readOnly is true this URL will be used - * to show a human readable information about the - * query. + * Selects the whole text of the search box. */ - void setReadOnly(bool readOnly, const KUrl& query = KUrl()); - bool isReadOnly() const; + void selectAll(); /** * Set the search box to the active mode, if \a active @@ -155,12 +150,15 @@ */ KUrl balooUrlForSearching() const; - void applyReadOnlyState(); + /** + * Extracts information from the given Baloo search \a url to + * initialize the search box properly. + */ + void fromBalooSearchUrl(const KUrl& url); void updateFacetsToggleButton(); private: bool m_startedSearching; - bool m_readOnly; bool m_active; QVBoxLayout* m_topLayout; @@ -177,7 +175,6 @@ DolphinFacetsWidget* m_facetsWidget; KUrl m_searchPath; - KUrl m_readOnlyQuery; QTimer* m_startSearchTimer; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/konq-plugins/imagerotation/jpegorient.desktop new/kde-baseapps-4.13.0/konq-plugins/imagerotation/jpegorient.desktop --- old/kde-baseapps-4.12.97/konq-plugins/imagerotation/jpegorient.desktop 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/konq-plugins/imagerotation/jpegorient.desktop 2014-04-03 09:03:47.000000000 +0200 @@ -80,7 +80,7 @@ Name[ca@valencia]=Gira en sentit horari Name[cs]=Rotovat po směru hodin Name[da]=Rotér med uret -Name[de]=Rechts drehen +Name[de]=Mit dem Uhrzeigersinn drehen Name[el]=Περιστροφή με τη Φορά του Ρολογιού Name[en_GB]=Rotate Clockwise Name[es]=Girar en el sentido de las agujas del reloj @@ -147,7 +147,7 @@ Name[ca@valencia]=Gira en sentit antihorari Name[cs]=Rotovat proti směru hodin Name[da]=Rotér mod uret -Name[de]=Links drehen +Name[de]=Gegen den Uhrzeigersinn drehen Name[el]=Περιστροφή αριστερόστροφα Name[en_GB]=Rotate Anti-Clockwise Name[es]=Girar en sentido contrario a las agujas del reloj diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kde-baseapps-4.12.97/konqueror/settings/kio/proxy.desktop new/kde-baseapps-4.13.0/konqueror/settings/kio/proxy.desktop --- old/kde-baseapps-4.12.97/konqueror/settings/kio/proxy.desktop 2014-03-25 23:39:47.000000000 +0100 +++ new/kde-baseapps-4.13.0/konqueror/settings/kio/proxy.desktop 2014-04-03 09:03:47.000000000 +0200 @@ -76,7 +76,7 @@ Name[oc]=Proxy Name[or]=ପ୍ରକ୍ସି Name[pa]=ਪਰਾਕਸੀ -Name[pl]=Pośrednik (Proxy) +Name[pl]=Pośrednik Name[pt]=Proxy Name[pt_BR]=Proxy Name[ro]=Proxy -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de