From c5de0ca425c8ae85f6424ec16157a71006bf954d Mon Sep 17 00:00:00 2001 From: r888888888 Date: Sat, 28 Apr 2018 19:10:58 -0700 Subject: [PATCH] clear out menu.bindings on autocomplete lib after search (#3688) --- app/assets/javascripts/autocomplete.js.erb | 20 ++++++++++++++++++++ app/assets/javascripts/posts.js | 3 +++ 2 files changed, 23 insertions(+) diff --git a/app/assets/javascripts/autocomplete.js.erb b/app/assets/javascripts/autocomplete.js.erb index fc1301714..02099e38b 100644 --- a/app/assets/javascripts/autocomplete.js.erb +++ b/app/assets/javascripts/autocomplete.js.erb @@ -62,6 +62,9 @@ Danbooru.Autocomplete.initialize_mention_autocomplete = function($fields) { $fields.autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, select: function(event, ui) { Danbooru.Autocomplete.insert_completion(this, ui.item.value); return false; @@ -100,6 +103,11 @@ var $fields_single = $('[data-autocomplete="tag"]'); $fields_multiple.autocomplete({ + search: function() { + if ($(this).data("ui-autocomplete")) { + $(this).data("ui-autocomplete").menu.bindings = $(); + } + }, select: function(event, ui) { // Prevent Danbooru.Upload.initialize_enter_on_tags from running if the // Enter key is used to select a tag from the autocomplete menu. @@ -184,6 +192,9 @@ }); $fields_single.autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, source: function(req, resp) { Danbooru.Autocomplete.normal_source(req.term, resp); } @@ -192,6 +203,9 @@ Danbooru.Autocomplete.initialize_artist_autocomplete = function($fields) { $fields.autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, source: function(req, resp) { $.ajax({ url: "/artists.json", @@ -219,6 +233,9 @@ Danbooru.Autocomplete.initialize_pool_autocomplete = function($fields) { $fields.autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, source: function(req, resp) { Danbooru.Autocomplete.pool_source(req.term, resp); }, @@ -227,6 +244,9 @@ Danbooru.Autocomplete.initialize_wiki_autocomplete = function($fields) { $fields.autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, source: function(req, resp) { $.ajax({ url: "/wiki_pages.json", diff --git a/app/assets/javascripts/posts.js b/app/assets/javascripts/posts.js index 4b3f1fa5b..b608c4d3a 100644 --- a/app/assets/javascripts/posts.js +++ b/app/assets/javascripts/posts.js @@ -576,6 +576,9 @@ Danbooru.Post.initialize_saved_searches = function() { $("#new_saved_search #saved_search_label_string").autocomplete({ + search: function() { + $(this).data("ui-autocomplete").menu.bindings = $(); + }, source: function(req, resp) { Danbooru.SavedSearch.labels(req.term).then(function(labels) { resp(labels.map(function(label) {