diff options
author | Morris Jobke <morris.jobke@gmail.com> | 2013-06-07 19:02:54 +0200 |
---|---|---|
committer | Morris Jobke <morris.jobke@gmail.com> | 2013-06-07 19:02:54 +0200 |
commit | fa7553a05d27b6a8179aa609d4d2a26490d0b64a (patch) | |
tree | 8d8ec1aeb24002fc40e563d2c7a4e279f14f081e /js | |
parent | 4fe9d788174e513db005eae167fea986113bec74 (diff) |
add shortcut to open current item
Diffstat (limited to 'js')
-rw-r--r-- | js/app/directives/itemshortcuts.coffee | 8 | ||||
-rw-r--r-- | js/public/app.js | 9 |
2 files changed, 16 insertions, 1 deletions
diff --git a/js/app/directives/itemshortcuts.coffee b/js/app/directives/itemshortcuts.coffee index 9045ea949..1d01a41a2 100644 --- a/js/app/directives/itemshortcuts.coffee +++ b/js/app/directives/itemshortcuts.coffee @@ -79,6 +79,10 @@ angular.module('News').directive 'itemShortcuts', ['$window', ($window) -> $item.find('.star').trigger('click') + openCurrentItem = (scrollArea) -> + $item = getCurrentItem(scrollArea) + $item.find('.item_title a').trigger('click') + $($window.document).keydown (e) -> # only activate if no input elements is focused @@ -112,5 +116,9 @@ angular.module('News').directive 'itemShortcuts', ['$window', ($window) -> starCurrentItem(scrollArea) jumpToNextItem(scrollArea) + # o + else if e.keyCode == 79 + openCurrentItem(scrollArea) + ]
\ No newline at end of file diff --git a/js/public/app.js b/js/public/app.js index 7a2da9d99..bd8afeac7 100644 --- a/js/public/app.js +++ b/js/public/app.js @@ -146,7 +146,7 @@ License along with this library. If not, see <http://www.gnu.org/licenses/>. angular.module('News').directive('itemShortcuts', [ '$window', function($window) { return function(scope, elm, attr) { - var getCurrentItem, jumpTo, jumpToNextItem, jumpToPreviousItem, keepUnreadCurrentItem, starCurrentItem; + var getCurrentItem, jumpTo, jumpToNextItem, jumpToPreviousItem, keepUnreadCurrentItem, openCurrentItem, starCurrentItem; jumpTo = function($scrollArea, $item) { var position; position = $item.offset().top - $scrollArea.offset().top + $scrollArea.scrollTop(); @@ -212,6 +212,11 @@ License along with this library. If not, see <http://www.gnu.org/licenses/>. $item = getCurrentItem(scrollArea); return $item.find('.star').trigger('click'); }; + openCurrentItem = function(scrollArea) { + var $item; + $item = getCurrentItem(scrollArea); + return $item.find('.item_title a').trigger('click'); + }; return $($window.document).keydown(function(e) { var focused, scrollArea; focused = $(':focus'); @@ -228,6 +233,8 @@ License along with this library. If not, see <http://www.gnu.org/licenses/>. } else if (e.keyCode === 72) { starCurrentItem(scrollArea); return jumpToNextItem(scrollArea); + } else if (e.keyCode === 79) { + return openCurrentItem(scrollArea); } } }); |