Opened on 09/27/2015 at 07:04:47 AM

Closed on 11/09/2015 at 09:21:25 AM

#3128 closed defect (fixed)

The default search engine is removed if it was one of those removed by #3047

Reported by: fhd Assignee: rjeschke
Priority: P2 Milestone: Adblock-Browser-for-Android-1.1.0
Module: Adblock-Browser-for-Android Keywords:
Cc: mario, vickyyu Blocked By:
Blocking: Platform: Adblock Browser for Android
Ready: yes Confidential: no
Tester: Shikitita Verified working: no
Review URL(s):

https://codereview.adblockplus.org/29329014/
https://codereview.adblockplus.org/29329018/

Description (last modified by fhd)

Environment

Adblock Browser revision ab1157fc19de.

How to reproduce

  1. Uninstall Adblock Browser, if it was installed.
  2. Install devbuild 1.0.0.20150906072827.
  3. Launch Adblock Browser.
  4. Change the default search engine to Bing.
  5. Install revision ab1157fc19de.
  6. Launch Adblock Browser.

Observed behaviour

The default search engine is DuckDuckGo.

Expected behaviour

The default search engine should still be Bing.

Analysis

We have changed the set of search engines that are available by default in #3047. The problem is that, if the user selected a search engine that is not in the list anymore as the default, he will have to re-add it manually, and set it as the default again.

The best way to address this is to partially revert #3047 - it should only set the order of the top five search engines, not remove any search engines. Instead, it suffices to ensure that only the top five search engines show up in the search activity.

This has one side effect: We do not overwrite the search engine orders for users that have made any changes to it, i.e. changed the default search engine. That is something we can live with.

Attachments (0)

Change History (21)

comment:1 Changed on 09/27/2015 at 07:08:58 AM by fhd

  • Summary changed from Search engines that disappeared from the default list after #3047 disappear if set to the default, too to The default search engine is removed if it was one of those removed by #3047

comment:2 Changed on 09/27/2015 at 07:09:29 AM by fhd

Not set to Ready - still not sure how it really should be.

comment:3 Changed on 10/05/2015 at 06:26:59 PM by fhd

  • Priority changed from Unknown to P2
  • Ready set

comment:4 Changed on 10/05/2015 at 06:27:32 PM by fhd

  • Owner set to rjeschke

Assigning to René, since he's actually working on it.

comment:5 Changed on 10/08/2015 at 02:41:38 PM by fhd

  • Description modified (diff)

comment:6 Changed on 10/09/2015 at 01:27:15 PM by rjeschke

I went with solution 2 in the end, now we have to revisit #3047 and come up with a better list of search engines.

(For that I will create a list of used search engines and orderings per (used) locale.)

comment:7 Changed on 10/09/2015 at 01:27:59 PM by rjeschke

  • Review URL(s) modified (diff)
  • Status changed from new to reviewing

comment:8 Changed on 10/12/2015 at 11:34:09 AM by fhd

  • Description modified (diff)

Discussed it with René - not removing any search engines and instead solving #3047 by only showing the top five in the search activity is a lot simpler, and the behaviour is actually preferable, so we will go with that.

comment:9 Changed on 10/12/2015 at 07:07:16 PM by rjeschke

  • Resolution set to fixed
  • Status changed from reviewing to closed

comment:10 Changed on 10/15/2015 at 02:23:05 PM by philll

  • Tester changed from Unknown to Shikitita

comment:11 follow-up: Changed on 10/16/2015 at 03:13:49 PM by Shikitita

When using Bing as default search engine in ABB 1.0* with search suggestions enabled, then updating to ABB 1.1*, Bing is still listed in the installed search engines in settings, shown in the search activity list under the URL bar when typing some text (according to comment:8, philll guesses it shouldn't) and also in fact used as default search engine. Also, the order of search engines in the search activity list is Bing, DDG, Google, Yahoo, Amazon (Wikipedia missing and wrong order).

When using Bing as default search engine in ABB 1.0* with search suggestions disabled, then updating to ABB 1.1*, Bing is no longer displayed in settings, not displayed in the search activity under the URL bar and also not used as default search engine (DDG is instead). The order of search engines in search activity list is as specified in #3047.

With the Chinese locale but having Google as the default search engine, no matter if the Search Suggestions are enabled or disabled, after updating to the new build, Baidu is back to be the default search engine.

Last edited on 10/19/2015 at 11:17:07 AM by philll

comment:12 Changed on 10/16/2015 at 03:14:04 PM by Shikitita

  • Resolution fixed deleted
  • Status changed from closed to reopened

comment:13 in reply to: ↑ 11 ; follow-ups: Changed on 10/19/2015 at 12:00:36 PM by fhd

Replying to Shikitita:

When using Bing as default search engine in ABB 1.0* with search suggestions enabled, then updating to ABB 1.1*, Bing is still listed in the installed search engines in settings, shown in the search activity list under the URL bar when typing some text (according to comment:8, philll guesses it shouldn't) and also in fact used as default search engine.

That is all how it should be: If the user had Bing as the default, it should still be the default, and still show up in the search activity.

Also, the order of search engines in the search activity list is Bing, DDG, Google, Yahoo, Amazon (Wikipedia missing and wrong order).

Yes, that's a problem, we're leaving the order alone now... I don't think it's critical, but worth discussing.

When using Bing as default search engine in ABB 1.0* with search suggestions disabled, then updating to ABB 1.1*, Bing is no longer displayed in settings, not displayed in the search activity under the URL bar and also not used as default search engine (DDG is instead). The order of search engines in search activity list is as specified in #3047.

That's weird, needs investigating. Shouldn't make a difference if search suggestions are disabled.

With the Chinese locale but having Google as the default search engine, no matter if the Search Suggestions are enabled or disabled, after updating to the new build, Baidu is back to be the default search engine.

Yes, that also needs investigating.

comment:14 Changed on 10/20/2015 at 08:31:22 AM by mario

  • Cc mario added

comment:15 Changed on 10/20/2015 at 11:00:07 AM by vickyyu

  • Cc vickyyu added

comment:16 Changed on 10/20/2015 at 11:51:44 AM by Shikitita

Note also that, if Bing is added as a default search engine in ABB 1.0*, with Chinese locale and search suggestions enabled, and then the build is updated to ABB 1.1*, Bing will still be listed in the installed search engines in settings and also as default search engine.

However, if the search suggestions are disabled, Bing will still be listed as an installed search engine after updating to ABB 1.1*, but Baidu will then be the one marked as the default search engine.

Also, the behaviour regarding the search suggestions is different depending on the locale (maybe intended but it shouldn't). Even if Bing is the default search engine for Chinese locale and the search suggestions are enabled, they are not displayed in the search activity list. However, if Google or Baidu are the default search engines, the search suggestions are then displayed.

comment:17 in reply to: ↑ 13 Changed on 10/28/2015 at 02:42:58 PM by fhd

Replying to fhd:

Replying to Shikitita:

With the Chinese locale but having Google as the default search engine, no matter if the Search Suggestions are enabled or disabled, after updating to the new build, Baidu is back to be the default search engine.

Yes, that also needs investigating.

Did that now. I've changed the language to simplified Chinese, then installed Adblock Browser: The default search engine is not DuckDuckGo, but Google. Therefore, if the user upgrades to a version that sets a different default search engine, they have their default search engine changed. That is exactly how it should be.

comment:18 in reply to: ↑ 13 Changed on 10/28/2015 at 02:52:04 PM by fhd

  • Description modified (diff)

Replying to fhd:

Also, the order of search engines in the search activity list is Bing, DDG, Google, Yahoo, Amazon (Wikipedia missing and wrong order).

Yes, that's a problem, we're leaving the order alone now... I don't think it's critical, but worth discussing.

I discussed this a bit with René. Technically, we cannot overwrite the search engine order with an update if the user has already made changes, we would need some explicit migration code for that. René and I agree that this is by a long shot not worth the effort. I've clarified that above.

comment:19 Changed on 10/28/2015 at 03:14:28 PM by rjeschke

As for the Bing issue, I could not reproduce it. Here's what I did:

  1. Locale is de_DE
  2. Uninstall ABB
  3. Install Adblock Browser for Android 1.0.0.20150906072827 https://downloads.adblockplus.org/devbuilds/adblockbrowser/adblockbrowser-1.0.0.20150906072827-arm.apk
  4. Start the browser
  5. Settings->...->Search: Change default to Bing
  6. Enable search suggestions (for the second test only)
  7. Try a search
  8. Apply automatic update
  9. Re-check

In both cases (with and without search suggestions enabled) I always end up with:

  1. Bing (default)
  2. Google
  3. Yahoo
  4. Amazon
  5. DuckDuckGo

This behaviour is expected. Here's the explanation why:

Firefox has two ways to determine the order of search engines and the default one. The first one is the built-in lists and the second one is user preferences.

If the user now changes the order of search engines or changes the default one, a user preference for this new ordering is created and will now have priority over built-in values. This means that the order does not change through the update, it now just displays only 5 engines instead of all.

There's also no clean way in changing this behaviour (e.g. by modifying the user preferences) as we can not determine which change is would be appropriate, as the user could have e.g added engines or re-ordered them and is fine with it.

comment:20 Changed on 11/06/2015 at 08:41:13 AM by Shikitita

Replying to fhd:

Did that now. I've changed the language to simplified Chinese, then installed Adblock Browser: The default search engine is not DuckDuckGo, but Google. Therefore, if the user upgrades to a version that sets a different default search engine, they have their default search engine changed. That is exactly how it should be.

Replying to rjeschke:

Firefox has two ways to determine the order of search engines and the default one. The first one is the built-in lists and the second one is user preferences.

If the user now changes the order of search engines or changes the default one, a user preference for this new ordering is created and will now have priority over built-in values. This means that the order does not change through the update, it now just displays only 5 engines instead of all.

There's also no clean way in changing this behaviour (e.g. by modifying the user preferences) as we can not determine which change is would be appropriate, as the user could have e.g added engines or re-ordered them and is fine with it.


After what Felix and I observed on Wednesday, I tested this again but with a physical device and I can confirm:

  • First: the behaviour is as expected
  • Second: my first results were conditioned by the environment provided by Testobject

Therefore this ticket can be set again as closed.

comment:21 Changed on 11/09/2015 at 09:21:25 AM by fhd

  • Milestone set to Adblock-Browser-for-Android-1.1.0
  • Resolution set to fixed
  • Status changed from reopened to closed

Awesome! I hope the issue reflects now how things are supposed to work.

Add Comment

Modify Ticket

Change Properties
Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from rjeschke.
 
Note: See TracTickets for help on using tickets.