author | Michael Krelin <hacker@klever.net> | 2006-11-16 22:22:23 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2006-11-16 22:22:23 (UTC) |
commit | d98dfeb112f9db06c5e642e14ee9bbda4d90d0cb (patch) (side-by-side diff) | |
tree | dee166a9e25442a9043492f38104397fb748633b | |
parent | 4b21b4fc5248322c10ffb24edfd5ec78ebcce824 (diff) | |
download | fireflix-d98dfeb112f9db06c5e642e14ee9bbda4d90d0cb.zip fireflix-d98dfeb112f9db06c5e642e14ee9bbda4d90d0cb.tar.gz fireflix-d98dfeb112f9db06c5e642e14ee9bbda4d90d0cb.tar.bz2 |
double click on photoset opens photoset in flickr now
git-svn-id: http://svn.klever.net/kin/fireflix/trunk@229 fe716a7a-6dde-0310-88d9-d003556173a8
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | NEWS.xml | 1 | ||||
-rw-r--r-- | content/fireflix-panel.xul | 1 | ||||
-rw-r--r-- | content/fireflix.js | 12 | ||||
-rw-r--r-- | content/flickr.js | 4 |
5 files changed, 15 insertions, 4 deletions
@@ -1,15 +1,16 @@ 0.0.5 () - Added toolbar button - Enter or double click on photo in set now opens photo in flickr + - Double click on photoset opens photoset in flickr 0.0.4 (November 13th, 2006) - Added button to remove linebreaks from generated HTML - Added the word 'sidebar' to the extension name so that you don't have to look hard for it - UI polishing, including making it more boring - code cosmetics 0.0.3 (November 6th, 2006) - Firefox 2.0 compatibility 0.0.2 (October 17th, 2006) - Added brief help file - Fixed HTML generation code - Fixed a mistyped flickr url so that the 'Flickr' button works now 0.0.1 (October 3rd, 2006) @@ -1,17 +1,18 @@ <?xml version="1.0" encoding="us-ascii"?> <news> <version version="0.0.5"> <ni>Added toolbar button</ni> <ni>Enter or double click on photo in set now opens photo in flickr</ni> + <ni>Double click on photoset opens photoset in flickr</ni> </version> <version version="0.0.4" date="November 13th, 2006"> <ni>Added button to remove linebreaks from generated HTML</ni> <ni>Added the word 'sidebar' to the extension name so that you don't have to look hard for it</ni> <ni>UI polishing, including making it more boring</ni> <ni>code cosmetics</ni> </version> <version version="0.0.3" date="November 6th, 2006"> <ni>Firefox 2.0 compatibility</ni> </version> <version version="0.0.2" date="October 17th, 2006"> <ni>Added brief help file</ni> diff --git a/content/fireflix-panel.xul b/content/fireflix-panel.xul index b2ca7dc..af92d22 100644 --- a/content/fireflix-panel.xul +++ b/content/fireflix-panel.xul @@ -175,24 +175,25 @@ </hbox> </vbox> </groupbox> </vbox> </tabpanel> <tabpanel id="tabpanel_sets" flex="1" onkeypress="if(event.keyCode==event.DOM_VK_RETURN) document.getElementById('setphotos').focus()"> <vbox flex="1"> <tree id="setslist" rows="2" onselect="fireflix.photosets.on_select()" flex="1" context="sets_menu" + ondblclick="fireflix.photosets.on_cmd_open_in_flickr(event)" > <treecols> <treecol id="sl_name" label="&panel.sets.name.label;" flex="4" crop="end" align="start" tooltiptext="&panel.sets.name.tip;"/> <splitter class="tree-splitter" /> <treecol id="sl_photos" label="&panel.sets.photos.label;" flex="1" align="end" tooltiptext="&panel.sets.photos.tip;" /> </treecols> <treechildren/> </tree> <hbox> <button command="cmd_refresh_sets" /> <button command="cmd_set_props" /> </hbox> diff --git a/content/fireflix.js b/content/fireflix.js index 24894df..48053c5 100644 --- a/content/fireflix.js +++ b/content/fireflix.js @@ -155,29 +155,27 @@ var fireflix = { }, on_select: function() { if(this.selection.count==1) { var p = this.photos[this.selection.currentIndex]; this.set_photo.src = this.fireflix.flickr.get_photo_url(p.server,p.id,p.secret,'t'); this.set_photo.hidden = false; }else{ this.set_photo.hidden = true; } }, on_cmd_open: function(ev) { - if(this.selection.currentIndex<0) - return; + if(this.selection.currentIndex<0) return; var p = this.photos[this.selection.currentIndex]; - if(!p.id) - return; + if(!p.id) return; this.fireflix.openTab(this.fireflix.flickr.make_photo_url(p,'p')); } }, /* photosets treeview */ photosets: { sets: new Array(), fireflix: null, init: function(f) { this.fireflix = f; document.getElementById('setslist').view = this; }, @@ -227,24 +225,30 @@ var fireflix = { _this.fireflix.flickr_failure(x,s,c,m); } ); }, on_select: function() { if(this.selection.count==1) { this.fireflix.cmd_set_props.setAttribute('disabled','false'); var s = this.sets[this.selection.currentIndex]; this.fireflix.photoset.load_photos(s.id); }else{ this.fireflix.cmd_set_props.setAttribute('disabled','true'); } + }, + on_cmd_open_in_flickr: function(ev) { + if(this.selection.currentIndex<0) return; + var p = this.sets[this.selection.currentIndex]; + if(!p.id) return; + this.fireflix.openTab(this.fireflix.flickr.make_photoset_url(p)); } }, refresh_user_tags: function() { var lb = document.getElementById('tagslist'); var _this = this; this.flickr.api_call( { method: 'flickr.tags.getListUser', auth_token: 'default', }, function(xr) { var x = xr.responseXML; diff --git a/content/flickr.js b/content/flickr.js index 75d1a72..b8360c1 100644 --- a/content/flickr.js +++ b/content/flickr.js @@ -262,24 +262,28 @@ Flickr.prototype = { if(p.owner && p.owner.nsid) o = p.owner.nsid; var rv = this.photos_url + o +'/' + p.id; return rv; }else // TODO: take owner into account? return this.photos_url + this.user.nsid + '/' + p; }, make_photo_url: function(p,sfx) { if(sfx=='p') return this.get_photo_page_url(p); else return this.get_image_url(p,sfx); }, + make_photoset_url: function(ps) { + // TODO: allow for using someone else's photoset? + return this.photos_url+this.user.nsid+'/sets/'+ps.id; + }, upload_file: function(f,fa,on_success,on_failure) { try { var fi = Components.classes["@mozilla.org/file/local;1"] .createInstance(Components.interfaces.nsILocalFile); fi.initWithPath( f ); var st = Components.classes["@mozilla.org/network/file-input-stream;1"] .createInstance(Components.interfaces.nsIFileInputStream); st.init(fi,0x01,00004,null); var bis = Components.classes["@mozilla.org/binaryinputstream;1"] .createInstance(Components.interfaces.nsIBinaryInputStream); bis.setInputStream(st); |