Closed Bug 282048 Opened 20 years ago Closed 20 years ago

Register thunderbird with the OS to handle feed:// URLS

Categories

(MailNews Core :: Feed Reader, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mscott, Assigned: mscott)

References

()

Details

Attachments

(2 files)

We need to do a better job of making it easy to get feeds from Firefox into
Thunderbird. One step in that direction is to make thunderbird report feed URLS
(feed://). I've seen some references on the web to a feed:// url scheme. I'll
see if I can dig up some links.

We'd have to do two things:

1) Make our feed JS decompose a feed URL (we may need to implement a nsIURI
subclass for feeds, or we may be able to use nsStdURL) and subscribe to that feed

2) Add hooks into the windows registry to handle feed://
http://nick.typepad.com/blog/2005/01/really_simple_s.html

I believe you can register for feed:// on OS X as well, though Safari 2.0 is the
default handler on Tiger.
Status: NEW → ASSIGNED
Target Milestone: --- → Thunderbird1.1
Step 1, register ourselves to handle feed URLs from the Windows OS.

The harder step comes next and that's to subscribe to the feeds that come in
from the OS.
Comment on attachment 176637 [details] [diff] [review]
add code and Pref UI to register Thunderbird as the default feed URL handler

This patch doesn't actually do anything yet because we don't know how to handle
feed urls that the OS gives us.
Attachment #176637 - Flags: superreview?(bienvenu)
Comment on attachment 176637 [details] [diff] [review]
add code and Pref UI to register Thunderbird as the default feed URL handler

a few nits...

+{
+    nsresult rv = NS_OK;
+
+    if (aIsDefaultFeedClient)
+	 rv = m_registryUtils.setDefaultFeedClient();
+    else
+	 rv = m_registryUtils.unsetDefaultFeedClient();
+
+    return rv ;
+}

can just be

return (aIsDefaultFeedClient) ? m_registryUtils.setDefaultFeedClient() :
m_registryUtils.unsetDefaultFeedClient();

nsMapiRegistryUtils::setDefaultFeedClient

can just return the result of setupDefaultProtocolKey

same thing for unsetDefaultFeedClient()
Attachment #176637 - Flags: superreview?(bienvenu) → superreview+
Handle Feed urls from the command line.

1) Works for the case where Thunderbird is already open with a 3 pane window
and the case where we have to create a 3 pane window ourselves.

2) Adds a RSS specific command line handler implementation that looks for -mail
followed by a feed: url.

3) bsmedberg's command line service rewrite broke thunderbird's ability to pass
in urls after the -mail argument so I had to fix that
(nsMessengerBootstrap.cpp). this means -news urls should work again

4) I don't yet handle feed://<some url>, just feed:<some url>. I also am not
doing anything to try to unescape the underlying URL. Not sure if I need to do
anything for that yet. 

5) Currently, the subscription is silent. After some experimentation we may
want to bring up the rich add feed folder dialog instead of doing things
silently and making the user fix up any changes afterwards.
Attachment #176959 - Flags: superreview?(bienvenu)
Comment on attachment 176959 [details] [diff] [review]
2nd half of the patch


+    nsCOMPtr<nsISupportsArray> argsArray;
+    rv = NS_NewISupportsArray(getter_AddRefs(argsArray));

shouldn't this be
nsCOMPtr <nsISupportsArray> argsArray =
do_CreateInstance(NS_SUPPORTSARRAY_CONTRACTID, &rv);
Attachment #176959 - Flags: superreview?(bienvenu) → superreview+
fixed.

The next part is to add some smarts to Firefox to generate feed urls in its RSS
menu so we can easily get these feed urls into thunderbird.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Component: RSS → Feed Reader
Product: Thunderbird → MailNews Core
Target Milestone: Thunderbird1.1 → ---
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: