New directory for what was Extras in stable.

2008-02-11  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Makefile.am:
	* src/Libraries/Makefile.am: New directory for what was Extras in stable.

	* build/build.environment.mk:
	* configure.ac: 
	* src/Libraries/Lastfm/*:
	* src/Libraries/Lastfm.Gui/*: Bring Last.FM library over from stable, and
	rip out the Gnome.Keyring dependency.

	* src/Extensions/Banshee.LastFM/*: Bring Last.FM plugin over from stable.
	Not part of the default build yet; lots of porting still to do.

svn path=/trunk/banshee/; revision=3224
Create Mono.Media library.

2008-02-11  Gabriel Burt  <gabriel.burt@gmail.com>

	* build/build.environment.mk:
	* configure.ac:
	* src/Libraries/Makefile.am:
	* src/Libraries/Mono.Media/Makefile.am: Create Mono.Media library.

	* src/Core/Banshee.Services/Makefile.am:
	* src/Core/Banshee.Services/Banshee.Playlists.Formats.Xspf/*: Move to
	Mono.Media, so it can be used by Lastfm library.

svn path=/trunk/banshee/; revision=3227
Add System.Web to Lastfm deps.

2008-02-11  Gabriel Burt  <gabriel.burt@gmail.com>

	* build/build.environment.mk: Add System.Web to Lastfm deps.

	* src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs: Fix
	broken build; Xspf is now in Mono.Media.

	* src/Libraries/Lastfm/Last.FM.mdp: Rename.

	* src/Libraries/Lastfm/Lastfm/Account.cs: Add Updated event.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/Connection.cs:
	* src/Libraries/Lastfm/Makefile.am:
	* src/Libraries/Lastfm/Lastfm/Connection.cs: Move Connection class out of
	extension, pull out Banshee dependencies.

	* src/Libraries/Mono.Media/Playlists.Xspf/LinkEntry.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/MetaEntry.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/Playlist.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/Track.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/W3CDateTime.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/XmlUtil.cs:
	* src/Libraries/Mono.Media/Playlists.Xspf/XspfBaseObject.cs: Fix headers
	and namespaces.

svn path=/trunk/banshee/; revision=3228
Forgot to commit this.

2008-02-11  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Lastfm.Gui/Makefile.am: Forgot to commit this.

svn path=/trunk/banshee/; revision=3229
The Last.fm extension can actually play music now. Still need to port the

2008-02-14  Gabriel Burt  <gabriel.burt@gmail.com>

	The Last.fm extension can actually play music now.  Still need to port the
	status bar.  Also, moved Hyena and Hyena.Gui out of Core and into Libraries.

	* build/build.environment.mk: Libraries/Lastfm depends on Libraries/Hyena
	for logging.

	* configure.ac:
	* src/Banshee.mds:
	* src/Core/Banshee.Core/Makefile.am:
	* src/Core/Core.mds: Reflect new organization.

	* src/Libraries/Hyena/Makefile.am:
	* src/Libraries/Hyena/Hyena.mdp:
	* src/Core/Banshee.Core/Banshee.Core.mdp:
	* src/Core/Banshee.Core/Banshee.Base/Log.cs:
	* src/Libraries/Hyena/Hyena/Log.cs: Move Log to Hyena, replace
	ApplicationContext dep with Debugging property.

	* src/Core/Banshee.Core/Banshee.Collection/UnknownTrackInfo.cs:
	* src/Core/Banshee.Core/Banshee.Collection/SampleTrackInfo.cs:
	* src/Core/Banshee.Services/Banshee.Collection.Database/LibraryTrackInfo.cs:
	* src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngine.cs:
	* src/Core/Banshee.Core/Banshee.Collection/TrackInfo.cs: Add/use properties
	for all attributes - the flags are way to painful an API.

	* src/Core/Banshee.Services/Banshee.Services.mdp:

	* src/Core/Banshee.Services/Banshee.Sources/Source.cs: Fix whitespace.  If
	the defining assembly for a source is not Banshee.Services, record it for
	use when retrieving resources.

	* src/Core/Banshee.ThickClient/Banshee.Gui.Widgets/TrackInfoDisplay.cs:
	* src/Core/Banshee.ThickClient/Banshee.Gui/GlobalActions.cs:
	* src/Core/Banshee.ThickClient/Banshee.Gui/GtkBaseClient.cs:
	* src/Extensions/Banshee.MultimediaKeys/Banshee.MultimediaKeys/MultimediaKeysService.cs:
	* src/Backends/Banshee.GStreamer/Banshee.GStreamer/PlayerEngine.cs:
	* src/Backends/Banshee.Unix/Banshee.IO.Unix/Directory.cs:
	* src/Core/Banshee.Core/Banshee.Configuration/ConfigurationClient.cs:
	* src/Core/Banshee.Core/Banshee.IO/Provider.cs:
	* src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistCore.cs:
	* src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistSource.cs:
	* src/Core/Banshee.Services/Banshee.Collection/ImportManager.cs:
	* src/Core/Banshee.Services/Banshee.Library/LibraryImportManager.cs:
	* src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs:
	* src/Core/Banshee.Services/Banshee.Metadata.MusicBrainz/MusicBrainzQueryJob.cs:
	* src/Core/Banshee.Services/Banshee.Metadata.Rhapsody/RhapsodyQueryJob.cs:
	* src/Core/Banshee.Services/Banshee.Networking/NetworkDetect.cs:
	* src/Core/Banshee.Services/Banshee.PlaybackController/PlaybackControllerService.cs:
	* src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs:
	* src/Core/Banshee.Services/Banshee.ServiceStack/ServiceManager.cs:
	* src/Core/Banshee.Services/Banshee.Streaming/RadioTrackInfo.cs:
	* src/Core/Banshee.Services/Banshee.Web/Browser.cs: Add using Hyena.

	* src/Core/Banshee.Core/Banshee.Base/ApplicationContext.cs: Add static
	ctor that sets Hyena.Log.Debugging.

	* src/Core/Banshee.ThickClient/Banshee.Collection.Gui/ArtworkManager.cs:
	* src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/AboutDialog.cs:

	* src/Core/Banshee.ThickClient/Banshee.Gui.Dialogs/GladeDialog.cs: Add
	ctor from stable.

	* src/Core/Banshee.ThickClient/Banshee.Gui/IconThemeUtils.cs: Support
	loading resources from arbitrary assemblies (eg from extensions).

	* src/Core/Banshee.ThickClient/Banshee.Sources.Gui/SourceRowRenderer.cs:
	Specify the Source's defining assembly as the assembly to load the icon
	resource from.

	* src/Core/Banshee.ThickClient/Banshee.ThickClient.addin.xml:

	* src/Core/Banshee.ThickClient/Resources/core-ui-actions-layout.xml: Add
	RefreshSmartPlaylist action to the Edit menu, and add a BelowAddToPlaylist
	placeholder in the track context menu.

	* src/Core/Makefile.am:
	* src/Core/Hyena.Gui/*:
	* src/Core/Hyena/*: Move Hyena* to src/Libraries

	* src/Libraries/Makefile.am:
	* src/Libraries/Libraries.mds: Add Hyena and Hyena.Gui.

	* src/Extensions/Extensions.mds: Add Banshee.Lastfm.
	* src/Extensions/Makefile.am: Add Banshee.Lastfm to the build.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.mdp: Reflect new/removed
	files.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastFMSource.cs:
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSource.cs:
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastFMTrackInfo.cs:
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmTrackInfo.cs:
	* src/Extensions/Banshee.Lastfm/Resources/Banshee.LastFM.addin.xml:
	* src/Extensions/Banshee.Lastfm/Resources/Banshee.Lastfm.addin.xml:
	Lower case fm.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmTrackListModel.cs:
	New List<TrackInfo> based model.

	* src/Extensions/Banshee.Lastfm/Resources/Actions.xml:
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/Plugin.cs: Removed.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/StationEditor.cs: 
	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/StationSource.cs: Update
	headers, fix creation/saving, use new model.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/StationType.cs: Update
	header.

	* src/Extensions/Banshee.Lastfm/Makefile.am:
	* src/Extensions/Banshee.Lastfm/Resources/ActiveSourceUI.xml:
	* src/Extensions/Banshee.Lastfm/Resources/GlobalUI.xml: New action
	resources.

	* src/Libraries/Hyena/Hyena.Data/IFilterable.cs:
	* src/Libraries/Hyena/Hyena.Data/ISortable.cs: Whitespace.

	* src/Libraries/Hyena/Hyena.Data/PropertyStore.cs: Whitespace, reorder
	some logic.

	* src/Libraries/Lastfm.Gui/Lastfm.Gui.mdp:
	* src/Libraries/Lastfm/Lastfm.mdp:
	* src/Libraries/Mono.Media/Mono.Media.mdp: New mdp files.

	* src/Libraries/Lastfm/Lastfm/Account.cs: Remove abstract class modifier.

	* src/Libraries/Lastfm/Lastfm/Connection.cs: Use Hyena.Log for logging msgs.

	* src/Libraries/Mono.Media/Makefile.am:
	* src/Libraries/Mono.Media/Playlists.Xspf/*:
	* src/Libraries/Mono.Media/Media.Playlists.Xspf/*: Change namespace to
	Media.Playlists.Xspf.  Merge fix for not-quite-compliant Last.fm Playlist
	files from stable.

svn path=/trunk/banshee/; revision=3236
The last commit reverted some of scottp's changes due to svn mv'ing files

2008-02-14  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm/StationSource.cs:
	* src/Libraries/Hyena/Hyena.Data.Sqlite/DatabaseColumn.cs:
	* src/Libraries/Hyena/Hyena.Data.Sqlite/HyenaSqliteConnection.cs:
	* src/Libraries/Hyena/Hyena.Data.Sqlite/SqliteModelCache.cs:
	* src/Libraries/Hyena/Hyena.Data.Sqlite/SqliteModelProvider.cs:
	* src/Libraries/Hyena/Hyena.mdp:
	* src/Libraries/Hyena/Makefile.am: The last commit reverted some of
	scottp's changes due to svn mv'ing files that weren't up to date.

svn path=/trunk/banshee/; revision=3237
Forgot to svn add.

2008-02-14  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Hyena/Hyena.Data.Sqlite/SqliteUtils.cs: Forgot to svn add.

svn path=/trunk/banshee/; revision=3238
Fix warnings.

2008-02-14  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Lastfm/Lastfm/Connection.cs: Fix warnings.

	* src/Libraries/Lastfm/Makefile.am:
	* src/Libraries/Lastfm/Lastfm.Data: Add new namespace.

	* src/Libraries/Lastfm/Lastfm.Data/DataEntry.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopArtists.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/LastfmDataCollection.cs:
	* src/Libraries/Lastfm/Lastfm.Data/LastfmData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/Profile.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopAlbums.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopTracks.cs: New files that expose
	Last.fm metadata.

svn path=/trunk/banshee/; revision=3241
Remove unnecessary usings.

2008-02-14  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Lastfm/Lastfm.Data/UserTopArtists.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/Profile.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopAlbums.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopTracks.cs: Remove unnecessary
	usings.

svn path=/trunk/banshee/; revision=3242
Moved Nereid from Core/ to Clients/; fixed up a lot of MonoDevelop stuff

2008-02-16  Aaron Bockover  <abock@gnome.org>

    Moved Nereid from Core/ to Clients/; fixed up a lot of MonoDevelop stuff


svn path=/trunk/banshee/; revision=3245
Added a necessary null check and return default (T) for the generic Query

2008-02-16  Aaron Bockover  <abock@gnome.org>

    * src/Libraries/Hyena/Hyena.Data.Sqlite/HyenaSqliteConnection.cs: Added
    a necessary null check and return default (T) for the generic Query
    method that Scott introduced - fixes the bug everyone has been complaining
    about


svn path=/trunk/banshee/; revision=3246
Updated MD project files

svn path=/trunk/banshee/; revision=3247
Updated MD solution files

svn path=/trunk/banshee/; revision=3248
Only run these hacks if we are on Unix, and don't crash even if we are and

2008-02-16  Aaron Bockover  <abock@gnome.org>

    * src/Core/Banshee.Core/Banshee.Base/PlatformHacks.cs: Only run these
    hacks if we are on Unix, and don't crash even if we are and they fail
    
    * src/Core/Banshee.Services/Banshee.MediaEngine/NullPlayerEngine.cs:
    A fake engine that does nothing, used to allow Banshee to at least
    start up on Windows without libbanshee

    * src/Core/Banshee.Services/Banshee.MediaEngine/PlayerEngineService.cs:
    Load the NullPlayerEngine if no real engines could be loaded
    
    * src/Core/Banshee.Services/Banshee.ServiceStack/DBusServiceManager.cs:
    Disable DBus support if BusG.Init fails

    * src/Libraries/Hyena.Gui/Hyena.Data.Gui/CairoHelper.cs: Do not P/Invoke
    to get the cairo context, instead use Gdk.CairoHelper


svn path=/trunk/banshee/; revision=3249
Renamed Username to UserName

2008-02-16  Aaron Bockover  <abock@gnome.org>

    * src/Libraries/Lastfm/Lastfm/Account.cs: Renamed Username to UserName

    * src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmActions.cs:
    * src/Extensions/Banshee.Lastfm/Banshee.Lastfm/LastfmSource.cs:
    * src/Libraries/Lastfm.Gui/Lastfm.Gui/AccountLoginForm.cs:
    * src/Libraries/Lastfm/Lastfm/Connection.cs: Use the UserName property

    * src/Extensions/Banshee.Lastfm/Banshee.Lastfm/StationSource.cs: Store
    the MD5 hashed last.fm password

    * src/Libraries/Hyena/Hyena/CryptoUtil.cs: Moved some MD5 methods from
    Last.fm to here

    * tests/Hyena/CryptoUtilTests.cs: Tests for CryptoUtil


svn path=/trunk/banshee/; revision=3251
Set RowSensitivePropertyName to 'CanPlay'

2008-02-16  Aaron Bockover  <abock@gnome.org>

    * src/Core/Banshee.ThickClient/Banshee.Collection.Gui/TrackListView.cs:
    Set RowSensitivePropertyName to 'CanPlay'

    * src/Libraries/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Interaction.cs:
    * src/Libraries/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Model.cs:
    * src/Libraries/Hyena.Gui/Hyena.Data.Gui/ListView/ListView_Rendering.cs:
    Added a RowSensitivePropertyName property, defaulting to 'Sensitive';
    objects in the model will be queried for this property to indicate whether
    the object is sensitive (enabled) or not; render the row's sensitivity

    * src/Libraries/Lastfm/Lastfm/Connection.cs: Clear the password if invalid


svn path=/trunk/banshee/; revision=3252
This commit adds support for most of the user-particular data feeds

2008-02-16  Gabriel Burt  <gabriel.burt@gmail.com>

	This commit adds support for most of the user-particular data feeds
	Audioscrobbler offers into Lastfm.dll, our Banshee-independent Lastfm
	library.

	* src/Libraries/Lastfm/Lastfm.Data/LastfmDataCollection.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopTracks.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopArtists.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopData.cs:
	* src/Libraries/Lastfm/Lastfm.Data/Profile.cs:
	* src/Libraries/Lastfm/Lastfm.Data/UserTopAlbums.cs: Removed files.

	* src/Libraries/Lastfm/Test.cs:
	* src/Libraries/Lastfm.Gui/Test.cs: Moved test to Lastfm.Gui.

	* src/Libraries/Lastfm/Lastfm.Data/DataCore.cs: New static class for doing
	initialization and settings.

	* src/Libraries/Lastfm/Lastfm.Data/DataEntryCollection.cs: New class that
	wraps a XmlNodeList.

	* src/Libraries/Lastfm/Makefile.am: Updates, add make test rule.

	* src/Libraries/Lastfm/Lastfm.Data/DataEntry.cs: Move all DataEntry
	subclasses here.  There are too many to have in separate classes (and the
	header/code ratio is really high).

	* src/Libraries/Lastfm/Lastfm.Data/UserData.cs: Wrap almost all of the
	Last.fm data feeds that pertain to a particular user.

	* src/Libraries/Lastfm/Lastfm.Data/LastfmData.cs: Update for DataCore
	changes, and instantiate and wrap a DataEntryCollection.

svn path=/trunk/banshee/; revision=3253
Rename to RadioConnection.cs

2008-02-16  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Lastfm/Lastfm/Connection.cs:
	* src/Libraries/Lastfm/Lastfm/RadioConnection.cs: Rename to
	RadioConnection.cs

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs: Use
	RadioConnection.

svn path=/trunk/banshee/; revision=3256
Add tests.

2008-02-16  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Libraries/Lastfm/Test.cs:
	* src/Libraries/Lastfm.Gui/Test.cs: Add tests.

svn path=/trunk/banshee/; revision=3257
Change LastPlayed and DateAdded order names.

2008-02-17  Gabriel Burt  <gabriel.burt@gmail.com>

	* src/Core/Banshee.Services/Banshee.Query/BansheeQuery.cs: Change
	LastPlayed and DateAdded order names.

	* src/Core/Banshee.Services/Banshee.SmartPlaylist/Migrator.cs: Wrap the
	migration in a transaction, print error message if it fails.

	* src/Core/Banshee.Services/Banshee.SmartPlaylist/SmartPlaylistCore.cs:
	Only initialize if the migration was successful.

	* src/Libraries/Hyena.Gui/Hyena.Query.Gui/QueryLimitBox.cs: BansheeQuery's
	Orders array has nulls in it to indicate where separators would be nice -
	actually implement those in the ComboBox.

	* src/Extensions/Banshee.Lastfm/Banshee.Lastfm.Radio/StationSource.cs:
	Improve comment.

svn path=/trunk/banshee/; revision=3260