-rw-r--r-- | content/fireflix-panel.xul | 2 | ||||
-rw-r--r-- | content/fireflix.css | 8 | ||||
-rw-r--r-- | content/fireflix.js | 25 |
3 files changed, 23 insertions, 12 deletions
diff --git a/content/fireflix-panel.xul b/content/fireflix-panel.xul index 2a15a51..b84b596 100644 --- a/content/fireflix-panel.xul +++ b/content/fireflix-panel.xul | |||
@@ -147,9 +147,9 @@ | |||
147 | </hbox> | 147 | </hbox> |
148 | </vbox> | 148 | </vbox> |
149 | <vbox flex="1"> | 149 | <vbox flex="1"> |
150 | <label id="searchresult_title"/> | 150 | <label id="searchresult_title"/> |
151 | <textbox flex="1" multiline="true" class="plain" readonly="true" id="searchresult_description"/> | 151 | <iframe flex="1" id="searchresult_description"/> |
152 | <hbox pack="end"> | 152 | <hbox pack="end"> |
153 | <button command="cmd_search_open"/> | 153 | <button command="cmd_search_open"/> |
154 | </hbox> | 154 | </hbox> |
155 | </vbox> | 155 | </vbox> |
diff --git a/content/fireflix.css b/content/fireflix.css index 188f48e..4a3228f 100644 --- a/content/fireflix.css +++ b/content/fireflix.css | |||
@@ -71,16 +71,8 @@ menuitem.menuhead { | |||
71 | color: black; | 71 | color: black; |
72 | font-weight: bold; | 72 | font-weight: bold; |
73 | } | 73 | } |
74 | 74 | ||
75 | label#searchresult_description { | ||
76 | font-weight: bold; | ||
77 | } | ||
78 | textbox#searchresult_description { | ||
79 | padding: 1px 3px !important; | ||
80 | background: white; | ||
81 | } | ||
82 | |||
83 | #copying div { | 75 | #copying div { |
84 | margin: 1ex 1em; | 76 | margin: 1ex 1em; |
85 | font-family: courier, monospace; | 77 | font-family: courier, monospace; |
86 | font-size: 9pt; | 78 | font-size: 9pt; |
diff --git a/content/fireflix.js b/content/fireflix.js index 337354e..6773134 100644 --- a/content/fireflix.js +++ b/content/fireflix.js | |||
@@ -753,8 +753,27 @@ var fireflix = { | |||
753 | _this.fireflix.flickr_failure(x,s,c,m); | 753 | _this.fireflix.flickr_failure(x,s,c,m); |
754 | } | 754 | } |
755 | ); | 755 | ); |
756 | }, | 756 | }, |
757 | render_description_frame: function(content) { | ||
758 | if(!content) { | ||
759 | try { | ||
760 | this.searchresult_description.contentDocument.lastChild.innerHTML | ||
761 | = ''; | ||
762 | }catch(e) { } /* it will throw exceptions when the iframe isn't well | ||
763 | prepared to meet me, but it's unimportant then, anyway */ | ||
764 | }else{ | ||
765 | this.searchresult_description.contentDocument.lastChild.setAttribute( | ||
766 | 'style', | ||
767 | 'font-size: 80%; margin: 1px 3px; font-family: arial, sans-serif' | ||
768 | ); | ||
769 | this.searchresult_description.contentDocument.lastChild.innerHTML | ||
770 | = content; | ||
771 | var ls = this.searchresult_description.contentDocument.links; | ||
772 | for(var l=0;l<ls.length;++l) | ||
773 | ls.item(l).setAttribute('target','_blank'); | ||
774 | } | ||
775 | }, | ||
757 | on_select: function() { | 776 | on_select: function() { |
758 | if(this.selection.currentIndex<0) { | 777 | if(this.selection.currentIndex<0) { |
759 | this.searchresult_props.hidden = true; | 778 | this.searchresult_props.hidden = true; |
760 | }else{ | 779 | }else{ |
@@ -763,9 +782,9 @@ var fireflix = { | |||
763 | this.searchresult_props.hidden = true; | 782 | this.searchresult_props.hidden = true; |
764 | }else{ | 783 | }else{ |
765 | this.search_photo.src = this.fireflix.flickr.make_photo_url(p,'t'); | 784 | this.search_photo.src = this.fireflix.flickr.make_photo_url(p,'t'); |
766 | this.searchresult_title.value = p.title; | 785 | this.searchresult_title.value = p.title; |
767 | this.searchresult_description.value = null; | 786 | this.render_description_frame(null); |
768 | if(p.description==null && p.description==undefined) { | 787 | if(p.description==null && p.description==undefined) { |
769 | var pid = p.id; | 788 | var pid = p.id; |
770 | var ci = this.selection.currentIndex; | 789 | var ci = this.selection.currentIndex; |
771 | var _this = this; | 790 | var _this = this; |
@@ -779,17 +798,17 @@ var fireflix = { | |||
779 | var pp = _this.photos[ci]; | 798 | var pp = _this.photos[ci]; |
780 | if(ci==_this.selection.currentIndex && pp.id==pid) { | 799 | if(ci==_this.selection.currentIndex && pp.id==pid) { |
781 | var n = xp_node('/rsp/photo',xr.responseXML); | 800 | var n = xp_node('/rsp/photo',xr.responseXML); |
782 | pp.fromNode_(n); | 801 | pp.fromNode_(n); |
783 | _this.searchresult_description.value=pp.description?pp.description:null; | 802 | _this.render_description_frame(pp.description); |
784 | } | 803 | } |
785 | }, function(x,s,c,m) { | 804 | }, function(x,s,c,m) { |
786 | _this.fireflix.flickr_failure(x,s,c,m); | 805 | _this.fireflix.flickr_failure(x,s,c,m); |
787 | } | 806 | } |
788 | ); | 807 | ); |
789 | this.searchresult_props.hidden = false; | 808 | this.searchresult_props.hidden = false; |
790 | }else{ | 809 | }else{ |
791 | this.searchresult_description.value=p.description?p.description:null; | 810 | this.render_description_frame(p.description); |
792 | } | 811 | } |
793 | } | 812 | } |
794 | } | 813 | } |
795 | }, | 814 | }, |