Sunday, April 28, 2024
 Popular · Latest · Hot · Upcoming
8
rated 0 times [  8] [ 0]  / answers: 1 / hits: 3004  / 3 Years ago, wed, july 14, 2021, 11:10:40

I have added additional search providers (e.g., AskUbuntu, Wolfram, YouTube) in the /usr/share/gnome-shell/search_providers directory. These work great. However, the order in which they appear on the Activities Overview is not logical.



Is it possible to change the order in which search providers are displayed?



Bonus: How do I make one the default?


More From » 11.10

 Answers
0

11.10


There is a key that is referred to in the gnome-shell search code that allows you to specify which search providers should not be displayed...


By changing the logic you can change that to be a search order list - for example


gsettings set org.gnome.shell disabled-open-search-providers "['duckduckgo.xml', 'google.xml', 'wikipedia.xml']"

enter image description here


gsettings set org.gnome.shell disabled-open-search-providers "['wikipedia.xml', 'duckduckgo.xml', 'google.xml']"

enter image description here


how to


First make a backup copy of the search script:


sudo cp /usr/share/gnome-shell/js/ui/search.js /usr/share/gnome-shell/js/ui/search.js.backup

Now edit the search script:


gksudo gedit /usr/share/gnome-shell/js/ui/search.js

Look for the function containing the following code (it probably starts on line 325):


 _refresh: function() {
this._providers = [];
let names = global.settings.get_strv(DISABLED_OPEN_SEARCH_PROVIDERS_KEY);
let file = Gio.file_new_for_path(global.datadir + '/search_providers');
FileUtils.listDirAsync(file, Lang.bind(this, function(files) {
for (let i = 0; i < files.length; i++) {
let enabled = true;
let name = files[i].get_name();
for (let k = 0; k < names.length; k++)
if (names[k] == name)
enabled = false;
if (enabled)
this._addProvider(name);
}
}));
}

Change this function to be:


_refresh: function() {
this._providers = [];
let names = global.settings.get_strv(DISABLED_OPEN_SEARCH_PROVIDERS_KEY);
let file = Gio.file_new_for_path(global.datadir + '/search_providers');
FileUtils.listDirAsync(file, Lang.bind(this, function(files) {
for (let i = 0; i < names.length; i++) {
for (let k = 0; k < files.length; k++)
if (names[i] == files[k].get_name())
this._addProvider(names[i])
}
}));
}

Press Alt+F2, type 'r' and press enter. This should restart Gnome-shell). Alternatively, logout and login.


credit




Linked Questions:



  1. Is it possible to customise the search engine buttons in GNOME Shell?

  2. Is it possible to remove or replace Google search in GNOME Shell's dash?


[#41334] Friday, July 16, 2021, 3 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
itteast

Total Points: 291
Total Questions: 123
Total Answers: 104

Location: Tuvalu
Member since Wed, Mar 29, 2023
1 Year ago
;