Skip to content

Commit

Permalink
Merge pull request #259 from ThosRTanner/issue/13
Browse files Browse the repository at this point in the history
Rework options window so that scrollable lists use up free space better
  • Loading branch information
ThosRTanner authored Jun 18, 2019
2 parents 8734ee3 + fc25f75 commit 1d80c4e
Show file tree
Hide file tree
Showing 33 changed files with 2,785 additions and 2,609 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
inforss.xpi
inforssOption.xul
8 changes: 7 additions & 1 deletion Changes.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Changes for v 2.1.0.2 (pre-release)
# Changes for v 2.2.0.0 (pre-release)

Change the scaling of the main icon to match windows padding (Issue #149)

Expand All @@ -19,6 +19,12 @@ Removes all of twitter support as they stopped doing an RSS feed (Issue #101). T

Removes all the support for creating feeds from blog searches, as none of them work any more - the sites are dead or no longer support searching (Issue #100). There are some sites which provide RSS feeds for blogs which can be then plugged into infoRSS.

The options window has been given some overdue care and attention. Among other things:
* it now resizes sensibly (Issues #13, #45)
* the filter list is displayed nicely and doesn't lose numeric values. (Issue #260)
* the up / down errors on the feed selector popup will disappear when not applicable.
* The lists of translators and contributors in the credits tab is now driven from install.rdf

# Changes for v 2.1.0.1

Reverted the add on ID as the new phoebus system isn't happy
Expand Down
96 changes: 96 additions & 0 deletions option_window_source/Options.xul
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- ***** BEGIN LICENSE BLOCK *****
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
-
- The contents of this file are subject to the Mozilla Public License Version
- 1.1 (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
- http://www.mozilla.org/MPL/
-
- Software distributed under the License is distributed on an "AS IS" basis,
- WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
- for the specific language governing rights and limitations under the
- License.
-
- The Original Code is infoRSS.
-
- The Initial Developer of the Original Code is
- Didier Ernotte <[email protected]>.
- Portions created by the Initial Developer are Copyright (C) 2004
- the Initial Developer. All Rights Reserved.
-
- Contributor(s):
- Didier Ernotte <[email protected]>.
-
- Alternatively, the contents of this file may be used under the terms of
- either the GNU General Public License Version 2 or later (the "GPL"), or
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
- in which case the provisions of the GPL or the LGPL are applicable instead
- of those above. If you wish to allow use of your version of this file only
- under the terms of either the GPL or the LGPL, and not to allow others to
- use your version of this file under the terms of the MPL, indicate your
- decision by deleting the provisions above and replace them with the notice
- and other provisions required by the LGPL or the GPL. If you do not delete
- the provisions above, a recipient may use your version of this file under
- the terms of any one of the MPL, the GPL or the LGPL.
-
- ***** END LICENSE BLOCK ***** -->
<?xml-stylesheet href="chrome://global/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://inforss/skin/inforss.css" type="text/css"?>
<?xml-stylesheet href="chrome://inforss/skin/inforssTree.css" type="text/css"?>

<!DOCTYPE dialog SYSTEM "chrome://inforss/locale/inforss.dtd">
<dialog id="inforssOption"
title="&optionWindow.title;"
style="width:350px; height:350px"
windowtype="inforssOption"
onload="init();"
ondialogaccept="return accept();"
ondialogcancel=""
persist="screenX screenY width height"
buttons="accept,cancel,extra1"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml">

<script type="application/x-javascript"
src="chrome://inforss/content/inforssIO.js"/>
<script type="application/x-javascript"
src="chrome://inforss/content/inforssOption.js"/>
<script type="application/x-javascript"
src="chrome://inforss/content/inforssOptionAdvanced.js"/>
<script type="application/x-javascript"
src="chrome://inforss/content/inforssOptionBasic.js"/>
<script type="application/x-javascript"
src="chrome://inforss/content/inforssParser.js"/>
<script type="application/x-javascript"
src="chrome://inforss/content/inforssOpml.js"/>
<hbox flex="1">
<vbox flex="1">
<tabbox id="inforss.option.tab"
flex="1">
<tabs orient="horizontal">
<tab label="&inforss.tab.basic;"
onclick="document.getElementById('inforss.listbox1').focus()"/>
<tab label="&inforss.tab.advance;"
onclick="document.getElementById('inforss.listbox2').focus()"/>
<tab label="&inforss.tab.credits;" />
<tab label="&about.help.label;" />
</tabs>
<tabpanels flex="1">
<tabpanel flex="1">
<!-- include Basic.xul -->
</tabpanel>
<tabpanel flex="1">
<!-- include Advanced.xul -->
</tabpanel>
<tabpanel flex="1">
<!-- include Credits.xul -->
</tabpanel>
<tabpanel flex="1">
<!-- include Help.xul -->
</tabpanel>
</tabpanels>
</tabbox>
</vbox>
</hbox>
</dialog>
31 changes: 31 additions & 0 deletions option_window_source/Options/Advanced.xul
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<hbox flex="1">
<vbox>
<listbox id="inforss.listbox2"
style="width: 12em; min-width: 12em; max-width: 12em"
selectedItem="0">
<listitem selected="true"
label="&inforss.default.value;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=0"/>
<listitem label="&inforss.tab.menu;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=1"/>
<listitem label="&inforss.repository;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=2"/>
<listitem id="inforss.tab.synchro"
label="&inforss.tab.synchro;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=3"/>
<listitem label="&inforss.tab.report;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=4"/>
<listitem label="&inforss.tab.debug;"
onclick="document.getElementById('inforssTabpanelsAdvance').selectedIndex=5"/>
</listbox>
</vbox>
<deck id="inforssTabpanelsAdvance"
flex="1">
<!-- include Default Values.xul -->
<!-- include Main Menu.xul -->
<!-- include Repository.xul -->
<!-- include Synchronisation.xul -->
<!-- include Report.xul -->
<!-- include Debug.xul -->
</deck>
</hbox>
43 changes: 43 additions & 0 deletions option_window_source/Options/Advanced/Debug.xul
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<vbox flex="1">
<groupbox flex="0">
<caption label="&inforss.debug;"/>
<vbox>
<hbox>
<label control="debug"
value="&inforss.debug.popup;:"
tooltiptext="&inforss.debug.popup;"
class="inforss-label1"
flex="0"/>
<radiogroup id="debug"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
</hbox>
<hbox>
<label control="statusbar"
value="&inforss.debug.status;:"
tooltiptext="&inforss.debug.status;"
class="inforss-label1"
flex="0"/>
<radiogroup id="statusbar"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
</hbox>
<hbox>
<label control="log"
value="&inforss.debug.log;:"
tooltiptext="&inforss.debug.log;"
class="inforss-label1"
flex="0"/>
<radiogroup id="log"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
</hbox>
</vbox>
</groupbox>
</vbox>
199 changes: 199 additions & 0 deletions option_window_source/Options/Advanced/Default Values.xul
Original file line number Diff line number Diff line change
@@ -0,0 +1,199 @@
<vbox flex="1">
<groupbox flex="1">
<caption label="&inforss.default.value;"/>
<vbox flex="1">
<hbox>
<checkbox id="inforss.checkbox.defaultnbitem"/>
<label control="defaultnbitem"
value="&inforss.nbitem;:"
tooltiptext="&inforss.nbitem;"
class="inforss-label2"
flex="0"/>
<radiogroup id="defaultnbitem"
orient="horizontal">
<radio label="&inforss.nolimit;"
oncommand="document.getElementById('defaultnbitem1').setAttribute('disabled','true')"/>
<radio label="&inforss.limited;"
oncommand="document.getElementById('defaultnbitem1').setAttribute('disabled','false')"/>
</radiogroup>
<hbox flex="1"
class="inforssSlider"
id="defaultnbitem1"
labelwidth="20"
labelvalue=""
labeltooltiptext=""
pageincrement="5"
curpos="0"
maxpos="19"
offset="1"
slidertooltiptext="&inforss.help.nbitem;"/>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultlengthitem"/>
<label control="defaultlengthitem"
value="&inforss.lengthitem;:"
tooltiptext="&inforss.lengthitem;"
class="inforss-label2"
flex="0"/>
<radiogroup id="defaultlengthitem"
orient="horizontal">
<radio label="&inforss.nolimit;"
oncommand="document.getElementById('defaultlengthitem1').setAttribute('disabled','true')"/>
<radio label="&inforss.limited;"
oncommand="document.getElementById('defaultlengthitem1').setAttribute('disabled','false')"/>
</radiogroup>
<hbox flex="1"
class="inforssSlider"
id="defaultlengthitem1"
labelwidth="20"
labelvalue=""
labeltooltiptext=""
pageincrement="5"
curpos="0"
maxpos="40"
offset="5"
slidertooltiptext="&inforss.help.lengthitem;"/>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultrefresh1"/>
<label control="defaultrefresh"
value="&inforss.refresh;:"
tooltiptext="&inforss.refresh;"
class="inforss-label2"
flex="0"/>
<radiogroup id="inforss.defaultrefresh"
orient="horizontal">
<radio label="&inforss.refresh.daily;"/>
<radio label="&inforss.refresh.hourly;"/>
<radio label="&inforss.refresh.other;"
selected="true"/>
</radiogroup>

<hbox flex="1"
class="inforssSlider"
id="defaultrefresh1"
labelwidth="20"
labelvalue=""
labeltooltiptext=""
pageincrement="5"
curpos="0"
maxpos="119"
offset="1"
slidertooltiptext="&inforss.help.refresh;"/>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultPurgeHistory"/>
<hbox flex="1"
class="inforssSlider"
id="defaultPurgeHistory"
labelwidth="170"
labelvalue="&inforss.purge.history;:"
labeltooltiptext="&inforss.purge.history;"
pageincrement="5"
curpos="0"
maxpos="119"
offset="1"
slidertooltiptext="&inforss.purge.history;">
</hbox>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultPlayPodcast"/>
<label control="defaultPlayPodcast"
value="&inforss.playPodcast;:"
tooltiptext="&inforss.playPodcast;"
class="inforss-label2"
flex="0"/>
<radiogroup id="defaultPlayPodcast"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultBrowserHistory"/>
<label control="defaultBrowserHistory"
value="&inforss.history.firefox;:"
tooltiptext="&inforss.history.firefox;"
class="inforss-label2"
flex="0"/>
<radiogroup id="defaultBrowserHistory"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultGroupIcon"/>
<label value="&inforss.default.groupicon;:"
tooltiptext="&inforss.default.groupicon;"
class="inforss-label2"/>
<spacer width="5"/>
<vbox>
<spacer flex="1"/>
<image id="inforss.defaultgroup.icon"
style="max-width: 16px ; max-height: 16px" />
<spacer flex="1"/>
</vbox>
<spacer width="10"/>
<textbox id="defaultGroupIcon"
flex="1"
tooltiptext="&inforss.help.iconurl;"/>
<spacer width="10"/>
<button label="&inforss.html.test;"
oncommand="setDefaultIconGroup()"/>
<spacer width="10"/>
<button label="&inforss.icon.resetdefault;"
oncommand="resetDefaultIconGroup()"/>
</hbox>
<hbox>
<checkbox id="inforss.checkbox.defaultSavePodcast"/>
<label control="savePodcastLocation"
value="&inforss.save.podcast;:"
tooltiptext="&inforss.save.podcast;"
class="inforss-label2"
flex="0"/>
<radiogroup id="savePodcastLocation"
orient="horizontal">
<radio label="&inforss.on;"/>
<radio label="&inforss.off;"/>
</radiogroup>
<vbox>
<spacer flex="1"/>
<label value="&inforss.location;:"/>
<spacer flex="1"/>
</vbox>
<textbox id="savePodcastLocation1"
flex="1"/>
<button label="&inforss.save.browse;"
onclick="locateExportEnclosure('','1')"/>
</hbox>
<hbox flex="1">
<vbox>
<button label="&inforss.apply.toall;"
flex="0"
onclick="changeDefaultValue()"/>
<spacer flex="1"/>
</vbox>
<spacer width="10"/>
<vbox>
<radiogroup id="inforss.applyto"
orient="vertical">
<radio label="&inforss.apply.all;"
selected="true"/>
<radio label="&inforss.apply.current;"/>
<radio label="&inforss.apply.selected;"/>
</radiogroup>
<spacer height="15"/>
<label value="&inforss.add.current;"/>
<label id="inforss.current.feed"
style="font-weight: bold; max-width: 130px"/>
<spacer flex="1"/>
</vbox>
<spacer width="10"/>
<listbox id="inforss-apply-list"
seltype="multiple"
flex="1"/>
</hbox>
</vbox>
</groupbox>
</vbox>
Loading

0 comments on commit 1d80c4e

Please sign in to comment.