[rhythmbox/gobject-introspection: 22/27] Merge branch 'master' into gobject-introspection



commit cb9ebab1d32b59a5f053ce838e4187119772ab22
Merge: cb8080b 3e75810
Author: Jonathan Matthew <jonathan d14n org>
Date:   Wed Aug 4 10:53:32 2010 +1000

    Merge branch 'master' into gobject-introspection
    
    Conflicts:
    	configure.ac
    	plugins/coherence/upnp_coherence/__init__.py
    	plugins/magnatune/magnatune/__init__.py

 backends/gstreamer/rb-encoder-gst.c                |  131 +-
 backends/gstreamer/rb-player-gst-xfade.c           |    2 +-
 backends/gstreamer/rb-player-gst.c                 |    2 +-
 backends/rb-encoder.c                              |   10 +-
 backends/rb-encoder.h                              |    4 +-
 backends/rb-player.c                               |   15 +
 bindings/python/Makefile.am                        |   33 +-
 bindings/python/rb.defs                            |    6 +-
 bindings/python/rhythmdb.defs                      |  245 ++-
 bindings/python/rhythmdb.override                  |  475 +------
 configure.ac                                       |    2 +-
 doc/reference/Makefile.am                          |   63 +-
 doc/reference/rhythmbox-docs.sgml                  |    2 +
 doc/reference/rhythmbox-sections.txt               |   74 +-
 doc/reference/rhythmbox.types                      |    2 +
 lib/libmediaplayerid/mediaplayerid.h               |    2 +
 lib/libmediaplayerid/mpid-device.c                 |  111 ++-
 lib/libmediaplayerid/mpid-util.c                   |   23 +
 lib/rb-text-helpers.c                              |    4 +-
 lib/rb-util.c                                      |    2 +-
 plugins/audiocd/rb-audiocd-source.c                |   36 +-
 plugins/audioscrobbler/rb-audioscrobbler.c         |    7 +-
 plugins/audioscrobbler/rb-lastfm-source.c          |   77 +-
 plugins/coherence/upnp_coherence/MediaPlayer.py    |   12 +-
 plugins/coherence/upnp_coherence/__init__.py       |    7 +-
 plugins/daap/rb-daap-source.c                      |   67 +-
 plugins/daap/rb-rhythmdb-dmap-db-adapter.c         |   12 +-
 plugins/daap/rb-rhythmdb-dmap-db-adapter.h         |    2 +-
 plugins/fmradio/rb-fm-radio-source.c               |   32 +-
 .../rb-generic-player-playlist-source.c            |    2 +-
 .../rb-generic-player-playlist-source.h            |    2 +-
 plugins/generic-player/rb-generic-player-plugin.c  |    4 +-
 plugins/generic-player/rb-generic-player-source.c  |  100 +-
 plugins/generic-player/rb-nokia770-source.c        |   13 +-
 plugins/generic-player/rb-psp-source.c             |   16 +-
 plugins/ipod/rb-ipod-source.c                      |  122 +-
 plugins/ipod/rb-ipod-static-playlist-source.c      |    2 +-
 plugins/ipod/rb-ipod-static-playlist-source.h      |    2 +-
 plugins/iradio/iradio-initial.pls                  |   16 +
 plugins/iradio/rb-iradio-source.c                  |   30 +-
 plugins/jamendo/jamendo/__init__.py                |   12 +-
 plugins/magnatune/magnatune/__init__.py            |   13 +-
 plugins/mpris/rb-mpris-plugin.c                    |   47 +-
 plugins/mtpdevice/rb-mtp-source.c                  |   25 +-
 plugins/status-icon/rb-tray-icon-gtk.c             |    2 +-
 po/gl.po                                           |   88 +-
 po/sl.po                                           |  316 ++--
 po/sv.po                                           | 1643 +++++++++++---------
 podcast/Makefile.am                                |    3 +-
 podcast/rb-podcast-entry-types.c                   |  135 ++
 podcast/rb-podcast-entry-types.h                   |   45 +
 podcast/rb-podcast-manager.c                       |    9 +-
 podcast/rb-podcast-manager.h                       |    1 +
 rhythmdb/Makefile.am                               |    8 +-
 rhythmdb/rhythmdb-entry-type.c                     |  386 +++++
 rhythmdb/rhythmdb-entry-type.h                     |  116 ++
 rhythmdb/rhythmdb-entry.h                          |   44 +
 rhythmdb/rhythmdb-import-job.c                     |   77 +-
 rhythmdb/rhythmdb-import-job.h                     |    6 +-
 rhythmdb/rhythmdb-private.h                        |   13 +-
 rhythmdb/rhythmdb-query.c                          |   16 +-
 rhythmdb/rhythmdb-song-entry-types.c               |  148 ++
 rhythmdb/rhythmdb-tree.c                           |   67 +-
 rhythmdb/rhythmdb.c                                |  538 ++-----
 rhythmdb/rhythmdb.h                                |  113 +--
 shell/rb-play-order-random.h                       |    7 +-
 shell/rb-shell-clipboard.c                         |   22 +-
 shell/rb-shell.c                                   |   18 +-
 shell/rb-shell.h                                   |    4 +-
 shell/rb-track-transfer-batch.c                    |   75 +-
 shell/rb-track-transfer-batch.h                    |    5 +-
 sources/rb-auto-playlist-source.c                  |   14 +-
 sources/rb-browser-source.c                        |   12 +-
 sources/rb-import-errors-source.c                  |   46 +-
 sources/rb-import-errors-source.h                  |    6 +-
 sources/rb-library-source.c                        |   35 +-
 sources/rb-media-player-source.c                   |   77 +-
 sources/rb-missing-files-source.c                  |   10 +-
 sources/rb-play-queue-source.c                     |    2 +-
 sources/rb-podcast-source.c                        |   13 +-
 sources/rb-removable-media-source.c                |   46 +-
 sources/rb-source.c                                |   51 +-
 sources/rb-source.h                                |    5 +-
 sources/rb-static-playlist-source.c                |   15 +-
 sources/rb-static-playlist-source.h                |    2 +-
 sources/rb-streaming-source.c                      |    4 +-
 sources/sync/rb-sync-settings-ui.c                 |    1 +
 sources/sync/rb-sync-state-ui.c                    |   36 +-
 sources/sync/rb-sync-state-ui.h                    |    1 +
 sources/sync/rb-sync-state.c                       |    3 +-
 tests/Makefile.am                                  |    2 +
 tests/bench-rhythmdb-load.c                        |    1 +
 tests/test-rhythmdb.c                              |    1 +
 tests/test-utils.c                                 |    6 +-
 widgets/rb-cell-renderer-pixbuf.c                  |   20 +-
 widgets/rb-entry-view.c                            |    4 +-
 widgets/rb-library-browser.c                       |   18 +-
 widgets/rb-library-browser.h                       |    2 +-
 widgets/rb-property-view.c                         |    2 +-
 widgets/rb-rating-helper.c                         |   14 +-
 widgets/rb-song-info.c                             |    3 +-
 101 files changed, 3477 insertions(+), 2746 deletions(-)
---
diff --cc configure.ac
index a57de5e,c8a8ac3..2856927
--- a/configure.ac
+++ b/configure.ac
@@@ -59,45 -58,9 +59,45 @@@ LIBSOUP_REQS=2.26.
  GUDEV_REQS=143
  LIBMTP_REQS=0.3.0
  PYGOBJECT_REQUIRED=2.15.4
- GLIB_GDBUS_REQS=2.25.6
 -WEBKIT_MIN_REQS=1.1.17
+ GLIB_GDBUS_REQS=2.25.12
  
 +dnl gtk+ version
 +AC_ARG_ENABLE(gtk3,
 +  AS_HELP_STRING([--enable-gtk3=@<:@no/yes/auto@:>@],
 +  [build with GTK+3]), ,
 +  enable_gtk3=auto)
 +PKG_CHECK_EXISTS(gtk+-3.0 >= $GTK3_REQS, [have_gtk3=yes], [have_gtk3=no])
 +if test "x$enable_gtk3" = "xyes" -a "x$have_gtk3" = "xno"; then
 +	AC_MSG_ERROR([Gtk+3 explicitly requested, but not available])
 +elif test "x$enable_gtk3" != "xno" -a "x$have_gtk3" = "xyes"; then
 +	GTK_MAJ_VER=3.0
 +	GTK_REQS=$GTK3_REQS
 +
 +	dnl require GTK+3 compatible library versions
 +	GNOME_MEDIA_PROFILES_PKG=gnome-media-profiles-3.0
 +	GNOME_MEDIA_PROFILES_REQS=2.31.5
 +	LIBNOTIFY_REQS=0.5.1
 +	BRASERO_MIN_REQS=2.31.5
 +	BRASERO_MAX_REQS=99999
 +	dnl XXX webkit version unknown
 +	WEBKIT_MIN_REQS=99999
 +else
 +	GTK_MAJ_VER=2.0
 +	GTK_REQS=2.18.0
 +
 +	dnl somewhat more relaxed GTK+2 requirements
 +	GNOME_MEDIA_PROFILES_PKG=gnome-media-profiles
 +	GNOME_MEDIA_PROFILES_REQS=2.8
 +	LIBNOTIFY_REQS=0.4.1
 +	BRASERO_MIN_REQS=0.9.1
 +	BRASERO_MAX_REQS=2.31.4
 +	WEBKIT_MIN_REQS=1.1.17
 +fi
 +AC_SUBST(GTK_MAJ_VER)
 +
 +
 +
 +
  AC_MSG_CHECKING([for GNU extension fwrite_unlocked])
  AC_LINK_IFELSE(
  [AC_LANG_PROGRAM([[
diff --cc plugins/coherence/upnp_coherence/__init__.py
index 4291520,1bb0097..a6e8b87
--- a/plugins/coherence/upnp_coherence/__init__.py
+++ b/plugins/coherence/upnp_coherence/__init__.py
@@@ -246,9 -251,7 +249,7 @@@ class CoherencePlugin(RB.Plugin, log.Lo
              return
  
          db = self.shell.props.db
 -        group = rb.rb_source_group_get_by_name("shared")
 +        group = RB.rb_source_group_get_by_name("shared")
-         entry_type = db.entry_register_type("CoherenceUpnp:%s" %
-                  client.device.get_id()[5:])
  
          from UpnpSource import UpnpSource
          source = gobject.new (UpnpSource,
diff --cc plugins/jamendo/jamendo/__init__.py
index c6d6704,e7ecb14..34f3a95
--- a/plugins/jamendo/jamendo/__init__.py
+++ b/plugins/jamendo/jamendo/__init__.py
@@@ -54,8 -52,14 +54,14 @@@ popup_ui = ""
  </ui>
  """
  
+ class JamendoEntryType(rhythmdb.EntryType):
+ 	def __init__(self):
+ 		rhythmdb.EntryType.__init__(self, name='jamendo')
+ 
+ 	def can_sync_metadata(self, entry):
+ 		return True
  
 -class Jamendo(rb.Plugin):
 +class Jamendo(RB.Plugin):
  	#
  	# Core methods
  	#
@@@ -66,18 -70,16 +72,16 @@@
  	def activate(self, shell):
  		self.db = shell.get_property("db")
  
- 		self.entry_type = self.db.entry_register_type("JamendoEntryType")
- 		# allow changes which don't do anything
- 		self.entry_type.can_sync_metadata = True
- 		self.entry_type.sync_metadata = None
+ 		self.entry_type = JamendoEntryType()
+ 		self.db.register_entry_type(self.entry_type)
  
 -		theme = gtk.icon_theme_get_default()
 +		theme = Gtk.icon_theme_get_default()
  		rb.append_plugin_source_path(theme, "/icons/")
  
 -		width, height = gtk.icon_size_lookup(gtk.ICON_SIZE_LARGE_TOOLBAR)
 -		icon = rb.try_load_icon(theme, "jamendo", width, 0)
 +		width, height = Gtk.icon_size_lookup(Gtk.IconSize.LARGE_TOOLBAR)
 +		icon = RB.try_load_icon(theme, "jamendo", width, 0)
  
 -		group = rb.rb_source_group_get_by_name ("stores")
 +		group = RB.rb_source_group_get_by_name ("stores")	# RB.SourceGroup.get_by_name()?
  		self.source = gobject.new (JamendoSource,
  					   shell=shell,
  					   entry_type=self.entry_type,
diff --cc plugins/magnatune/magnatune/__init__.py
index 6a65884,6f50ebc..71950f4
--- a/plugins/magnatune/magnatune/__init__.py
+++ b/plugins/magnatune/magnatune/__init__.py
@@@ -57,8 -57,15 +57,15 @@@ popup_ui = ""
  </ui>
  """
  
+ class MagnatuneEntryType(rhythmdb.EntryType):
+ 	def __init__(self):
+ 		rhythmdb.EntryType.__init__(self, name='magnatune')
+ 
+ 	def can_sync_metadata(self, entry):
+ 		return True
+ 
 -class Magnatune(rb.Plugin):
 -	client = gconf.client_get_default()
 +class Magnatune(RB.Plugin):
 +	client = GConf.Client.get_default()
  
  	format_list = ['ogg', 'flac', 'wav', 'mp3-vbr', 'mp3-cbr']
  
@@@ -82,18 -89,16 +89,16 @@@
  		self.shell = shell # so the source can update the progress bar
  		self.db = shell.get_property("db")
  
- 		self.entry_type = self.db.entry_register_type("MagnatuneEntryType")
- 		# allow changes which don't do anything
- 		self.entry_type.can_sync_metadata = True
- 		self.entry_type.sync_metadata = None
+ 		self.entry_type = MagnatuneEntryType()
+ 		self.db.register_entry_type(self.entry_type)
  
 -		theme = gtk.icon_theme_get_default()
 +		theme = Gtk.IconTheme.get_default()
  		rb.append_plugin_source_path(theme, "/icons")
  
 -		width, height = gtk.icon_size_lookup(gtk.ICON_SIZE_LARGE_TOOLBAR)
 -		icon = rb.try_load_icon(theme, "magnatune", width, 0)
 +		width, height = Gtk.icon_size_lookup(Gtk.IconSize.LARGE_TOOLBAR)
 +		icon = RB.try_load_icon(theme, "magnatune", width, 0)
  
 -		group = rb.rb_source_group_get_by_name("stores")
 +		group = RB.rb_source_group_get_by_name("stores")
  		self.source = gobject.new(MagnatuneSource,
  					  shell=shell,
  					  entry_type=self.entry_type,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]