mozilla-mobile / fenix

⚠️ Fenix (Firefox for Android) moved to a new repository. It is now developed and maintained as part of: https://github.com/mozilla-mobile/firefox-android
https://github.com/mozilla-mobile/firefox-android
Mozilla Public License 2.0
6.47k stars 1.27k forks source link

Duckduckgo missing from alternative search engines, adding difficult, depends on locale #13452

Closed EliasA closed 4 years ago

EliasA commented 4 years ago

Steps to reproduce

1-launch Fenix 2- Open Settings 3- then Search 4- Select default engine

Expected behavior

DuckDuckGo is ready to choose among alternative search engines.

Actual behavior

DDG is not among selections.

The problem from user point of view: using add search engine does not accept URL https://duckduck.com for a seach engine string. One has to know that a working URL string is https://duckduckgo.com/?q=%s

Finding this piece of information is not easy and you have to exit the settings to find the information.

Device information

┆Issue is synchronized with this Jira Task

pabl0 commented 4 years ago

Furthermore, it would not hurt to have some other additional actual general purpose search engines. Firefox for Windows has Bing; the only option on Android mobiles is Google.

EliasA commented 4 years ago

Moreover this seems to be language dependent: if I user Firefox in Finnish, DDG is not available as an alternative, If I use English/US, DDG is available. What is the logic behind this?

EliasA commented 4 years ago

As I changed the language back to Finnish, DDG is still among the alternative search engines. Seems definately like a bug.

liuche commented 4 years ago

@vesta0 will follow up with mkaply about whether this is the desired combination.

freebrowser1 commented 4 years ago

On my Fennec 80.0 beta, DDG is available, my langualge is English.

But search engines should be available independant of the used language.

mkaply commented 4 years ago

We have a worldwide agreement for DDG. This was an oversight.

I've opened a bug to fix in android components.

https://github.com/mozilla-mobile/android-components/issues/8212

I think this worked in Fennec because they added ddg as part of the build process.

mkaply commented 4 years ago

I've put together a patch for this that should work. I also removed Twitter (which we've done on desktop)

https://github.com/mozilla-mobile/android-components/pull/8215

I don't have a Fenix dev environment setup right now, but this should be a pretty straightforward change.

vesta0 commented 4 years ago

Thank you @mkaply

@liuche what would be the next step here?

liuche commented 4 years ago

Looks like @pocmo is working on a PR in AC, so when that lands, we should automatically get those changes and can put a qa-needed label on this.

@vesta0 based on the timing, I think this will be in Fenix 82 (which is the October release) unless you'd like it to be uplifted into the Beta, AND it's not a big change on the AC side to do so.

liuche commented 4 years ago

@vesta0 is this one of the issues that we wanted to get out in September?

vesta0 commented 4 years ago

We don't need to uplift it - 82 should be fine.

liuche commented 4 years ago

Looks like this actually made it into 81 AC cut anyway :)

liuche commented 4 years ago

QA, please verify that duck duck go is now included in the default search engines. Please test some locales, ddg should be part of all of them (from looking at the PR) (and twitter no longer part of the list).

ebalazs-sv commented 4 years ago

I had tested this issue on 81.1.0-beta.2 Build #2015761659 GV 81.0 from 9/2 and Nightly 200904 (Build #2015761907) GV 82.0a1 from 9/4 with Pixel 2 (Android 9), Nexus 5 (Android 6.0.1) and the results are:

Fresh install: ✔️ DuckDuckGo is available in the default search engine for Finnish and other several languages; ✔️ Twitter is not available in the default search engine list;

Updating the app: ✔️ DuckDuckGo is available in the defaults search engine list on Finnish language; ✔️ Twitter is not available in the default search engine list;

Updating the app with the Finnish language set: ❌ DuckDuckGo is not available in the defaults search engine list on Finnish language; ✔️ Twitter is not available in the default search engine list; ❗ This case is solved by clearing data and then setting Finnish language as default;

I will leave this open because this issue is not fixed when updating the app with the Finnish language set, and remove the qa:needed label for now. This issue is also reproducible on Release 8.1.2 (Build #2015761283) GV 80.0.1 from 9/1. cc @liuche please review and advise.

B0pol commented 4 years ago

@freebrowser1

But search engines should be available independant of the used language.

No, it makes sense sometimes. Imagine two people, one live in Japan, the other one in the USA; the Japanese person definitely wants the popular Japanese search engine but the american most likely doesn't want it.

Or chinese people don't want Google because it's banned in China.

EliasA commented 4 years ago

Locale is not the same as language.

English, Spanish, French or German is major language in several countries. On the other hand, Finland has 3 official languages (Finnish, Swedish and Sámi) whereas South Africa has 12 official languages.

liuche commented 4 years ago

@pocmo do you know what the expected behavior should be when upgrading with a locale set? Trying to understand if this is a different bug in our search engine/locale code.

mkaply commented 4 years ago

Updating the app with the Finnish language set: ❌ DuckDuckGo is not available in the defaults search engine list on Finnish language; ✔️ Twitter is not available in the default search engine list; ❗ This case is solved by clearing data and then setting Finnish language as default;

What if you switch locale and switch back? Does it appear? I wonder if we're just storing the list and not refreshing when the browser is updated.

ebalazs-sv commented 4 years ago

Updating the app with the Finnish language set: ❌ DuckDuckGo is not available in the defaults search engine list on Finnish language; ✔️ Twitter is not available in the default search engine list; ❗ This case is solved by clearing data and then setting Finnish language as default;

What if you switch locale and switch back? Does it appear? I wonder if we're just storing the list and not refreshing when the browser is updated.

@mkaply This scenario does not solve the issue, DuckDuckGo is still missing after switching the language and the switch back. Restarting the app does not help either. Also, I noticed that after changing the language the list of default search engines is not refreshed, an app restart is needed in order to see the available list.

liuche commented 4 years ago

Since this thread is long and the title doesn't reflect the upgrade-in-a-different-locale problem, I filed #15737 to make it more clear. Let's close this one because DDG was correctly added as a search engine, and we can reprioritize the other bug.