diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c27f2b2d..2144cd125 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ - Added `Image Size` setting for the catalog. - Added a keybind to cycle through index sort types, `Ctrl+x` by default. +- Added keybindings for index modes, `Ctrl+{1,2,3}` by default. ### 3.17.1 - *2014-02-10* diff --git a/src/General/Config.coffee b/src/General/Config.coffee index d04114ec1..5345dd84f 100644 --- a/src/General/Config.coffee +++ b/src/General/Config.coffee @@ -188,6 +188,9 @@ Config = 'Next page': ['Right', 'Jump to the next page.'] 'Previous page': ['Left', 'Jump to the previous page.'] 'Search form': ['Ctrl+Alt+s', 'Focus the search field on the board index.'] + 'Paged mode': ['Ctrl+1', 'Sets the index mode to paged.'] + 'All pages mode': ['Ctrl+2', 'Sets the index mode to all threads.'] + 'Catalog mode': ['Ctrl+3', 'Sets the index mode to catalog.'] 'Cycle sort type': ['Ctrl+x', 'Cycle through index sort types.'] # Thread Navigation 'Next thread': ['Down', 'See next thread.'] diff --git a/src/General/Index.coffee b/src/General/Index.coffee index 2e9150881..7faf94004 100644 --- a/src/General/Index.coffee +++ b/src/General/Index.coffee @@ -186,6 +186,9 @@ Index = val: isPinned: thread.isPinned Index.sort() Index.buildIndex() + setIndexMode: (mode) -> + Index.selectMode.value = mode + $.event 'change', null, Index.selectMode cycleSortType: -> types = [Index.selectSort.options...].filter (option) -> !option.disabled for type, i in types diff --git a/src/Miscellaneous/Keybinds.coffee b/src/Miscellaneous/Keybinds.coffee index 433ca353d..8bb3e466b 100644 --- a/src/Miscellaneous/Keybinds.coffee +++ b/src/Miscellaneous/Keybinds.coffee @@ -88,6 +88,15 @@ Keybinds = $('.prev button', Index.pagelist).click() when Conf['Search form'] Index.searchInput.focus() + when Conf['Paged mode'] + return unless g.VIEW is 'index' and Conf['Index Mode'] isnt 'paged' + Index.setIndexMode 'paged' + when Conf['All pages mode'] + return unless g.VIEW is 'index' and Conf['Index Mode'] isnt 'all pages' + Index.setIndexMode 'all pages' + when Conf['Catalog mode'] + return unless g.VIEW is 'index' and Conf['Index Mode'] isnt 'catalog' + Index.setIndexMode 'catalog' when Conf['Cycle sort type'] Index.cycleSortType() # Thread Navigation