Hello community,

here is the log from the commit of package amarok.3913 for openSUSE:13.2:Update 
checked in at 2015-07-27 12:49:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:13.2:Update/amarok.3913 (Old)
 and      /work/SRC/openSUSE:13.2:Update/.amarok.3913.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "amarok.3913"

Changes:
--------
New Changes file:

--- /dev/null   2015-07-22 21:25:44.928025004 +0200
+++ /work/SRC/openSUSE:13.2:Update/.amarok.3913.new/amarok.changes      
2015-07-27 12:49:51.000000000 +0200
@@ -0,0 +1,1455 @@
+-------------------------------------------------------------------
+Thu Jul  9 09:50:57 UTC 2015 - [email protected]
+
+- Add Enable_Wikipedia_over_SSL.patch to make the Wikipedia applet
+  work again (boo#934730, kde#349313)
+  
+-------------------------------------------------------------------
+Wed Feb  4 10:08:19 UTC 2015 - [email protected]
+
+- add the changes file as source so the .src.rpm can be rebuild
+
+-------------------------------------------------------------------
+Sat Jan 10 09:06:49 UTC 2015 - [email protected]
+
+- Add 0008-Clean-up-the-leftover-of-strigi-removal.patch: 
+  remove unneeded Strigi reference in the Ampache plugin build
+  system
+- Add 0009-Fix-Ampache-plugin-connections.patch: unbreak Ampache
+  plugin connection due to wrong hashing algorithm being used 
+
+-------------------------------------------------------------------
+Thu Dec 18 17:08:44 UTC 2014 - [email protected]
+
+- Require correct libtag.so to avoid undefined symbols at runtime
+
+-------------------------------------------------------------------
+Sun Nov 09 00:40:00 UTC 2014 - Led <[email protected]>
+
+- fix bashisms in post/postun scripts
+
+-------------------------------------------------------------------
+Wed May  7 17:01:57 UTC 2014 - [email protected]
+
+- Added libxml2-devel BuildRequires, was pulled in via
+  libkde4-devel previously
+
+-------------------------------------------------------------------
+Fri Mar 7 18:29:32 UTC 2014 - [email protected]
+
+- Remove nepomuk-core from the buildrequires
+-------------------------------------------------------------------
+Tue Oct  1 18:18:23 UTC 2013 - [email protected]
+
+- Explicitly require phonon-backend, as it's possible that in certain
+  conditions users would have none installed
+
+-------------------------------------------------------------------
+Mon Sep  9 19:23:13 UTC 2013 - [email protected]
+
+- Added patches from upstream:
+  0002-Don-t-allow-adding-Analyzer-applet-when-not-supporte.patch,
+  0003-Optimization-Don-t-draw-more-than-necessary.patch,
+  0004-Fix-reading-Album-Artist-Compilation-Disc-Number-in-.patch,
+  0005-Sync-playlist-search-config-instantly.patch,
+  0006-Don-t-suppress-html-tag-like-characters.patch and
+  0007-Fix-performance-issue-with-large-podcast-feeds.patch
+  which resolve kde#323735, kde#324295, kde#324614, kde#283022 and
+  kde#323119
+- Renamed Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch
+
+-------------------------------------------------------------------
+Wed Aug 21 15:04:08 UTC 2013 - [email protected]
+
+- Added Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch
+  from upstream, avoids adding the analyzer applet on phonon backends
+  that don't support it (e.g. vlc)
+
+-------------------------------------------------------------------
+Wed Aug 14 21:26:59 UTC 2013 - [email protected]
+
+- Update to 2.8.0
+VERSION 2.8
+  * FEATURES:
+    * Tracks from Recently Played List widget can now directly be
+      added to the playlist. (kde#279263, kde#296090)
+  * CHANGES:
+    * The Jamendo service now uses a higher quality MP3 format
+      instead of Ogg Vorbis.
+    * Added an option whether adding tracks to playlist should
+      start playing. (kde#322428)
+    * Amarok now depends on Qt 4.8.3.
+    * Amarok now uses FindFFMpeg.cmake from kdelibs
+  * BUGFIXES:
+    * Don't reload Wikipedia applet content if artist/album have
+      not changed. (kde#112044)
+    * Jamendo service: Albums are now downloaded directly instead
+      of going via BitTorrent. This is far more reliable and also
+      supports on-the-fly transcoding. (kde#299434)
+    * Work-around Solid UDisks2 backend bug that caused
+      USB Mass Storage devices and iPods not being recognized when
+      connected before Amarok was started. Also fixes a bug where
+      blank devices would appear in Play Media dialog.
+      (kde#322980)
+    * Definitely fix a bug where storing Last.fm credentials in
+      plain-text isn't offered when KWallet is disabled.
+      (kde#315306)
+    * Radio streams from scripted services are now
+      instantly playable. (kde#320718)
+    * Recently Played List widget now keeps its own time for
+      tracks instead of relying on the Last Played statistic.
+      (kde#302485)
+    * Prevent hitting an assertion failure if just removed track
+      from the Local Collection is edited. (kde#322474)
+    * Fixed a regression introduced in 2.8 Beta where tracks in
+      the Local Collection were sometimes forgotten and then
+      found again. (kde#322603)
+    * Fixed invalid SQL queries when you have files or folders
+      with an apostrophe in your collection. (kde#322415)
+    * Fixed organizing/copying/moving tracks to Local
+      Collection on Windows. (kde#279560, kde#302251)
+    * Various usability improvements for the applet toolbar.
+      (kde#197948)
+    * Removed broken Apply button in applets' settings dialog.
+      (kde#322015)
+    * Fix incorrect colors in Context View toolbar when
+      switching themes. (kde#301305)
+    * Many fixes for various bugs with switching desktop color
+      themes at runtime, including OSD, spectrum analyzer,
+      collection browser.
+    * Avoid updating the MPRIS2 Metadata between tracks.
+      (kde#321602)
+
+-------------------------------------------------------------------
+Thu Jul  4 13:56:44 UTC 2013 - [email protected]
+
+- Update to 2.7.90
+  * FEATURES:
+    * Ctrl+C copies the currently playing artist & title to the
+      clipboard. (kde#228872)
+    * Volume fade-out is now also available for pause.
+    * The Files browser now has a Refresh button. (kde#213666)
+    * The active playlist item is animated with a soft glow effect.
+    * Added an audio analyzer visualization applet.
+    * Added a function for resetting the GUI layout back to default
+      state. (kde#300753)
+    * Pressing enter when searching collections now adds found
+      tracks to the playlist and clears the search bar, this is a
+      very convenient way to populate your playlist.
+    * Allow to transcode only certain (different format,
+      playability) tracks when transferring them to a
+      collection (kde#312407)
+    * On-Screen-Display fades in/out smoothly.
+    * Added support for .asx playlists; (kde#170207)
+    * Add Radio GFM radio streams to Cool Stream Script.
+      (kde#317978)
+    * Added options to pause playback on system suspend and to
+      inhibit automatic suspend  if playing a track (enabled by
+      default); (kde#259862) (kde#222571)
+    * Playlist files are now read asynchronously when possible;
+      (kde#291934)
+    * Added support to filter tracks to scrobble to Last.fm by
+      label. (kde#140198)
+    * Added transcoding support for Opus codec if ffmpeg is
+      compiled with support for the libopus library
+    * Added keyboard shortcuts for small 2 s seeks
+      (Ctrl + Left/Right) and long 1 minute  seeks
+      (Shift + Left/Right) in addition to standard 10 s seeks.
+      Durations are now configurable in amarokrc, see
+      Amarok Handbook (kde#177258)
+    * Added support for files in Opus codec if Amarok is compiled
+      against recent enough TagLib (post 1.8) (kde#312905)
+    * Added Ctrl+H shortcut to randomize playlist (kde#208061)
+  * CHANGES:
+    * Removed LikeBack (a development feature in debug builds).
+      (kde#312498) (kde#252323)
+    * Collection Browser: Artist level was renamed to Track Artist
+      and replaced by Album Artist by default. Various Artists
+      item is no longer shown under Track Artist level.
+    * Removed the splash screen.
+    * Playlist-related actions were harmonized, double-clicking
+      or pressing enter will append tracks to playlist, using any
+      "play media" action will prepend tracks to queue and
+      immediately start playing; middle-clicking or will append
+      & play while other append or replace actions will no longer
+      start playback. (kde#145468, kde#145490, kde#194549)
+    * When a new collection plugin is enabled, its collections
+      appear immediately without a need for restart.
+    * Update the MusicBrainz tagger to MusicBrainz web service 2,
+      make it show some more good suggestions for tagging, and add
+      some options to help choosing the best results.
+    * Add note about generating .mood files into Moodbar Options;
+      (kde#289483)
+    * Amarok now depends on Qt 4.8.2.
+    * Add prepareToQuit() signal to Amarok.Window script bindings;
+      (kde#241066)
+    * Data CDs are now recognized in Amarok; (kde#316128)
+    * On-Screen-Display now uses the system font instead of
+      hardcoded sans-serif. (kde#248707)
+    * Fancy behavior of some context menus showing different
+      actions when Shift key is held has been reverted.
+      All entries are now shown all the time.
+    * The dynamic playlist behavior has changed. It will no longer
+      generate "pretty good" playlists that do not fulfill the
+      given biases. Instead it might add no song at all if given
+      impossible-to-fulfill conditions.
+    * The "tracks have been hidden in the playlist" warning when
+      filtering the playlist is now displayed inside the playlist.
++++ 1258 more lines (skipped)
++++ between /dev/null
++++ and /work/SRC/openSUSE:13.2:Update/.amarok.3913.new/amarok.changes

New:
----
  0001-Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch
  0002-Don-t-allow-adding-Analyzer-applet-when-not-supporte.patch
  0003-Optimization-Don-t-draw-more-than-necessary.patch
  0004-Fix-reading-Album-Artist-Compilation-Disc-Number-in-.patch
  0005-Sync-playlist-search-config-instantly.patch
  0006-Don-t-suppress-html-tag-like-characters.patch
  0007-Fix-performance-issue-with-large-podcast-feeds.patch
  0008-Clean-up-the-leftover-of-strigi-removal.patch
  0009-Fix-Ampache-plugin-connections.patch
  Enable_Wikipedia_over_SSL.patch
  amarok-2.8.0.tar.bz2
  amarok.changes
  amarok.spec
  flac_mimetype_bnc671581.diff
  initial-preference.diff
  revert_solid_workaround.diff

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ amarok.spec ++++++
#
# spec file for package amarok
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


%bcond_with ffmpeg

Name:           amarok
Version:        2.8.0
Release:        0
Summary:        Media Player for KDE
License:        GPL-2.0+
Group:          Productivity/Multimedia/Sound/Players
Url:            http://amarok.kde.org/
Source0:        
ftp://ftp.kde.org/pub/kde/stable/%{name}/%{version}/src/%{name}-%{version}.tar.bz2
# for reproducible builds
Source99:       %{name}.changes
# PATCH-FIX-OPENSUSE initial-preference.diff bnc#605522 [email protected] -- 
Increase initial preference to be used for audio files instead of Kaffeine
Patch1:         initial-preference.diff
# PATCH-FIX-OPENSUSE flac_mimetype_bnc671581.diff bnc#671581 [email protected] -- 
Support for the changed mimetype for flac files
Patch2:         flac_mimetype_bnc671581.diff
# PATCH-FIX-UPSTREAM revert_solid_workaround.diff
Patch3:         revert_solid_workaround.diff
# PATCH-FIX-UPSTREAM 
0001-Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch -- avoids 
adding the analyzer applet on phonon backends that don't support it (e.g. vlc)
Patch100:       0001-Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch
# PATCH-FIX-UPSTREAM 
0002-Don-t-allow-adding-Analyzer-applet-when-not-supporte.patch -- Don't allow 
adding Analyzer applet when not supported.
# Also now shows an error message explaining why it can't be used.
Patch101:       0002-Don-t-allow-adding-Analyzer-applet-when-not-supporte.patch
# PATCH-FIX-UPSTREAM 0003-Optimization-Don-t-draw-more-than-necessary.patch -- 
optimization for Analyzer applet
Patch102:       0003-Optimization-Don-t-draw-more-than-necessary.patch
# PATCH-FIX-UPSTREAM 
0004-Fix-reading-Album-Artist-Compilation-Disc-Number-in-.patch -- fixes 
reading APE tags (kde#323735)
Patch103:       0004-Fix-reading-Album-Artist-Compilation-Disc-Number-in-.patch
# PATCH-FIX-UPSTREAM 0005-Sync-playlist-search-config-instantly.patch -- 
kde#324295
Patch104:       0005-Sync-playlist-search-config-instantly.patch
# PATCH-FIX-UPSTREAM 0006-Don-t-suppress-html-tag-like-characters.patch -- 
kde#324614
Patch105:       0006-Don-t-suppress-html-tag-like-characters.patch
# PATCH-FIX-UPSTREAM 0007-Fix-performance-issue-with-large-podcast-feeds.patch 
-- kde#283022
Patch106:       0007-Fix-performance-issue-with-large-podcast-feeds.patch
# PATCH-FIX-UPSTREAM: 0008-Clean-up-the-leftover-of-strigi-removal.patch - 
remove unneded Strigi reference
Patch107:       0008-Clean-up-the-leftover-of-strigi-removal.patch
# PATCH-FIX-OPENSUSE 0009-Fix-Ampache-plugin-connections.patch - Unbreak 
Ampache plugin login (under review upstream)
Patch108:       0009-Fix-Ampache-plugin-connections.patch
# PATCH-FIX-UPSTREAM Enable_Wikipedia_over_SSL.patch boo#934730, kde#349313 - 
Unbreak Wikipedia applet by enabling SSL
Patch109:       Enable_Wikipedia_over_SSL.patch
# Required for the fdupes macro
BuildRequires:  fdupes
BuildRequires:  gdk-pixbuf-devel
BuildRequires:  libcurl-devel
BuildRequires:  pkgconfig(glib-2.0)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
%if %{with ffmpeg}
BuildRequires:  libffmpeg-devel
BuildRequires:  libofa-devel
%endif
BuildRequires:  libgcrypt-devel
BuildRequires:  libgpod-devel >= 0.7.0
BuildRequires:  libkde4-devel >= 4.6.0
BuildRequires:  liblastfm-devel
BuildRequires:  libmtp-devel
BuildRequires:  libmygpo-qt-devel >= 1.0.5
BuildRequires:  libmysqlclient-devel
BuildRequires:  libmysqld-devel
BuildRequires:  libopenssl-devel
BuildRequires:  libqca2-devel
BuildRequires:  libqjson-devel
BuildRequires:  libqt4-devel >= 4.8.2
BuildRequires:  libxml2-devel
BuildRequires:  loudmouth-devel
BuildRequires:  oxygen-icon-theme
BuildRequires:  qt4-qtscript
BuildRequires:  taglib
BuildRequires:  taglib-devel >= 1.7
BuildRequires:  taglib-extras-devel >= 1.0
BuildRequires:  tcpd-devel
%if 0%{?suse_version}
BuildRequires:  update-desktop-files
%endif
Requires:       libtag-extras1 >= 1.0
Requires:       phonon-backend
Requires:       taglib >= 1.7
# Make sure to require at least the version used for linking to avoid undefined 
symbols at runtime
%define required_libtag  %(rpm -qf `ldd $(type -P tagreader) | awk 
'/libtag.so.[0-9]/{ print $3 }'`)
%requires_ge  %{required_libtag}
Recommends:     %{name}-lang = %{version}
Recommends:     clamz
Recommends:     moodbar
Recommends:     qt4-qtscript
Provides:       kde4-amarok = 2.0.90
Obsoletes:      kde4-amarok <= 2.0.89
%kde4_runtime_requires

%description
Amarok is a media player for all kinds of media. This includes MP3, Ogg
Vorbis, audio CDs, podcasts and streams. Play lists can be stored in
.m3u or .pls files.

%lang_package
%prep
: required_libtag '%{required_libtag}'
%setup -q
%patch1
%patch2
%patch3 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
%patch103 -p1
%patch104 -p1
%patch105 -p1
%patch106 -p1
%patch107 -p1
%patch108 -p1
%patch109 -p1

# Remove build time references so build-compare can do its work
FAKE_BUILDDATE=$(LC_ALL=C date -u -r %{S:99} '+%%b %%e %%Y')
sed -i "s/__DATE__/\"$FAKE_BUILDDATE\"/" src/main.cpp

%build
%ifarch ppc ppc64
export RPM_OPT_FLAGS="%{optflags} -mminimal-toc"
%endif
%cmake_kde4 -d build
%make_jobs

%install
%kde4_makeinstall -C build

# Remove *.so files (not needed), fix "devel-file-in-non-devel-package" rpmlint 
warning
# "libampache_account_login.so" should not be removed
rm -f 
%{buildroot}%{_kde4_libdir}/libamarok{core,lib,ocsclient,pud,shared,-sqlcollection,-transcoding}.so

#bnc722284 amarok is not really a good player for audio-cds, remove the action 
for solid
rm -f %{buildroot}%{_kde4_appsdir}/solid/actions/amarok-play-audiocd.desktop

  # Copy the icon for amzdownloader over from oxygen
  for i in 16 22 32 48
  do
     mkdir -p %{buildroot}%{_kde4_iconsdir}/hicolor/${i}x${i}/actions
     cp %{_kde4_iconsdir}/oxygen/${i}x${i}/actions/download.png 
%{buildroot}%{_kde4_iconsdir}/hicolor/${i}x${i}/actions/
  done

%if 0%{?suse_version}
%suse_update_desktop_file amarok Qt KDE AudioVideo Audio Player
%suse_update_desktop_file -r amzdownloader Qt KDE AudioVideo Audio Player
%endif

%fdupes -s %{buildroot}

%find_lang amarok
%find_lang amarokcollectionscanner_qt amarok.lang
%find_lang amarokpkg amarok.lang

%kde_post_install

%post
/sbin/ldconfig
%{_kde4_bindir}/update-mime-database %{_kde4_datadir}/mime > /dev/null 2>&1 || :

%postun
/sbin/ldconfig
%{_kde4_bindir}/update-mime-database %{_kde4_datadir}/mime > /dev/null 2>&1 || :

%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING* ChangeLog README TODO
%{_kde4_bindir}/amarok
%{_kde4_bindir}/amarok_afttagger
%{_kde4_bindir}/amarokcollectionscanner
%{_kde4_bindir}/amarokmp3tunesharmonydaemon
%{_kde4_bindir}/amarokpkg
%{_kde4_bindir}/amzdownloader
%{_kde4_modulesdir}/amarok_*
%{_kde4_modulesdir}/kcm_amarok_service_*
%{_kde4_libdir}/libamarok-sqlcollection.so.*
%{_kde4_libdir}/libamarok-transcoding.so.*
%{_kde4_libdir}/libamarokcore.so.*
%{_kde4_libdir}/libamaroklib.so.*
%{_kde4_libdir}/libamarokocsclient.so.*
%{_kde4_libdir}/libamarokpud.so.*
%{_kde4_libdir}/libamarokshared.so.*
%{_kde4_libdir}/libampache_account_login.so
%{_kde4_libdir}/libamarok_service_lastfm_shared.so
%{_kde4_applicationsdir}/amarok.desktop
%{_kde4_applicationsdir}/amarok_containers.desktop
%{_kde4_applicationsdir}/amzdownloader.desktop
%{_datadir}/dbus-1/interfaces/org.freedesktop.MediaPlayer.player.xml
%{_datadir}/dbus-1/interfaces/org.freedesktop.MediaPlayer.root.xml
%{_datadir}/dbus-1/interfaces/org.freedesktop.MediaPlayer.tracklist.xml
%{_datadir}/dbus-1/interfaces/org.kde.amarok.App.xml
%{_datadir}/dbus-1/interfaces/org.kde.amarok.Collection.xml
%{_datadir}/dbus-1/interfaces/org.kde.amarok.Mpris1Extensions.Player.xml
%{_datadir}/dbus-1/interfaces/org.kde.amarok.Mpris2Extensions.Player.xml
%{_datadir}/mime/packages/amzdownloader.xml
%{_kde4_iconsdir}/hicolor/*/apps/amarok.*
%{_kde4_iconsdir}/hicolor/*/actions/download.png
%{_kde4_appsdir}/amarok/
%dir %{_kde4_appsdir}/desktoptheme
%dir %{_kde4_appsdir}/desktoptheme/default
%dir %{_kde4_appsdir}/desktoptheme/default/widgets
%{_kde4_appsdir}/desktoptheme/default/widgets/amarok-*
%{_kde4_appsdir}/kconf_update/amarok-2.4.1-tokens_syntax_update.pl
%{_kde4_appsdir}/kconf_update/amarok.upd
%{_kde4_sharedir}/config.kcfg/amarokconfig.kcfg
%{_kde4_configdir}/amarok*
%{_kde4_servicesdir}/ServiceMenus/amarok_append.desktop
%{_kde4_servicesdir}/amarok-*
%{_kde4_servicesdir}/amarok_*
%{_kde4_servicesdir}/amarok.protocol
%{_kde4_servicesdir}/amarok*.protocol
%{_kde4_servicetypesdir}/amarok_*

%files lang -f amarok.lang
%defattr(-,root,root,-)

%changelog
++++++ 0001-Don-t-add-the-analyzer-applet-when-Phonon-doesn-t-su.patch ++++++
>From e631534993c03244a36ed013c186ad8bf83ca1fd Mon Sep 17 00:00:00 2001
From: Mark Kretschmann <[email protected]>
Date: Sun, 18 Aug 2013 12:22:35 +0200
Subject: [PATCH 02/10] Don't add the analyzer applet when Phonon doesn't
 support it.

Stupid... I forgot about that file.

BUG: 323632
BACKPORT
---
 data/amarok_homerc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/data/amarok_homerc b/data/amarok_homerc
index d2da7ed..4a5aa4b 100644
--- a/data/amarok_homerc
+++ b/data/amarok_homerc
@@ -1,3 +1,3 @@
 [Containment 0]
 firstShowingApplet=0
-plugins=currenttrack,analyzer,wikipedia,lyrics
+plugins=currenttrack,wikipedia,lyrics
-- 
1.8.3.4

++++++ 0002-Don-t-allow-adding-Analyzer-applet-when-not-supporte.patch ++++++
>From 2b87fb43c550e946acfb47b3c5b217a07fcefa0c Mon Sep 17 00:00:00 2001
From: Mark Kretschmann <[email protected]>
Date: Thu, 22 Aug 2013 16:47:30 +0200
Subject: [PATCH 1/1] Don't allow adding Analyzer applet when not supported.

Also now shows an error message explaining why it can't be used.

BUG: 323119
---
 src/EngineController.cpp                            |  7 +++++++
 src/EngineController.h                              |  5 +++++
 src/context/Containment.h                           |  2 +-
 src/context/ContextView.cpp                         | 21 ++-------------------
 src/context/ContextView.h                           |  5 -----
 .../verticallayout/VerticalToolbarContainment.cpp   | 17 +++++++++++++----
 .../verticallayout/VerticalToolbarContainment.h     |  4 ++--
 7 files changed, 30 insertions(+), 31 deletions(-)

diff --git a/src/EngineController.cpp b/src/EngineController.cpp
index 99adb53..82ca86b 100644
--- a/src/EngineController.cpp
+++ b/src/EngineController.cpp
@@ -926,6 +926,13 @@ bool EngineController::supportsGainAdjustments() const
     return m_preamp;
 }
 
+bool EngineController::supportsAudioDataOutput() const
+{
+    const Phonon::AudioDataOutput out;
+    return out.isValid();
+}
+
+
 
//////////////////////////////////////////////////////////////////////////////////////////
 // PRIVATE SLOTS
 
//////////////////////////////////////////////////////////////////////////////////////////
diff --git a/src/EngineController.h b/src/EngineController.h
index c4fae9a..8735a71 100644
--- a/src/EngineController.h
+++ b/src/EngineController.h
@@ -313,6 +313,11 @@ public slots:
      */
     bool supportsGainAdjustments() const;
 
+    /**
+     * Return true if the current Phonon backend supports visualizations.
+     */
+    bool supportsAudioDataOutput() const;
+
 Q_SIGNALS:
     /**
      * Emitted when the playback stops while playing a track.
diff --git a/src/context/Containment.h b/src/context/Containment.h
index a0f5d7c..9b54b75 100644
--- a/src/context/Containment.h
+++ b/src/context/Containment.h
@@ -51,7 +51,7 @@ public:
 public slots:
     void showApplet( Plasma::Applet* ) {}
     void moveApplet( Plasma::Applet*, int, int ) {}
-    virtual Applet* addApplet( const QString& pluginName, const int ) { 
Q_UNUSED( pluginName ); return 0; }
+    virtual void addApplet( const QString& pluginName, const int ) = 0;
 };
 
 } // Context namespace
diff --git a/src/context/ContextView.cpp b/src/context/ContextView.cpp
index e7eeb49..ce28d8d 100644
--- a/src/context/ContextView.cpp
+++ b/src/context/ContextView.cpp
@@ -36,6 +36,7 @@
 #include "core/support/Amarok.h"
 #include "core/support/Debug.h"
 #include "core/meta/Meta.h"
+#include "EngineController.h"
 
 #include <plasma/dataenginemanager.h>
 
@@ -221,12 +222,8 @@ ContextView::loadConfig()
             const bool firstTimeWithAnalyzer = Amarok::config( "Context View" 
).readEntry( "firstTimeWithAnalyzer", true );
             if( firstTimeWithAnalyzer )
             {
-                // Check if the Phonon backend implements all features 
required by the analyzer
-                Phonon::AudioDataOutput out;
-                const bool phononCanHandleAnalyzer = out.isValid();
-
                 QStringList plugins = cg.readEntry( "plugins", QStringList() );
-                if( phononCanHandleAnalyzer && !plugins.contains( "analyzer" ) 
)
+                if( EngineController::instance()->supportsAudioDataOutput() && 
!plugins.contains( "analyzer" ) )
                 {
                     Amarok::config( "Context View" ).writeEntry( 
"firstTimeWithAnalyzer", false );
 
@@ -244,20 +241,6 @@ ContextView::loadConfig()
     PERF_LOG( "Done loading config" );
 }
 
-Plasma::Applet*
-ContextView::addApplet( const QString& name, const QStringList& args )
-{
-    QVariantList argList;
-    QStringListIterator i(args);
-    while( i.hasNext() )
-        argList << QVariant( i.next() );
-
-    if( !containment() )
-        contextScene()->addContainment( "amarok_containment_vertical" );
-
-    return containment()->addApplet( name, argList );
-}
-
 void
 ContextView::addCollapseAnimation( QAbstractAnimation *anim )
 {
diff --git a/src/context/ContextView.h b/src/context/ContextView.h
index 1593f20..0cd5236 100644
--- a/src/context/ContextView.h
+++ b/src/context/ContextView.h
@@ -98,11 +98,6 @@ public:
 
 public slots:
     /**
-     * Add the applet with the given plugin name to the context view. Will add 
in default position, which is at
-     *  the end of the applet list.
-     */
-    Plasma::Applet* addApplet(const QString& name, const QStringList& args = 
QStringList());
-    /**
      * Convenience methods to show and hide the applet explorer.
      */
     void hideAppletExplorer();
diff --git 
a/src/context/containments/verticallayout/VerticalToolbarContainment.cpp 
b/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
index 783d3db..3a9fdc8 100644
--- a/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
+++ b/src/context/containments/verticallayout/VerticalToolbarContainment.cpp
@@ -19,7 +19,10 @@
 #include "VerticalToolbarContainment.h"
 
 #include "ContextView.h"
+#include "core/interfaces/Logger.h"
+#include "core/support/Components.h"
 #include "core/support/Debug.h"
+#include "EngineController.h"
 #include "PaletteHandler.h"
 #include "VerticalAppletLayout.h"
 
@@ -136,19 +139,25 @@ Context::VerticalToolbarContainment::updateGeometry()
     m_applets->refresh();
 }
 
-Plasma::Applet*
+void
 Context::VerticalToolbarContainment::addApplet( const QString& pluginName, 
const int loc ) // SLOT
 {
     DEBUG_BLOCK
 
+    if( pluginName == "analyzer" && 
!EngineController::instance()->supportsAudioDataOutput() )
+    {
+        Amarok::Components::logger()->longMessage( i18n( "Error: 
Visualizations are not supported by your current Phonon backend." ),
+                                                   Amarok::Logger::Error ) ;
+
+        return;
+    }
+
     Plasma::Applet* applet = Plasma::Containment::addApplet( pluginName );
 
     Q_ASSERT_X( applet, "addApplet", "FAILED ADDING APPLET TO CONTAINMENT!! 
NOT FOUND!!" );
 
     m_applets->addApplet( applet, loc );
-    applet->setFlag(QGraphicsItem::ItemIsMovable, false);
-
-    return applet;
+    applet->setFlag( QGraphicsItem::ItemIsMovable, false );
 }
 
 void
diff --git 
a/src/context/containments/verticallayout/VerticalToolbarContainment.h 
b/src/context/containments/verticallayout/VerticalToolbarContainment.h
index 31f7632..6c933ab 100644
--- a/src/context/containments/verticallayout/VerticalToolbarContainment.h
+++ b/src/context/containments/verticallayout/VerticalToolbarContainment.h
@@ -48,8 +48,8 @@ class VerticalToolbarContainment : public Containment
         virtual ContextView *view();
 
     public slots:
-        Applet* addApplet( const QString& pluginName, const int );
-        void    appletRemoved( Plasma::Applet* );
+        void addApplet( const QString& pluginName, const int );
+        void appletRemoved( Plasma::Applet* );
         // these slots below are forwarded to the layout
         void showApplet( Plasma::Applet* );
         void moveApplet( Plasma::Applet*, int, int );
-- 
1.8.4

++++++ 0003-Optimization-Don-t-draw-more-than-necessary.patch ++++++
>From 7096e0bae44605b50f3c435308aeb380845c54e8 Mon Sep 17 00:00:00 2001
From: Mark Kretschmann <[email protected]>
Date: Mon, 26 Aug 2013 13:27:01 +0200
Subject: [PATCH 1/1] Optimization: Don't draw more than necessary.

(cherry picked from commit 8d6e72597fdfd3023ac5287ea19d8b8b3747e5ed)
---
 src/context/applets/analyzer/BlockAnalyzer.cpp | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/context/applets/analyzer/BlockAnalyzer.cpp 
b/src/context/applets/analyzer/BlockAnalyzer.cpp
index 62131ba..e1a0b9b 100644
--- a/src/context/applets/analyzer/BlockAnalyzer.cpp
+++ b/src/context/applets/analyzer/BlockAnalyzer.cpp
@@ -35,10 +35,7 @@ BlockAnalyzer::BlockAnalyzer( QWidget *parent )
     , m_columns( 0 )         //uint
     , m_rows( 0 )            //uint
     , m_y( 0 )               //uint
-    , m_barPixmap( 1, 1 )    //null qpixmaps cause crashes
     , m_topBarPixmap( BLOCK_WIDTH, BLOCK_HEIGHT )
-    , m_scope( MIN_COLUMNS ) //Scope
-    , m_store( MAX_COLUMNS, 0 )   //vector<uint>
     , m_fade_bars( FADE_SIZE ) //vector<QPixmap>
     , m_fade_pos( MAX_COLUMNS, 50 ) //vector<uint>
     , m_fade_intensity( MAX_COLUMNS, 32 ) //vector<uint>
@@ -68,6 +65,7 @@ BlockAnalyzer::resizeEvent( QResizeEvent *e )
     m_y = ( height() - ( m_rows * ( BLOCK_HEIGHT + 1 ) ) + 2 ) / 2;

     m_scope.resize( m_columns );
+    m_store.resize( m_columns );

     if( m_rows != oldRows )
     {
@@ -180,10 +178,10 @@ BlockAnalyzer::paintEvent( QPaintEvent* )

         // REMEMBER: y is a number from 0 to m_rows, 0 means all blocks are 
glowing, m_rows means none are
         p.drawPixmap( x * ( BLOCK_WIDTH + 1 ), y * ( BLOCK_HEIGHT + 1 ) + m_y, 
*bar(), 0, y * ( BLOCK_HEIGHT + 1 ), -1, -1 );
-    }

-    for( int x = 0; x < m_store.size(); ++x )
+        // Draw top pixmaps
         p.drawPixmap( x * ( BLOCK_WIDTH + 1 ), int( m_store[x] ) * ( 
BLOCK_HEIGHT + 1 ) + m_y, m_topBarPixmap );
+    }
 }

 void
--
1.8.4

++++++ 0004-Fix-reading-Album-Artist-Compilation-Disc-Number-in-.patch ++++++
>From df6d5c3ded956787797c90cc9ecec8b009b1b096 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bruno=20L=C3=A9on?= <[email protected]>
Date: Fri, 30 Aug 2013 18:29:49 +0200
Subject: [PATCH 1/1] Fix reading Album Artist / Compilation / Disc Number in
 APE tags.

Fix reading of Album Artist and Compilation tag in APE tags.
Add support for reading Disc Number in APE tags.

REVIEW: 112266
BUG: 323735
---
 ChangeLog                           |  2 ++
 shared/tag_helpers/APETagHelper.cpp | 11 ++++++++---
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/shared/tag_helpers/APETagHelper.cpp 
b/shared/tag_helpers/APETagHelper.cpp
index c628694..ba39a10 100644
--- a/shared/tag_helpers/APETagHelper.cpp
+++ b/shared/tag_helpers/APETagHelper.cpp
@@ -30,11 +30,11 @@ APETagHelper::APETagHelper( TagLib::Tag *tag, 
TagLib::APE::Tag *apeTag, Amarok::
             : TagHelper( tag, fileType )
             , m_tag( apeTag )
 {
-    m_fieldMap.insert( Meta::valAlbumArtist, TagLib::String( "Album Artist" ) 
);
+    m_fieldMap.insert( Meta::valAlbumArtist, TagLib::String( "ALBUM ARTIST" ) 
);
     m_fieldMap.insert( Meta::valBpm,         TagLib::String( "BPM" ) );
-    m_fieldMap.insert( Meta::valCompilation, TagLib::String( "Compilation" ) );
+    m_fieldMap.insert( Meta::valCompilation, TagLib::String( "COMPILATION" ) );
     m_fieldMap.insert( Meta::valComposer,    TagLib::String( "Composer" ) );
-    m_fieldMap.insert( Meta::valDiscNr,      TagLib::String( "Disc" ) );
+    m_fieldMap.insert( Meta::valDiscNr,      TagLib::String( "DISC" ) );
     m_fieldMap.insert( Meta::valPlaycount,   TagLib::String( "FMPS_PLAYCOUNT" 
) );
     m_fieldMap.insert( Meta::valRating,      TagLib::String( "FMPS_RATING" ) );
     m_fieldMap.insert( Meta::valScore,       TagLib::String( 
"FMPS_RATING_AMAROK_SCORE" ) );
@@ -58,6 +58,11 @@ APETagHelper::tags() const
                 data.insert( field, qRound( value.toFloat() * 10.0 ) );
             else if( field == Meta::valScore )
                 data.insert( field, value.toFloat() * 100.0 );
+            else if( field == Meta::valDiscNr ) {
+                int disc;
+                disc = splitDiscNr( value ).first;
+                data.insert( field, disc );
+            }
             else
                 data.insert( field, value );
         }
-- 
1.8.4

++++++ 0005-Sync-playlist-search-config-instantly.patch ++++++
>From e44eedd6c42526d4e4cdc14d1bdf18e6660a46ac Mon Sep 17 00:00:00 2001
From: Mark Kretschmann <[email protected]>
Date: Mon, 2 Sep 2013 12:55:42 +0200
Subject: [PATCH 1/1] Sync playlist search config instantly.

BUG: 324295
---
 src/playlist/ProgressiveSearchWidget.cpp | 11 +++++------
 src/playlist/ProgressiveSearchWidget.h   |  5 -----
 2 files changed, 5 insertions(+), 11 deletions(-)

diff --git a/src/playlist/ProgressiveSearchWidget.cpp 
b/src/playlist/ProgressiveSearchWidget.cpp
index e608d9f..eaa0e30 100644
--- a/src/playlist/ProgressiveSearchWidget.cpp
+++ b/src/playlist/ProgressiveSearchWidget.cpp
@@ -147,12 +147,6 @@ ProgressiveSearchWidget::ProgressiveSearchWidget( QWidget 
* parent )
     connect( Amarok::actionCollection()->action( "playlist_clear" ), 
SIGNAL(triggered()), this, SLOT(slotFilterClear()) );
 }
 
-
-ProgressiveSearchWidget::~ProgressiveSearchWidget()
-{
-    Amarok::config( "Playlist Search" ).writeEntry( "ShowOnlyMatches", 
m_showOnlyMatches );
-}
-
 void ProgressiveSearchWidget::slotFilterChanged( const QString & filter )
 {
     DEBUG_BLOCK
@@ -350,6 +344,11 @@ void ProgressiveSearchWidget::slotShowOnlyMatches( bool 
onlyMatches )
     m_showOnlyMatches = onlyMatches;
     m_nextAction->setVisible( !onlyMatches );
     m_previousAction->setVisible( !onlyMatches );
+
+    KConfigGroup cg = Amarok::config( "Playlist Search" );
+    cg.writeEntry( "ShowOnlyMatches", m_showOnlyMatches );
+    cg.sync();
+
     emit( showOnlyMatches( onlyMatches ) );
 }
 
diff --git a/src/playlist/ProgressiveSearchWidget.h 
b/src/playlist/ProgressiveSearchWidget.h
index 8e810ba..05d7468 100644
--- a/src/playlist/ProgressiveSearchWidget.h
+++ b/src/playlist/ProgressiveSearchWidget.h
@@ -52,11 +52,6 @@ public:
      */
     ProgressiveSearchWidget( QWidget * parent );
 
-    /**
-     * Destructor.
-     */
-    ~ProgressiveSearchWidget();
-
     QString currentFilter() const { return m_searchEdit->text(); }
 
     void focusInputLine();
-- 
1.8.4

++++++ 0006-Don-t-suppress-html-tag-like-characters.patch ++++++
>From 372d77b2fe833d1eb27b35732199dd6e28443de2 Mon Sep 17 00:00:00 2001
From: Mark Kretschmann <[email protected]>
Date: Sat, 7 Sep 2013 16:02:52 +0200
Subject: [PATCH 1/1] Don't suppress html tag like characters.

Example: "MY<DSMBR" by Linkin Park was shown as "MY".

BUG: 324614
---
 src/context/widgets/TextScrollingWidget.cpp | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/src/context/widgets/TextScrollingWidget.cpp 
b/src/context/widgets/TextScrollingWidget.cpp
index 6963915..b119a9d 100644
--- a/src/context/widgets/TextScrollingWidget.cpp
+++ b/src/context/widgets/TextScrollingWidget.cpp
@@ -15,6 +15,7 @@
  
****************************************************************************************/
 
 #define DEBUG_PREFIX "TextScrollingWidget"
+
 #include "TextScrollingWidget.h"
 
 #include "core/support/Debug.h"
@@ -26,7 +27,6 @@
 #include <QGraphicsSimpleTextItem>
 #include <QGraphicsSceneHoverEvent>
 #include <QPainter>
-#include <QTextDocument>
 #include <QTimer>
 #include <QPropertyAnimation>
 
@@ -81,22 +81,16 @@ public:
 
     void setScrollingText( const QString &str )
     {
-        if( text != str )
-        {
-            doc.setHtml( str );
-            text = doc.toPlainText();
-            doc.clear();
-        }
+        text = str;
     }
 
     void setText( const QString &str )
     {
-        doc.setHtml( str );
-        text = doc.toPlainText();
+        text = str;
         textItem->setText( text );
+
         if( animation )
             animation.data()->stop();
-        doc.clear();
 
     }
 
@@ -109,7 +103,6 @@ public:
     Plasma::FrameSvg *textBackground; // background svg for text
     QWeakPointer<QPropertyAnimation> animation; // scroll animation
     QGraphicsSimpleTextItem *textItem;
-    QTextDocument doc;
 
 private:
     TextScrollingWidget *const q_ptr;
-- 
1.8.4

++++++ 0007-Fix-performance-issue-with-large-podcast-feeds.patch ++++++
>From a5b0f2afe1b62de636798b7452e4e3abae86db72 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Frank=20Meerk=C3=B6tter?= <[email protected]>
Date: Sun, 8 Sep 2013 19:59:57 +0200
Subject: [PATCH 1/1] Fix performance issue with large podcast feeds.

The podcast UI was very slow with channels with a large
number of episodes (1000+).

The root cause was that SqlPodcastChannel::tracks() was implemented
in such a way that it was expensive to call it. Unfortunately
it is extensively called by the PlaylistBrower...

BUG: 283022
REVIEW: 112417
---
 src/browsers/playlistbrowser/PlaylistBrowserModel.cpp |  2 +-
 src/core-impl/podcasts/sql/SqlPodcastMeta.cpp         | 13 +++++++++++--
 src/core-impl/podcasts/sql/SqlPodcastMeta.h           |  2 ++
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp 
b/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp
index 281694a..32d3d8b 100644
--- a/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp
+++ b/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp
@@ -308,7 +308,7 @@ PlaylistBrowserModel::rowCount( const QModelIndex &parent ) 
const
     else if( !IS_TRACK(parent) )
     {
         Playlists::PlaylistPtr playlist = m_playlists.value( 
parent.internalId() );
-        return playlist->tracks().count();
+        return playlist->trackCount();
     }
 
     return 0;
diff --git a/src/core-impl/podcasts/sql/SqlPodcastMeta.cpp 
b/src/core-impl/podcasts/sql/SqlPodcastMeta.cpp
index 20bcaff..08690ea 100644
--- a/src/core-impl/podcasts/sql/SqlPodcastMeta.cpp
+++ b/src/core-impl/podcasts/sql/SqlPodcastMeta.cpp
@@ -527,6 +527,7 @@ SqlPodcastChannel::SqlPodcastChannel( SqlPodcastProvider 
*provider,
                                             const QStringList &result )
     : Podcasts::PodcastChannel()
     , m_episodesLoaded( false )
+    , m_trackCacheIsValid( false )
     , m_provider( provider )
 {
     SqlStorage *sqlStorage = CollectionManager::instance()->sqlStorage();
@@ -553,6 +554,7 @@ SqlPodcastChannel::SqlPodcastChannel( 
Podcasts::SqlPodcastProvider *provider,
                                             Podcasts::PodcastChannelPtr 
channel )
     : Podcasts::PodcastChannel()
     , m_dbId( 0 )
+    , m_trackCacheIsValid( false )
     , m_provider( provider )
     , m_filenameLayout( "%default%" )
 {
@@ -731,7 +733,7 @@ SqlPodcastChannel::addEpisode( PodcastEpisodePtr episode )
     notifyObserversTrackAdded( Meta::TrackPtr::dynamicCast( sqlEpisode ), i );
 
     applyPurge();
-
+    m_trackCacheIsValid = false;
     return PodcastEpisodePtr::dynamicCast( sqlEpisode );
 }
 
@@ -759,6 +761,7 @@ SqlPodcastChannel::applyPurge()
                     purgeIndex++;
             }
         }
+        m_trackCacheIsValid = false;
     }
 }
 
@@ -813,6 +816,7 @@ SqlPodcastChannel::deleteFromDb()
        sqlEpisode->deleteFromDb();
        m_episodes.removeOne( sqlEpisode );
     }
+    m_trackCacheIsValid = false;
 
     sqlStorage->query(
         QString( "DELETE FROM podcastchannels WHERE id = %1;" ).arg( dbId() ) 
);
@@ -868,12 +872,17 @@ SqlPodcastChannel::loadEpisodes()
     }
 
     m_episodesLoaded = true;
+    m_trackCacheIsValid = false;
 }
 
 Meta::TrackList
 Podcasts::SqlPodcastChannel::tracks()
 {
-    return Podcasts::SqlPodcastEpisode::toTrackList( m_episodes );
+    if ( !m_trackCacheIsValid ) {
+        m_episodesAsTracksCache = Podcasts::SqlPodcastEpisode::toTrackList( 
m_episodes );
+        m_trackCacheIsValid = true;
+    }
+    return m_episodesAsTracksCache;
 }
 
 void
diff --git a/src/core-impl/podcasts/sql/SqlPodcastMeta.h 
b/src/core-impl/podcasts/sql/SqlPodcastMeta.h
index 02a18d3..ed346ba 100644
--- a/src/core-impl/podcasts/sql/SqlPodcastMeta.h
+++ b/src/core-impl/podcasts/sql/SqlPodcastMeta.h
@@ -155,6 +155,8 @@ class SqlPodcastChannel : public Podcasts::PodcastChannel
         bool m_episodesLoaded;
 
         SqlPodcastEpisodeList m_episodes;
+        bool m_trackCacheIsValid;
+        Meta::TrackList m_episodesAsTracksCache;
         SqlPodcastProvider *m_provider;
         QString m_filenameLayout; //specifies filename layout for episodes
 };
-- 
1.8.4

++++++ 0008-Clean-up-the-leftover-of-strigi-removal.patch ++++++
>From 81ad30537c90da4bacddede446f814cfc70bef5c Mon Sep 17 00:00:00 2001
From: Jekyll Wu <[email protected]>
Date: Wed, 27 Nov 2013 15:37:53 +0800
Subject: [PATCH 1/2] Clean up the leftover of strigi removal

This is a follow up of commit 56ae345ad143a4101eebbe70f176a730c594e207

REVIEW: 114148
---
 src/services/ampache/CMakeLists.txt | 1 -
 1 file changed, 1 deletion(-)

diff --git a/src/services/ampache/CMakeLists.txt 
b/src/services/ampache/CMakeLists.txt
index 039e7fc..dd298e8 100644
--- a/src/services/ampache/CMakeLists.txt
+++ b/src/services/ampache/CMakeLists.txt
@@ -6,7 +6,6 @@
             ${Amarok_SOURCE_DIR}/src/statusbar
             ${CMAKE_CURRENT_BINARY_DIR}/../../..
             ${KDE4_INCLUDE_DIR}
-            ${STRIGI_INCLUDE_DIR}
             ${QT_INCLUDES}
             )
 
-- 
2.2.1

++++++ 0009-Fix-Ampache-plugin-connections.patch ++++++
++++ 638 lines (skipped)

++++++ Enable_Wikipedia_over_SSL.patch ++++++
From: Frank Meerkötter <[email protected]>
Date: Thu, 12 Sep 2013 19:44:03 +0000
Subject: Enable Wikipedia over SSL.
X-Git-Tag: v2.8.90
X-Git-Url: 
http://quickgit.kde.org/?p=amarok.git&a=commitdiff&h=284342b48dc32341c3553fd2b0ee5069d75b58f9
---
Enable Wikipedia over SSL.

This patch makes SSL the default. It also adds a checkbox to disable
it so if there would be a problem a fallback to HTTP is possible.

BUG: 322249
REVIEW: 112706
FIXED-IN: 2.9
---


--- a/src/context/applets/wikipedia/WikipediaApplet.cpp
+++ b/src/context/applets/wikipedia/WikipediaApplet.cpp
@@ -250,11 +250,14 @@
     }
     langList = list;
     useMobileWikipedia = (generalSettingsUi.mobileCheckBox->checkState() == 
Qt::Checked);
+    useSSL = (generalSettingsUi.sslCheckBox->checkState() == Qt::Checked);
     Amarok::config("Wikipedia Applet").writeEntry( "PreferredLang", list );
     Amarok::config("Wikipedia Applet").writeEntry( "UseMobile", 
useMobileWikipedia );
+    Amarok::config( "Wikipedia Applet" ).writeEntry( "UseSSL", useSSL );
     _paletteChanged( App::instance()->palette() );
     dataContainer->setData( "lang", langList );
     dataContainer->setData( "mobile", useMobileWikipedia );
+    dataContainer->setData( "ssl", useSSL );
     scheduleEngineUpdate();
 }
 
@@ -656,9 +659,11 @@
     // Read config and inform the engine.
     d->langList = Amarok::config("Wikipedia Applet").readEntry( 
"PreferredLang", QStringList() << "en" );
     d->useMobileWikipedia = Amarok::config("Wikipedia Applet").readEntry( 
"UseMobile", false );
+    d->useSSL = Amarok::config( "Wikipedia Applet" ).readEntry( "UseSSL", true 
);
     d->_paletteChanged( App::instance()->palette() );
     d->dataContainer->setData( "lang", d->langList );
     d->dataContainer->setData( "mobile", d->useMobileWikipedia );
+    d->dataContainer->setData( "ssl", d->useSSL );
     d->scheduleEngineUpdate();
 
     updateConstraints();
@@ -787,6 +792,7 @@
     QWidget *genSettings = new QWidget;
     d->generalSettingsUi.setupUi( genSettings );
     d->generalSettingsUi.mobileCheckBox->setCheckState( d->useMobileWikipedia 
? Qt::Checked : Qt::Unchecked );
+    d->generalSettingsUi.sslCheckBox->setCheckState( d->useSSL ? Qt::Checked : 
Qt::Unchecked );
 
     connect( d->languageSettingsUi.downloadButton, SIGNAL(clicked()), this, 
SLOT(_getLangMap()) );
     connect( parent, SIGNAL(okClicked()), this, SLOT(_loadSettings()) );

--- a/src/context/applets/wikipedia/WikipediaApplet_p.h
+++ b/src/context/applets/wikipedia/WikipediaApplet_p.h
@@ -143,6 +143,7 @@
     bool isForwardHistory;
     bool isBackwardHistory;
     bool useMobileWikipedia;
+    bool useSSL;
 };
 
 class WikipediaSearchLineEdit : public Plasma::LineEdit

--- a/src/context/applets/wikipedia/wikipediaGeneralSettings.ui
+++ b/src/context/applets/wikipedia/wikipediaGeneralSettings.ui
@@ -6,8 +6,8 @@
    <rect>
     <x>0</x>
     <y>0</y>
-    <width>244</width>
-    <height>23</height>
+    <width>253</width>
+    <height>62</height>
    </rect>
   </property>
   <property name="sizePolicy">
@@ -32,6 +32,13 @@
        </property>
       </widget>
      </item>
+     <item row="1" column="1">
+      <widget class="QCheckBox" name="sslCheckBox">
+       <property name="text">
+        <string>Use &amp;SSL</string>
+       </property>
+      </widget>
+     </item>
     </layout>
    </item>
   </layout>

--- a/src/context/engines/wikipedia/WikipediaEngine.cpp
+++ b/src/context/engines/wikipedia/WikipediaEngine.cpp
@@ -45,6 +45,7 @@
         : q_ptr( parent )
         , currentSelection( Artist )
         , useMobileVersion( false )
+        , useSSL( true )
         , dataContainer( 0 )
     {}
     ~WikipediaEnginePrivate() {}
@@ -88,6 +89,7 @@
         }
     } m_previousTrackMetadata;
     bool useMobileVersion;
+    bool useSSL;
 
     Plasma::DataContainer *dataContainer;
 
@@ -165,6 +167,16 @@
         {
             debug() << (mobile ? "switching to mobile wikipedia" : "switching 
to normal wikipedia");
             useMobileVersion = mobile;
+            updateEngine();
+        }
+    }
+
+    if( data.contains( QLatin1String("ssl") ) )
+    {
+        const bool ssl = data.value( QLatin1String("ssl") ).toBool();
+        if( ssl != useSSL )
+        {
+            useSSL = ssl;
             updateEngine();
         }
     }
@@ -532,7 +544,7 @@
     Q_Q( WikipediaEngine );
     KUrl pageUrl;
     QString host( ".wikipedia.org" );
-    pageUrl.setScheme( QLatin1String("http") );
+    pageUrl.setScheme( useSSL ? QLatin1String( "https" ) : QLatin1String( 
"http" ) );
 
     if( useMobileVersion )
     {
@@ -570,7 +582,7 @@
 {
     Q_Q( WikipediaEngine );
     KUrl url;
-    url.setScheme( QLatin1String("http") );
+    url.setScheme( useSSL ? QLatin1String( "https" ) : QLatin1String( "http" ) 
);
     url.setHost( hostLang + QLatin1String(".wikipedia.org") );
     url.setPath( QLatin1String("/w/api.php") );
     url.addQueryItem( QLatin1String("action"), QLatin1String("query") );
@@ -592,7 +604,7 @@
 {
     Q_Q( WikipediaEngine );
     KUrl url;
-    url.setScheme( QLatin1String("http") );
+    url.setScheme( useSSL ? QLatin1String( "https" ) : QLatin1String( "http" ) 
);
     url.setHost( hostLang + QLatin1String(".wikipedia.org") );
     url.setPath( QLatin1String("/w/api.php") );
     url.addQueryItem( QLatin1String("action"), QLatin1String("query") );

++++++ flac_mimetype_bnc671581.diff ++++++
Index: src/amarok.desktop
===================================================================
--- src/amarok.desktop.orig
+++ src/amarok.desktop
@@ -184,7 +184,7 @@ Comment[zh_TW]=Amarok - 重新探索您
 Icon=amarok
 # Add pure audio formats here, for other formats see amarok_*.desktop files
 # See bug 242292
-MimeType=audio/aac;audio/mp4;audio/mpeg;audio/mpegurl;audio/vnd.rn-realaudio;audio/vorbis;audio/x-flac;audio/x-mp3;audio/x-mpegurl;audio/x-ms-wma;audio/x-musepack;audio/x-oggflac;audio/x-pn-realaudio;audio/x-scpls;audio/x-speex;audio/x-vorbis;audio/x-wav;application/x-ogm-audio;audio/x-vorbis+ogg;audio/ogg;
+MimeType=audio/aac;audio/mp4;audio/mpeg;audio/mpegurl;audio/vnd.rn-realaudio;audio/vorbis;audio/flac;audio/x-mp3;audio/x-mpegurl;audio/x-ms-wma;audio/x-musepack;audio/x-oggflac;audio/x-pn-realaudio;audio/x-scpls;audio/x-speex;audio/x-vorbis;audio/x-wav;application/x-ogm-audio;audio/x-vorbis+ogg;audio/ogg;
 X-DocPath=amarok/index.html
 X-KDE-Keywords=music,podcast
 X-KDE-Keywords[ca]=música,podcast
++++++ initial-preference.diff ++++++
--- src/amarok.desktop  2013-01-17 13:53:54.000000000 +0100
+++ src/amarok.desktop  2013-01-18 06:04:57.679101847 +0100
@@ -224,5 +224,6 @@
 X-KDE-Keywords[zh_CN]=music,podcast,音乐,播客
 X-KDE-Keywords[zh_TW]=music,podcast
 X-KDE-Protocols=http
+InitialPreference=5
 Terminal=false
 Categories=Qt;KDE;AudioVideo;Audio;Player;
++++++ revert_solid_workaround.diff ++++++
diff --git a/src/MediaDeviceCache.cpp b/src/MediaDeviceCache.cpp
index 15583b8..8682f4d 100644
--- a/src/MediaDeviceCache.cpp
+++ b/src/MediaDeviceCache.cpp
@@ -100,11 +100,9 @@ MediaDeviceCache::refreshCache()
             {
                 m_type[device.udi()] = MediaDeviceCache::SolidVolumeType;
                 m_name[device.udi()] = ssa->filePath();
-                m_accessibility[ device.udi() ] = true;
             }
             else
             {
-                m_accessibility[ device.udi() ] = false;
                 debug() << "Solid device is not accessible, will wait until it 
is to consider it added.";
             }
         }
diff --git a/src/MediaDeviceCache.h b/src/MediaDeviceCache.h
index a48d453..0e971cc 100644
--- a/src/MediaDeviceCache.h
+++ b/src/MediaDeviceCache.h
@@ -23,7 +23,6 @@
 #include <QMap>
 #include <QString>
 #include <QStringList>
-#include <QtCore/QTimer>
 
 namespace Solid {
     class Device;
@@ -67,7 +66,6 @@ class AMAROK_EXPORT MediaDeviceCache : p
     private:
         QMap<QString, MediaDeviceCache::DeviceType> m_type;
         QMap<QString, QString> m_name;
-        QMap<QString, bool> m_accessibility;
         QStringList m_volumes;
         static MediaDeviceCache* s_instance;
 };

Reply via email to