Hello community,

here is the log from the commit of package rhythmbox for openSUSE:Factory 
checked in at 2016-03-31 13:03:29
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rhythmbox (Old)
 and      /work/SRC/openSUSE:Factory/.rhythmbox.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rhythmbox"

Changes:
--------
--- /work/SRC/openSUSE:Factory/rhythmbox/rhythmbox.changes      2016-02-17 
12:23:58.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.rhythmbox.new/rhythmbox.changes 2016-03-31 
13:03:37.000000000 +0200
@@ -1,0 +2,8 @@
+Sun Feb 14 10:33:47 UTC 2016 - zai...@opensuse.org
+
+- Add rhythmbox-Port-to-webkit2.patch: Port to webkit2gtk3, patches
+  from upstream bug (bgo#752019).
+- Due to above port, replace pkgconfig(webkitgtk-3.0) for
+  pkgconfig(webkit2gtk-4.0) BuildRequires.
+
+-------------------------------------------------------------------
@@ -7,0 +16,22 @@
+
+-------------------------------------------------------------------
+Mon Jan 25 09:48:14 UTC 2016 - dims...@opensuse.org
+
+- Update to version 3.3:
+  + New plugin supporting Android devices via gvfs-mtp.
+  + Encoding settings are now configurable per device type.
+  + Encoding settings can force lossless files to be transcoded.
+  + Bugs fixed: bgo#733830, bgo#748857, bgo#749015, bgo#751265,
+    bgo#751630, bgo#751961, bgo#752433, bgo#753359, bgo#753767,
+    bgo#755881, bgo#756992, bgo#757225, bgo#760192, bgo#761030.
+  + Updated translations.
+
+-------------------------------------------------------------------
+Wed Dec 23 22:12:27 UTC 2015 - dims...@opensuse.org
+
+- Port to grilo 0.3 (bgo#759589):
+  + Add rhythmbox-grilo-0.3.patch: do the port.
+  + Replace pkgconfig(grilo-0.2) BuildRequires with
+    pkgconfig(grilo-0.3).
+  + Add libtool BuildRequires and call to autoreconf, as the patch
+    touches the build system.

Old:
----
  rhythmbox-3.2.1.tar.xz

New:
----
  rhythmbox-3.3.tar.xz
  rhythmbox-Port-to-webkit2.patch
  rhythmbox-grilo-0.3.patch

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

Other differences:
------------------
++++++ rhythmbox.spec ++++++
--- /var/tmp/diff_new_pack.VdMT9H/_old  2016-03-31 13:03:38.000000000 +0200
+++ /var/tmp/diff_new_pack.VdMT9H/_new  2016-03-31 13:03:38.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rhythmbox
 #
-# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2016 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
@@ -21,28 +21,34 @@
 %bcond_with visualizer
 
 Name:           rhythmbox
-Version:        3.2.1
+Version:        3.3
 Release:        0
 Summary:        GNOME Music Management Application
 License:        GPL-2.0+
 Group:          Productivity/Multimedia/Sound/Players
 Url:            http://www.gnome.org/projects/rhythmbox/
-Source:         
http://download.gnome.org/sources/rhythmbox/3.2/%{name}-%{version}.tar.xz
+Source:         
http://download.gnome.org/sources/rhythmbox/3.3/%{name}-%{version}.tar.xz
+# PATCH-FEATURE-UPSTREAM rhythmbox-grilo-0.3.patch bgo#759589 
dims...@opensuse.org -- Port to grilo 0.3
+Patch0:         rhythmbox-grilo-0.3.patch
+# PATCH-FEATURE-UPSTREAM rhythmbox-Port-to-webkit2.patch bgo#752019 
zai...@opensuse.org -- Port to webkit2gtk3
+Patch1:         rhythmbox-Port-to-webkit2.patch
 BuildRequires:  gobject-introspection-devel
 BuildRequires:  intltool
 BuildRequires:  libdiscid-devel
+# Needed for patch0
+BuildRequires:  libtool
 BuildRequires:  lirc-devel
 BuildRequires:  translation-update-upstream
 BuildRequires:  update-desktop-files
 BuildRequires:  vala
 BuildRequires:  yelp-tools
-BuildRequires:  pkgconfig(grilo-0.2) >= 0.2.0
+BuildRequires:  pkgconfig(grilo-0.3) >= 0.2.0
 BuildRequires:  pkgconfig(gstreamer-1.0) >= 0.11.92
 BuildRequires:  pkgconfig(gstreamer-audio-1.0) >= 0.11.02
 BuildRequires:  pkgconfig(gstreamer-base-1.0) >= 0.11.92
 BuildRequires:  pkgconfig(gstreamer-pbutils-1.0) >= 0.11.92
 BuildRequires:  pkgconfig(gstreamer-plugins-base-1.0) >= 0.11.92
-BuildRequires:  pkgconfig(gtk+-3.0) >= 3.6.0
+BuildRequires:  pkgconfig(gtk+-3.0) >= 3.12.0
 BuildRequires:  pkgconfig(gudev-1.0)
 BuildRequires:  pkgconfig(ice)
 BuildRequires:  pkgconfig(json-glib-1.0)
@@ -61,7 +67,7 @@
 BuildRequires:  pkgconfig(tdb)
 BuildRequires:  pkgconfig(totem-plparser) >= 3.2.0
 %if %{with webkit}
-BuildRequires:  pkgconfig(webkitgtk-3.0)
+BuildRequires:  pkgconfig(webkit2gtk-4.0)
 %endif
 %if %{with visualizer}
 BuildRequires:  pkgconfig(clutter-1.0) >= 1.8
@@ -100,9 +106,14 @@
 %lang_package
 %prep
 %setup -q
+%patch0 -p1
+%patch1 -p1
 translation-update-upstream
 
 %build
+# Needed for patch0
+autopoint --force
+AUTOPOINT='intltoolize --automake --copy' autoreconf --force --install 
--verbose
 export MOZILLA_PLUGINDIR=%{_libdir}/browser-plugins
 %configure\
        --disable-static\
@@ -162,13 +173,11 @@
 %{_libdir}/browser-plugins/librhythmbox-itms-detection-plugin.*
 %dir %{_libdir}/rhythmbox
 %dir %{_libdir}/rhythmbox/plugins
+%{_libdir}/rhythmbox/plugins/android/
 %{_libdir}/rhythmbox/plugins/artsearch/
 %{_libdir}/rhythmbox/plugins/audiocd/
 %{_libdir}/rhythmbox/plugins/audioscrobbler/
 %{_libdir}/rhythmbox/plugins/cd-recorder/
-%if %{with webkit}
-%{_libdir}/rhythmbox/plugins/context/
-%endif
 %{_libdir}/rhythmbox/plugins/daap/
 %{_libdir}/rhythmbox/plugins/dbus-media-server/
 %{_libdir}/rhythmbox/plugins/fmradio/

++++++ rhythmbox-3.2.1.tar.xz -> rhythmbox-3.3.tar.xz ++++++
/work/SRC/openSUSE:Factory/rhythmbox/rhythmbox-3.2.1.tar.xz 
/work/SRC/openSUSE:Factory/.rhythmbox.new/rhythmbox-3.3.tar.xz differ: char 25, 
line 1

++++++ rhythmbox-Port-to-webkit2.patch ++++++
>From b971c9017c3295d50f2611220bd2dc58c33b7ffb Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanz...@igalia.com>
Date: Fri, 8 Jan 2016 08:41:53 -0600
Subject: [PATCH] Remove context plugin

It has not been ported to WebKit2.

Ian: "I could look at the context plugin but it seems generally a bit
broken even with wk1 so I would prefer to remove it."
---
 plugins/Makefile.am | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index bea62b2..5f60c6a 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -24,10 +24,6 @@ SUBDIRS +=                                           \
        soundcloud                                      \
        rb
 
-if WITH_WEBKIT
-SUBDIRS += context
-endif
-
 endif # ENABLE_PYTHON
 
 if WITH_LIRC
-- 
2.5.0

>From 499b26235b62f33edd551e795f3e5b6310496e0b Mon Sep 17 00:00:00 2001
From: Iain Lane <i...@orangesquash.org.uk>
Date: Fri, 8 Jan 2016 12:13:40 +0000
Subject: [PATCH] Port rb-podcast-properties-dialog to webkit2

---
 configure.ac                           |   3 +-
 podcast/rb-podcast-properties-dialog.c | 111 ++++++++++++++++-----------------
 2 files changed, 54 insertions(+), 60 deletions(-)

diff --git a/configure.ac b/configure.ac
index 4457182..cba7789 100644
--- a/configure.ac
+++ b/configure.ac
@@ -60,7 +60,6 @@ LIBSECRET_REQS=0.18
 
 LIBNOTIFY_REQS=0.7.0
 BRASERO_MIN_REQS=2.31.5
-WEBKIT_MIN_REQS=1.3.9
 PYGOBJECT_REQUIRED=3.0.0
 
 GLIB_GSETTINGS
@@ -440,7 +439,7 @@ AC_ARG_WITH(webkit,
                           [Use WebKit to display HTML]),,
            with_webkit=auto)
 if test "x$with_webkit" != xno; then
-       PKG_CHECK_MODULES(WEBKIT, [webkitgtk-3.0 >= $WEBKIT_MIN_REQS], 
have_webkit=yes, have_webkit=no)
+       PKG_CHECK_MODULES(WEBKIT, [webkit2gtk-4.0], have_webkit=yes, 
have_webkit=no)
        if test "x$have_webkit" = "xno" -a "x$with_webkit" = "xyes"; then
                AC_MSG_ERROR([WebKit support explicitly requested, but WebKit 
could not be found])
        fi
diff --git a/podcast/rb-podcast-properties-dialog.c 
b/podcast/rb-podcast-properties-dialog.c
index 531958d..283687e 100644
--- a/podcast/rb-podcast-properties-dialog.c
+++ b/podcast/rb-podcast-properties-dialog.c
@@ -36,7 +36,7 @@
 #include <glib.h>
 
 #if defined(WITH_WEBKIT)
-#include <webkit/webkit.h>
+#include <webkit2/webkit2.h>
 #endif
 
 #include "rb-podcast-properties-dialog.h"
@@ -170,43 +170,63 @@ rb_podcast_properties_dialog_class_init 
(RBPodcastPropertiesDialogClass *klass)
 
 #if defined(WITH_WEBKIT)
 
-static WebKitNavigationResponse
-navigation_requested_cb (WebKitWebView *web_view,
-                        WebKitWebFrame *frame,
-                        WebKitNetworkRequest *request,
-                        RBPodcastPropertiesDialog *dialog)
+static gboolean
+decide_policy_cb (WebKitWebView *web_view,
+                        WebKitPolicyDecision *decision,
+                        WebKitPolicyDecisionType type,
+                        gpointer user_data)
 {
        const char *uri;
        GError *error = NULL;
        int i;
-
-       uri = webkit_network_request_get_uri (request);
-
-       /* ignore some obnoxious social networking stuff */
-       for (i = 0; i < G_N_ELEMENTS (ignore_uris); i++) {
-               if (g_str_has_prefix (uri, ignore_uris[i])) {
-                       rb_debug ("ignoring external URI %s", uri);
-                       return WEBKIT_NAVIGATION_RESPONSE_IGNORE;
-               }
+       WebKitNavigationPolicyDecision *navigation_decision;
+       WebKitURIRequest *request;
+       RBPodcastPropertiesDialog *dialog = (RBPodcastPropertiesDialog *) 
user_data;
+
+
+       switch (type)
+       {
+               case WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION:
+                       navigation_decision = WEBKIT_NAVIGATION_POLICY_DECISION 
(decision);
+                       request = webkit_navigation_policy_decision_get_request 
(navigation_decision);
+                       uri = webkit_uri_request_get_uri (request);
+
+                       /* from _load_plain_text or _load_html */
+                       if (g_strcmp0 (uri, "about:blank") == 0)
+                       {
+                               webkit_policy_decision_use (decision);
+                               return TRUE;
+                       }
+
+                       webkit_policy_decision_ignore (decision);
+
+                       /* ignore some obnoxious social networking stuff */
+                       for (i = 0; i < G_N_ELEMENTS (ignore_uris); i++) {
+                               if (g_str_has_prefix (uri, ignore_uris[i])) {
+                                       rb_debug ("ignoring external URI %s", 
uri);
+                                       return TRUE;
+                               }
+                       }
+
+                       gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET 
(dialog)), uri, GDK_CURRENT_TIME, &error);
+                       if (error != NULL) {
+                               rb_error_dialog (NULL, _("Unable to display 
requested URI"), "%s", error->message);
+                               g_error_free (error);
+                       }
+
+               default:
+                       webkit_policy_decision_ignore (decision);
+                       return FALSE;
        }
-
-       gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (dialog)), uri, 
GDK_CURRENT_TIME, &error);
-       if (error != NULL) {
-               rb_error_dialog (NULL, _("Unable to display requested URI"), 
"%s", error->message);
-               g_error_free (error);
-       }
-
-       return WEBKIT_NAVIGATION_RESPONSE_IGNORE;
 }
 
 static void
 set_webkit_settings (WebKitWebView *view)
 {
-       WebKitWebSettings *settings;
+       WebKitSettings *settings;
 
-       settings = webkit_web_settings_new ();
-       g_object_set (settings,
-                     "enable-scripts", FALSE,
+       settings = webkit_settings_new_with_settings (
+                     "enable-javascript", FALSE,
                      "enable-plugins", FALSE,
                      NULL);
        webkit_web_view_set_settings (view, settings);
@@ -215,7 +235,7 @@ set_webkit_settings (WebKitWebView *view)
 static void
 set_webkit_font_from_gtk_style (WebKitWebView *view)
 {
-       WebKitWebSettings *settings;
+       WebKitSettings *settings;
        const PangoFontDescription *font_desc;
        GtkStyleContext *style;
        int font_size;
@@ -293,8 +313,8 @@ rb_podcast_properties_dialog_init 
(RBPodcastPropertiesDialog *dialog)
        set_webkit_font_from_gtk_style (WEBKIT_WEB_VIEW 
(dialog->priv->description));
 
        g_signal_connect_object (dialog->priv->description,
-                                "navigation-requested",
-                                G_CALLBACK (navigation_requested_cb),
+                                "decide-policy",
+                                G_CALLBACK (decide_policy_cb),
                                 dialog,
                                 0);
 #else
@@ -656,51 +676,26 @@ rb_podcast_properties_dialog_update_date 
(RBPodcastPropertiesDialog *dialog)
        g_free (time);
 }
 
-#if defined(WITH_WEBKIT)
-static gboolean
-update_scrollbar_policy_cb (WebKitWebFrame *frame, RBPodcastPropertiesDialog 
*dialog)
-{
-       gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW 
(dialog->priv->description_window),
-                                       
webkit_web_frame_get_horizontal_scrollbar_policy (frame),
-                                       
webkit_web_frame_get_vertical_scrollbar_policy (frame));
-       return TRUE;
-}
-
-#endif
-
 static void
 rb_podcast_properties_dialog_update_description (RBPodcastPropertiesDialog 
*dialog)
 {
 #if defined(WITH_WEBKIT)
-       WebKitWebFrame *frame;
        const char *str;
        int i;
        gboolean loaded = FALSE;
        str = rhythmdb_entry_get_string (dialog->priv->current_entry, 
RHYTHMDB_PROP_DESCRIPTION);
        for (i = 0; i < G_N_ELEMENTS (html_clues); i++) {
                if (g_strstr_len (str, -1, html_clues[i]) != NULL) {
-                       webkit_web_view_load_html_string (WEBKIT_WEB_VIEW 
(dialog->priv->description),
+                       webkit_web_view_load_html (WEBKIT_WEB_VIEW 
(dialog->priv->description),
                                                          str,
-                                                         "");
+                                                         NULL);
                        loaded = TRUE;
                }
        }
 
        if (loaded == FALSE) {
-               webkit_web_view_load_string (WEBKIT_WEB_VIEW 
(dialog->priv->description),
-                                            str,
-                                            "text/plain",
-                                            "utf-8",
-                                            "");
+               webkit_web_view_load_plain_text (WEBKIT_WEB_VIEW 
(dialog->priv->description), str);
        }
-
-       /* ensure scrollbar policy for the frame matches the viewport */
-       frame = webkit_web_view_get_main_frame (WEBKIT_WEB_VIEW 
(dialog->priv->description));
-       g_signal_connect_object (frame,
-                                "scrollbars-policy-changed",
-                                G_CALLBACK (update_scrollbar_policy_cb),
-                                dialog, 0);
-       update_scrollbar_policy_cb (frame, dialog);
 #else
        const char *str;
        str = rhythmdb_entry_get_string (dialog->priv->current_entry, 
RHYTHMDB_PROP_DESCRIPTION);
-- 
2.7.0.rc3

++++++ rhythmbox-grilo-0.3.patch ++++++
@@ -, +, @@ 
 configure.ac                    |  4 ++--
 plugins/grilo/rb-grilo-plugin.c |  2 +-
 plugins/grilo/rb-grilo-source.c | 10 +++++-----
 3 files changed, 8 insertions(+), 8 deletions(-)
--- a/configure.ac      
+++ a/configure.ac      
@@ -54,7 +54,7 @@ LIBSOUP_REQS=2.34.0
 GUDEV_REQS=143
 LIBMTP_REQS=0.3.0
 LIBPEAS_REQS=0.7.3
-GRILO_REQS=0.2.0
+GRILO_REQS=0.3.0
 LIBXML2_REQS=2.7.8
 LIBSECRET_REQS=0.18
 
@@ -714,7 +714,7 @@ AC_ARG_ENABLE(grilo,
                             [Disable Grilo support]),,
              enable_grilo=auto)
 if test "x$enable_grilo" != "xno"; then
-       PKG_CHECK_MODULES(GRILO, grilo-0.2 >= $GRILO_REQS, have_grilo=yes, 
have_grilo=no)
+       PKG_CHECK_MODULES(GRILO, grilo-0.3 >= $GRILO_REQS, have_grilo=yes, 
have_grilo=no)
        if test "x$have_grilo" = "xno" -a "x$enable_grilo" = "xyes"; then
                AC_MSG_ERROR([Grilo support explicitly requested, but grilo 
couldn not be found])
        fi
--- a/plugins/grilo/rb-grilo-plugin.c   
+++ a/plugins/grilo/rb-grilo-plugin.c   
@@ -213,7 +213,7 @@ impl_activate (PeasActivatable *plugin)
        pi->registry = grl_registry_get_default ();
        g_signal_connect (pi->registry, "source-added", G_CALLBACK 
(grilo_source_added_cb), pi);
        g_signal_connect (pi->registry, "source-removed", G_CALLBACK 
(grilo_source_removed_cb), pi);
-       if (grl_registry_load_all_plugins (pi->registry, &error) == FALSE) {
+       if (grl_registry_load_all_plugins (pi->registry, TRUE, &error) == 
FALSE) {
                g_warning ("Failed to load Grilo plugins: %s", error->message);
                g_clear_error (&error);
        }
--- a/plugins/grilo/rb-grilo-source.c   
+++ a/plugins/grilo/rb-grilo-source.c   
@@ -524,7 +524,7 @@ make_operation_options (RBGriloSource *source, 
GrlSupportedOps op, int position)
        grl_operation_options_set_count (options,
                                         CONTAINER_FETCH_SIZE);
        grl_operation_options_set_type_filter (options, GRL_TYPE_FILTER_AUDIO);
-       grl_operation_options_set_flags (options, GRL_RESOLVE_NORMAL);
+       grl_operation_options_set_resolution_flags (options, 
GRL_RESOLVE_NORMAL);
 
        return options;
 }
@@ -684,7 +684,7 @@ grilo_browse_cb (GrlSource *grilo_source, guint 
operation_id, GrlMedia *media, g
                source->priv->browse_position++;
        }
 
-       if (media && GRL_IS_MEDIA_BOX (media)) {
+       if (media && grl_media_is_container (media)) {
 
                GtkTreeIter new_row;
                if (source->priv->browse_container == NULL) {
@@ -724,7 +724,7 @@ grilo_browse_cb (GrlSource *grilo_source, guint 
operation_id, GrlMedia *media, g
                                                   2, CONTAINER_MARKER,
                                                   3, 0,
                                                   -1);
-       } else if (media && GRL_IS_MEDIA_AUDIO (media)) {
+       } else if (media && grl_media_is_audio (media)) {
                source->priv->browse_got_media = TRUE;
        }
 
@@ -854,7 +854,7 @@ grilo_media_browse_cb (GrlSource *grilo_source, guint 
operation_id, GrlMedia *me
                source->priv->media_browse_got_results = TRUE;
                source->priv->media_browse_position++;
 
-               if (GRL_IS_MEDIA_AUDIO (media)) {
+               if (grl_media_is_audio (media)) {
                        RhythmDBEntry *entry;
                        entry = create_entry_for_media (source->priv->db,
                                                        
source->priv->entry_type,
@@ -863,7 +863,7 @@ grilo_media_browse_cb (GrlSource *grilo_source, guint 
operation_id, GrlMedia *me
                        if (entry != NULL) {
                                rhythmdb_query_model_add_entry 
(source->priv->query_model, entry, -1);
                        }
-               } else if (GRL_IS_MEDIA_BOX (media)) {
+               } else if (grl_media_is_container (media)) {
                        source->priv->media_browse_got_containers = TRUE;
                }
        }


Reply via email to