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 - zaitor@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 - dimstar@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 - dimstar@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 dimstar@opensuse.org -- Port to grilo 0.3
+Patch0: rhythmbox-grilo-0.3.patch
+# PATCH-FEATURE-UPSTREAM rhythmbox-Port-to-webkit2.patch bgo#752019 zaitor@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
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
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
#if defined(WITH_WEBKIT)
-#include
+#include
#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;
}
}