| OLD | NEW |
| (Empty) |
| 1 <html> | |
| 2 <script> | |
| 3 // The Page Action ID. | |
| 4 var pageActionId = "RssPageAction"; | |
| 5 | |
| 6 // The window this Page Action is associated with. | |
| 7 var windowId = -1; | |
| 8 | |
| 9 // The TabId this Page Action is associated with. | |
| 10 var tabId = -1; | |
| 11 | |
| 12 // The URL of the page that contains the feed. | |
| 13 var pageUrl = ""; | |
| 14 | |
| 15 // The feed URL found on the page. | |
| 16 var feedUrl = ""; | |
| 17 | |
| 18 chrome.self.onConnect.addListener(function(port) { | |
| 19 windowId = port.tab.windowId; | |
| 20 tabId = port.tab.id; | |
| 21 pageUrl = port.tab.url; | |
| 22 | |
| 23 // This will get called from the content script using PostMessage. | |
| 24 // |feedUrls| is a list of URL feeds found on the page. We only need 1 to | |
| 25 // enable the PageAction icon in the Omnibox. | |
| 26 port.onMessage.addListener(function(feedUrls) { | |
| 27 feedUrl = feedUrls[0]; | |
| 28 // Let Chrome know that the PageAction needs to be enabled for this tabId | |
| 29 // and for the url of this page. | |
| 30 if (feedUrl) { | |
| 31 chrome.pageActions.enableForTab(pageActionId, | |
| 32 {tabId: tabId, url: pageUrl}); | |
| 33 } | |
| 34 }); | |
| 35 }); | |
| 36 | |
| 37 // Chrome will call into us when the user clicks on the icon in the OmniBox. | |
| 38 chrome.pageActions.onExecute.addListener(function(reply) { | |
| 39 chrome.windows.getCurrent(function(window) { | |
| 40 chrome.tabs.get(reply.data.tabId, function(tab) { | |
| 41 if (window.focused) { | |
| 42 // We need to know if we are the active window, because the tab may | |
| 43 // have moved to another window and we don't want to execute this | |
| 44 // action multiple times. | |
| 45 if (reply.pageActionId == pageActionId && | |
| 46 reply.data.tabUrl == pageUrl) { | |
| 47 // Create a new tab showing the subscription page with the right | |
| 48 // feed URL. | |
| 49 var url = "http://www.google.com/reader/view/feed/" + feedUrl; | |
| 50 chrome.tabs.create({url: "subscribe.html?" + feedUrl, | |
| 51 windowId: windowId}); | |
| 52 } | |
| 53 } | |
| 54 }); | |
| 55 }); | |
| 56 }); | |
| 57 </script> | |
| 58 </html> | |
| OLD | NEW |