From 7c8dc7e85dd7af741dbe83bba7847106ca0ffc99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Laura=20Kl=C3=BCnder?= Date: Sun, 29 Oct 2017 20:05:13 +0100 Subject: [PATCH] more autofocus on view transitions --- src/c3nav/site/static/site/js/c3nav.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/c3nav/site/static/site/js/c3nav.js b/src/c3nav/site/static/site/js/c3nav.js index 0ce7a659..8a00736b 100644 --- a/src/c3nav/site/static/site/js/c3nav.js +++ b/src/c3nav/site/static/site/js/c3nav.js @@ -25,6 +25,7 @@ c3nav = { }, _location_buttons_route_click: function () { c3nav._set_view('route-search'); + c3nav._locationinput_focus_next(); }, _route_buttons_swap_click: function () { var $origin = $('#origin-input'), @@ -34,6 +35,7 @@ c3nav = { c3nav._locationinput_set($destination, tmp); $origin.stop().css('top', '55px').animate({top: 0}, 150); $destination.stop().css('top', '-55px').animate({top: 0}, 150); + c3nav._locationinput_focus_next(); }, _route_buttons_close_click: function () { var $origin = $('#origin-input'), @@ -42,6 +44,12 @@ c3nav = { c3nav._locationinput_set($destination, $origin.data('location')); } c3nav._locationinput_set($origin, null); + if ($destination.is('.selected')) { + c3nav._set_view('location'); + } else { + c3nav._set_view('search'); + $destination.find('input').focus(); + } c3nav._set_view($destination.is('.selected') ? 'location' : 'search'); }, @@ -211,7 +219,7 @@ c3nav = { _locationinput_focus_next: function (elem) { $next = $('.locationinput:not(.selected)'); if ($next.length === 0) { - elem.find('input').blur(); + if (elem) elem.find('input').blur(); } else { $next.find('input').focus(); }