After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 363813 - Connect to all DAAP servers (and other enhancements)
Connect to all DAAP servers (and other enhancements)
Status: RESOLVED WONTFIX
Product: banshee
Classification: Other
Component: DAAP
Legacy Branch
Other Linux
: Normal enhancement
: 2.x
Assigned To: Banshee Maintainers
Banshee Maintainers
gnome[unmaintained]
Depends on:
Blocks:
 
 
Reported: 2006-10-21 01:50 UTC by Scott Peterson
Modified: 2020-03-17 08:16 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
The patch (18.80 KB, patch)
2006-10-23 14:33 UTC, Scott Peterson
none Details | Review
An update (43.76 KB, patch)
2006-10-27 15:29 UTC, Scott Peterson
needs-work Details | Review

Description Scott Peterson 2006-10-21 01:50:55 UTC
This is a split from bug 363548.

- Provide a master list of songs from all connected DAAP servers (accessible via a master "Shared Music" source which parents all DaapSources)

- Provide a "Connect to Everyone" button which attempts a connection with all DAAP servers and fails silently.

- Provide "Disconnect From All" through the DaapContainerSource's Unmap() method.

- Modify DaapPlaylistSource to implement IImportable and IImportSource

- Modify DaapContainerSource to implement IImportable
Comment 1 Scott Peterson 2006-10-23 14:33:30 UTC
Created attachment 75242 [details] [review]
The patch

This patch adds three events to DaapSource: ClientLoggedIn, ClientLoggedOut, ClientChanged (which gets ride of a particularly nasty while statement). These events trigger MergeSource, UnmergeSource, and UpdateSource in the DaapContainerSource, respectively.

DaapCore has two new methods: ConnectAll and DisconnectAll. It also has an ActionGroup with the action "DaapConnectAll" wired to ConnectAll. DaapConainerSource has an ActionButton set to trigger DaapConnectAll and its Unmap now triggers DisconnectAll.

DaapPlaylistSource now implements IImportable and IImportSource and DaapContainerSource now implements IImportable. There is a new class called DaapImporter which is located in DaapSource.cs (it's code that was previously in DaapSource.cs so I didn't bother making a new file, but we can). DaapSource, DaapPlaylistSource and DaapContainerSource instantiate a DaapImport to perform song imports.
Comment 2 Scott Peterson 2006-10-27 15:29:12 UTC
Created attachment 75512 [details] [review]
An update

I really like the new DaapErrorView UI. I've updated this patch to take that idea into account. The changes:

* I replaced DaapSource's HighlightMessageArea with a new ShadowContainer-inherited DaapConnectingWidget. Since the track TreeView is of no use until the source is connected, and since the HighlightMessageArea can be closed, leaving the user with a empty UI, I thought a full sized message would be a more appropriate choice.

* DaapContainerSource is selectable once again an by default its ViewWidget is a DaapSummaryWidget which shows the total number of sources and a "Try connecting to every source" button. More info could be packed into this widget.

* When connected to one or more sources, DaapContainerSource has a TreeView with the aggregate songs from all sources and a new DaapStatusWidget at the bottom which tells the number of connected servers out of the total, and conditionally has a "Try connecting to all sources" button.

* DaapSource's Icon returns a warning icon when connection fails. This isn't a very aesthetic modification, but its useful when you have loads of sources. Perhaps different icons would make the list look better.
Comment 3 Matt Wheeler 2007-02-13 14:57:57 UTC
So should there be a 'All Music' source which includes DAAP, local library, anything else?

I like the idea of that
Comment 4 Gabriel Burt 2009-01-13 16:52:50 UTC
Man this is an old patch, sorry it never got reviewed Scott!  If it's still relevant and somebody feels like updating it for 1.x, I promise to review it promptly.
Comment 5 André Klapper 2020-03-17 08:16:32 UTC
Banshee is not under active development anymore and had its last code changes more than three years ago. Its codebase has been archived.

Closing this report as WONTFIX as part of Bugzilla Housekeeping to reflect
reality. Please feel free to reopen this ticket (or rather transfer the project
to GNOME Gitlab, as GNOME Bugzilla is being shut down) if anyone takes the
responsibility for active development again.
See https://gitlab.gnome.org/Infrastructure/Infrastructure/issues/264 for more info.