mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
Add setting for autocomplete search
This commit is contained in:
parent
b9f4f3d2c7
commit
94ed104e7c
8 changed files with 30 additions and 3 deletions
|
@ -408,6 +408,17 @@ class Preferences:
|
||||||
'False': False
|
'False': False
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
|
'search_on_autocomplete_click': MapSetting(
|
||||||
|
settings['ui']['search_on_autocomplete_click'],
|
||||||
|
locked=is_locked('search_on_autocomplete_click'),
|
||||||
|
map={
|
||||||
|
'': settings['ui']['search_on_autocomplete_click'],
|
||||||
|
'0': False,
|
||||||
|
'1': True,
|
||||||
|
'True': True,
|
||||||
|
'False': False
|
||||||
|
}
|
||||||
|
),
|
||||||
# fmt: on
|
# fmt: on
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -109,6 +109,7 @@ ui:
|
||||||
query_in_title: false
|
query_in_title: false
|
||||||
# infinite_scroll: When true, automatically loads the next page when scrolling to bottom of the current page.
|
# infinite_scroll: When true, automatically loads the next page when scrolling to bottom of the current page.
|
||||||
infinite_scroll: false
|
infinite_scroll: false
|
||||||
|
search_on_autocomplete_click: true
|
||||||
# ui theme
|
# ui theme
|
||||||
default_theme: simple
|
default_theme: simple
|
||||||
# center the results ?
|
# center the results ?
|
||||||
|
|
|
@ -199,6 +199,7 @@ SCHEMA = {
|
||||||
'query_in_title': SettingsValue(bool, False),
|
'query_in_title': SettingsValue(bool, False),
|
||||||
'infinite_scroll': SettingsValue(bool, False),
|
'infinite_scroll': SettingsValue(bool, False),
|
||||||
'cache_url': SettingsValue(str, 'https://web.archive.org/web/'),
|
'cache_url': SettingsValue(str, 'https://web.archive.org/web/'),
|
||||||
|
"search_on_autocomplete_click": SettingsValue(bool, True)
|
||||||
},
|
},
|
||||||
'preferences': {
|
'preferences': {
|
||||||
'lock': SettingsValue(list, []),
|
'lock': SettingsValue(list, []),
|
||||||
|
|
2
searx/static/themes/simple/js/searxng.min.js
vendored
2
searx/static/themes/simple/js/searxng.min.js
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
params._Select(suggestion);
|
params._Select(suggestion);
|
||||||
// Ctrl + Click = Only place the suggestion in the search bar, no auto search.
|
// Ctrl + Click = Only place the suggestion in the search bar, no auto search.
|
||||||
if(!e.ctrlKey){
|
if(!e.ctrlKey && searxng.settings.search_on_autocomplete_click){
|
||||||
submitIfQuery();
|
submitIfQuery();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -251,6 +251,18 @@
|
||||||
<div class="description">{{ _('Automatically load next page when scrolling to bottom of current page') }}</div>
|
<div class="description">{{ _('Automatically load next page when scrolling to bottom of current page') }}</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if 'search_on_autocomplete_click' not in locked_preferences %}
|
||||||
|
<fieldset>
|
||||||
|
<legend>{{ _('Search on suggestion click') }}</legend>
|
||||||
|
<p class="value">
|
||||||
|
<select name='search_on_autocomplete_click'>
|
||||||
|
<option value="1" {% if search_on_autocomplete_click %}selected="selected"{% endif %}>{{ _('On') }}</option>
|
||||||
|
<option value="0" {% if not search_on_autocomplete_click %}selected="selected"{% endif %}>{{ _('Off')}}</option>
|
||||||
|
</select>
|
||||||
|
</p>
|
||||||
|
<div class="description">{{ _('Automatically search when an autocomplete suggestion is clicked') }}</div>
|
||||||
|
</fieldset>
|
||||||
|
{% endif %}
|
||||||
{{ plugin_preferences('ui') }}
|
{{ plugin_preferences('ui') }}
|
||||||
{{ tab_footer() }}
|
{{ tab_footer() }}
|
||||||
|
|
||||||
|
|
|
@ -399,6 +399,7 @@ def get_client_settings():
|
||||||
'autocomplete_min': get_setting('search.autocomplete_min'),
|
'autocomplete_min': get_setting('search.autocomplete_min'),
|
||||||
'http_method': req_pref.get_value('method'),
|
'http_method': req_pref.get_value('method'),
|
||||||
'infinite_scroll': req_pref.get_value('infinite_scroll'),
|
'infinite_scroll': req_pref.get_value('infinite_scroll'),
|
||||||
|
'search_on_autocomplete_click': req_pref.get_value('search_on_autocomplete_click'),
|
||||||
'translations': get_translations(),
|
'translations': get_translations(),
|
||||||
'search_on_category_select': req_pref.plugins.choices['searx.plugins.search_on_category_select'],
|
'search_on_category_select': req_pref.plugins.choices['searx.plugins.search_on_category_select'],
|
||||||
'hotkeys': req_pref.plugins.choices['searx.plugins.vim_hotkeys'],
|
'hotkeys': req_pref.plugins.choices['searx.plugins.vim_hotkeys'],
|
||||||
|
@ -427,6 +428,7 @@ def render(template_name: str, **kwargs):
|
||||||
kwargs['preferences'] = request.preferences
|
kwargs['preferences'] = request.preferences
|
||||||
kwargs['autocomplete'] = request.preferences.get_value('autocomplete')
|
kwargs['autocomplete'] = request.preferences.get_value('autocomplete')
|
||||||
kwargs['infinite_scroll'] = request.preferences.get_value('infinite_scroll')
|
kwargs['infinite_scroll'] = request.preferences.get_value('infinite_scroll')
|
||||||
|
kwargs['search_on_autocomplete_click'] = request.preferences.get_value('search_on_autocomplete_click')
|
||||||
kwargs['results_on_new_tab'] = request.preferences.get_value('results_on_new_tab')
|
kwargs['results_on_new_tab'] = request.preferences.get_value('results_on_new_tab')
|
||||||
kwargs['advanced_search'] = request.preferences.get_value('advanced_search')
|
kwargs['advanced_search'] = request.preferences.get_value('advanced_search')
|
||||||
kwargs['query_in_title'] = request.preferences.get_value('query_in_title')
|
kwargs['query_in_title'] = request.preferences.get_value('query_in_title')
|
||||||
|
|
Loading…
Add table
Reference in a new issue