Commit e37b3e2fcc710067c74d00d3d89f4bfb05276d6f
1 parent
85cd639c
Exists in
master
and in
29 other branches
tokeninput: don't focus on init to avoid page scroll down
This happens for example on /admin/features with feature members_whitelist_enabled with one member added, the page will load and scroll to token input
Showing
1 changed file
with
6 additions
and
6 deletions
Show diff stats
public/javascripts/jquery.tokeninput.js
| @@ -345,7 +345,7 @@ $.TokenList = function (input, url_or_data, options) { | @@ -345,7 +345,7 @@ $.TokenList = function (input, url_or_data, options) { | ||
| 345 | dropdown.appendTo("body"); | 345 | dropdown.appendTo("body"); |
| 346 | if (!settings.permanentDropdown) | 346 | if (!settings.permanentDropdown) |
| 347 | dropdown.appendTo("body"); | 347 | dropdown.appendTo("body"); |
| 348 | - else | 348 | + else |
| 349 | $(input).after(dropdown.show()); | 349 | $(input).after(dropdown.show()); |
| 350 | 350 | ||
| 351 | if (settings.permanentDropdown || settings.showAllResults) { | 351 | if (settings.permanentDropdown || settings.showAllResults) { |
| @@ -382,7 +382,7 @@ $.TokenList = function (input, url_or_data, options) { | @@ -382,7 +382,7 @@ $.TokenList = function (input, url_or_data, options) { | ||
| 382 | if(li_data && li_data.length) { | 382 | if(li_data && li_data.length) { |
| 383 | $.each(li_data, function (index, value) { | 383 | $.each(li_data, function (index, value) { |
| 384 | insert_token(value); | 384 | insert_token(value); |
| 385 | - checkTokenLimit(); | 385 | + checkTokenLimit({init: true}); |
| 386 | }); | 386 | }); |
| 387 | } | 387 | } |
| 388 | 388 | ||
| @@ -425,12 +425,12 @@ $.TokenList = function (input, url_or_data, options) { | @@ -425,12 +425,12 @@ $.TokenList = function (input, url_or_data, options) { | ||
| 425 | // Private functions | 425 | // Private functions |
| 426 | // | 426 | // |
| 427 | 427 | ||
| 428 | - function checkTokenLimit() { | 428 | + function checkTokenLimit(options) { |
| 429 | if(settings.tokenLimit !== null && token_count >= settings.tokenLimit) { | 429 | if(settings.tokenLimit !== null && token_count >= settings.tokenLimit) { |
| 430 | input_box.hide(); | 430 | input_box.hide(); |
| 431 | hide_dropdown(); | 431 | hide_dropdown(); |
| 432 | return; | 432 | return; |
| 433 | - } else { | 433 | + } else if (options && !options.init) { |
| 434 | input_box.focus(); | 434 | input_box.focus(); |
| 435 | } | 435 | } |
| 436 | } | 436 | } |
| @@ -618,7 +618,7 @@ $.TokenList = function (input, url_or_data, options) { | @@ -618,7 +618,7 @@ $.TokenList = function (input, url_or_data, options) { | ||
| 618 | if (!settings.showAllResults) | 618 | if (!settings.showAllResults) |
| 619 | dropdown.empty(); | 619 | dropdown.empty(); |
| 620 | selected_dropdown_item = null; | 620 | selected_dropdown_item = null; |
| 621 | - } | 621 | + } |
| 622 | if (settings.showAllResults) | 622 | if (settings.showAllResults) |
| 623 | show_dropdown_hint(); | 623 | show_dropdown_hint(); |
| 624 | } | 624 | } |
| @@ -728,7 +728,7 @@ $.TokenList = function (input, url_or_data, options) { | @@ -728,7 +728,7 @@ $.TokenList = function (input, url_or_data, options) { | ||
| 728 | item.addClass(settings.classes.selectedDropdownItem); | 728 | item.addClass(settings.classes.selectedDropdownItem); |
| 729 | selected_dropdown_item = item.get(0); | 729 | selected_dropdown_item = item.get(0); |
| 730 | 730 | ||
| 731 | - isBefore = item[0].offsetTop <= (dropdown[0].scrollTop + dropdown[0].scrollWidth); | 731 | + isBefore = item[0].offsetTop <= (dropdown[0].scrollTop + dropdown[0].scrollWidth); |
| 732 | isAfter = item[0].offsetTop >= dropdown[0].scrollTop; | 732 | isAfter = item[0].offsetTop >= dropdown[0].scrollTop; |
| 733 | visible = isBefore && isAfter; | 733 | visible = isBefore && isAfter; |
| 734 | if (!visible) { | 734 | if (!visible) { |