diff options
Diffstat (limited to 'pages')
| -rw-r--r-- | pages/options.coffee | 67 | ||||
| -rw-r--r-- | pages/options.html | 2 | 
2 files changed, 37 insertions, 32 deletions
| diff --git a/pages/options.coffee b/pages/options.coffee index 21e81c8f..1cbe88fa 100644 --- a/pages/options.coffee +++ b/pages/options.coffee @@ -181,6 +181,24 @@ class ExclusionRulesOnPopupOption extends ExclusionRulesOption      else        @url + "*" +Options = +  exclusionRules: ExclusionRulesOption +  filterLinkHints: CheckBoxOption +  hideHud: CheckBoxOption +  keyMappings: TextOption +  linkHintCharacters: NonEmptyTextOption +  linkHintNumbers: NonEmptyTextOption +  newTabUrl: NonEmptyTextOption +  nextPatterns: NonEmptyTextOption +  previousPatterns: NonEmptyTextOption +  regexFindMode: CheckBoxOption +  scrollStepSize: NumberOption +  smoothScroll: CheckBoxOption +  grabBackFocus: CheckBoxOption +  searchEngines: TextOption +  searchUrl: NonEmptyTextOption +  userDefinedLinkHintCss: TextOption +  initOptionsPage = ->    onUpdated = ->      $("saveOptions").removeAttribute "disabled" @@ -197,18 +215,20 @@ initOptionsPage = ->        show $("linkHintCharacters")        hide $("linkHintNumbers") -  toggleAdvancedOptions = -    do (advancedMode=false) -> -      (event) -> -        if advancedMode -          $("advancedOptions").style.display = "none" -          $("advancedOptionsButton").innerHTML = "Show Advanced Options" -        else -          $("advancedOptions").style.display = "table-row-group" -          $("advancedOptionsButton").innerHTML = "Hide Advanced Options" -        advancedMode = !advancedMode -        $("advancedOptionsButton").blur() -        event.preventDefault() +  maintainAdvancedOptions = -> +    if bgSettings.get "optionsPage_showAdvancedOptions" +      $("advancedOptions").style.display = "table-row-group" +      $("advancedOptionsButton").innerHTML = "Hide Advanced Options" +    else +      $("advancedOptions").style.display = "none" +      $("advancedOptionsButton").innerHTML = "Show Advanced Options" +  maintainAdvancedOptions() + +  toggleAdvancedOptions = (event) -> +    bgSettings.set "optionsPage_showAdvancedOptions", not bgSettings.get "optionsPage_showAdvancedOptions" +    maintainAdvancedOptions() +    $("advancedOptionsButton").blur() +    event.preventDefault()    activateHelpDialog = ->      showHelpDialog chrome.extension.getBackgroundPage().helpDialogHtml(true, true, "Command Listing"), frameId @@ -236,26 +256,8 @@ initOptionsPage = ->        document.activeElement.blur() if document?.activeElement?.blur        saveOptions() -  options = -    exclusionRules: ExclusionRulesOption -    filterLinkHints: CheckBoxOption -    hideHud: CheckBoxOption -    keyMappings: TextOption -    linkHintCharacters: NonEmptyTextOption -    linkHintNumbers: NonEmptyTextOption -    newTabUrl: NonEmptyTextOption -    nextPatterns: NonEmptyTextOption -    previousPatterns: NonEmptyTextOption -    regexFindMode: CheckBoxOption -    scrollStepSize: NumberOption -    smoothScroll: CheckBoxOption -    grabBackFocus: CheckBoxOption -    searchEngines: TextOption -    searchUrl: NonEmptyTextOption -    userDefinedLinkHintCss: TextOption -    # Populate options. The constructor adds each new object to "Option.all". -  for name, type of options +  for name, type of Options      new type(name,onUpdated)    maintainLinkHintsView() @@ -317,3 +319,6 @@ document.addEventListener "DOMContentLoaded", ->    xhr.send() +# Exported for tests. +root = exports ? window +root.Options = Options diff --git a/pages/options.html b/pages/options.html index 12a3ad21..22b041b7 100644 --- a/pages/options.html +++ b/pages/options.html @@ -283,7 +283,7 @@ b: http://b.com/?q=%s description                </span>              </td>              <td id="saveOptionsTableData" nowrap> -              <button id="advancedOptionsButton">Show Advanced Options</button> +              <button id="advancedOptionsButton"></button>                <button id="saveOptions" disabled="true">No Changes</button>              </td>            </tr> | 
