Opened on 12/16/2018 at 06:30:48 PM

Closed on 08/29/2019 at 05:43:18 PM

Last modified on 05/04/2020 at 09:01:01 PM

#7170 closed defect (rejected)

bug: ABP does not unhide nodes no longer matching :-abp-has(...) procedural cosmetic filters

Reported by: krystian3w Assignee:
Priority: Unknown Milestone:
Module: Platform Keywords: closed-in-favor-of-gitlab
Cc: kzar, sebastian, hfiguiere, mjethani, mapx, greiner Blocked By:
Blocking: Platform: Unknown / Cross platform
Ready: no Confidential: no
Tester: Unknown Verified working: yes
Review URL(s):

Description (last modified by mapx)

Test links

https://www.e-forma.pl/3575,7nutrition-citrulline-malate-b6-250g-cytrulina.html
http://homeoapteka.pl/2822,bonimed-ziolowy-balsam-kregowy-ojca-grzegorza-100-g.html

Problem:
How can I block only newsletter pop-up when filter:

e-forma.pl,homeoapteka.pl#?##colorbox:-abp-has(#newsletter_colorbox)

breaks too gallery and I cannot see bigger photos products (magnifier/loupe plugin on site is should not enough for all)?

Overlay/background I can detect by style tag and cut only for newsletter:

e-forma.pl,homeoapteka.pl###cboxOverlay:not([style="opacity: 0.9; visibility: visible; display: block; cursor: pointer;"])

Helpful graphics:

https://i.imgur.com/7s9d5eW.png
https://i.imgur.com/7s9d5eW.png

Similar bug fixed in uBlock Origin: /uBlockOrigin/uBlock-issues/issues/341

Attachments (0)

Change History (14)

comment:1 Changed on 12/16/2018 at 06:39:04 PM by mapx

  • Cc kzar sebastian hfiguiere mjethani mapx added
  • Component changed from Unknown to Platform

comment:2 in reply to: ↑ description Changed on 12/16/2018 at 06:49:45 PM by krystian3w

Last edited on 12/16/2018 at 06:51:49 PM by mapx

comment:3 Changed on 12/16/2018 at 06:51:38 PM by mapx

  • Description modified (diff)

comment:4 Changed on 12/16/2018 at 06:54:16 PM by mapx

Steps:

  1. add:

e-forma.pl#?##colorbox:-abp-has(#newsletter_colorbox)
e-forma.pl###cboxOverlay

  1. go to https://www.e-forma.pl/3575,7nutrition-citrulline-malate-b6-250g-cytrulina.html
  2. The newsletter popup is hidden
  3. click the object in the page => the magnifier tool does not work because the filter above (first one) is hiding colorbox div even not containing newsletter_colorbox

ABP should hide only the first 1 colorbox but not the second 1

Last edited on 12/16/2018 at 06:57:41 PM by mapx

comment:5 Changed on 12/16/2018 at 06:58:26 PM by mapx

  • Summary changed from ABP does not unhide nodes no longer matching :-abp-has(...) procedural cosmetic filters to bug: ABP does not unhide nodes no longer matching :-abp-has(...) procedural cosmetic filters

comment:6 Changed on 12/16/2018 at 07:42:13 PM by krystian3w

the magnifier tool does not work because the filter above


magnifier tool works, no works gallery after click on picture:

https://i.imgur.com/T13d679.png

with filter above send.


I "found" workaround with (but have to many minuses):

or

minuses:

  • this is no works if background code no have specific attrib e.g. :not([style="..."]) and no puted above pop-up html code in dom tree.
  • the use of this workaround can further cut mustows of other pop-ups with a identical background and were not a newsletter (save only those with a useful preview of photos in the gallery).
  • also closing newsletter pop-up in the past causes the workaround to not work and still break gallery.
Last edited on 12/19/2018 at 11:42:13 PM by krystian3w

comment:7 Changed on 12/17/2018 at 09:11:04 PM by krystian3w

Another problematic domains with same type newsletter:

oponyalbert.pl
meblezagrosze.pl
annalotan.pl

embeded by colorbox plugin.

Last edited on 12/19/2018 at 11:30:34 PM by krystian3w

comment:8 Changed on 12/19/2018 at 01:05:45 PM by mapx

  • Cc greiner added

comment:9 Changed on 12/19/2018 at 01:12:46 PM by mjethani

I haven't looked into the specific example posted in the issue description, but I'll just say that element hiding emulation (:-abp-has(), etc.) isn't supposed to unhide anything, so this is sort of "by design". It would be nice if it did work, and we could look into it, but the effort would be non-trivial.

For one, we wouldn't even know which elements we hid because we set style="display: none !mportant" instead of using a style sheet. We've pretty much abandoned our plans to use a style sheet (#6504) because Chromium won't implement tabs.removeCSS (even though I have implemented all the underlying changes, see bug #608854).

comment:10 Changed on 12/19/2018 at 01:30:11 PM by mapx

So, you are saying abp-has is useless => ABP will hide colorbox even if #newsletter_colorbox is not a child of colorbox
(uBo fixed the issue)

comment:11 Changed on 12/19/2018 at 01:34:30 PM by mjethani

It may be useless right now for the given use case.

For what it's worth, :-abp-has() is "useless" (or unusable) for several other reasons (e.g. #6813). We intend to address these issues next year.

Right now there are only 34 filters in EasyList that use element hiding emulation:

curl https://easylist-downloads.adblockplus.org/easylist.txt | grep '#?#' | wc -l

comment:12 Changed on 12/19/2018 at 11:32:54 PM by krystian3w

We intend to address these issues next year.

As I did not expect it, they would fix it in three days in uBO addon (beta / dev version).


As if the links from the first post down in next year, just try another product available in shops, just as I wrote it has a lot of disadvantages.


For one, we wouldn't even know which elements we hid because we set style="display: none !mportant" instead of using a style sheet.

annalotan.pl,e-forma.pl,homeoapteka.pl,oponyalbert.pl,meblezagrosze.pl###cboxOverlay:not([style="opacity: 0.9; visibility: visible; display: block; cursor: pointer;"])
annalotan.pl,e-forma.pl,homeoapteka.pl,oponyalbert.pl,meblezagrosze.pl###cboxOverlay:not([style="opacity: 0.9; visibility: visible; display: block; cursor: pointer;"]) ~ #colorbox

I block overlay pop-up no match with gallery shop ("workaround").

Last edited on 12/19/2018 at 11:43:17 PM by krystian3w

comment:13 Changed on 08/29/2019 at 05:43:18 PM by sebastian

  • Keywords closed-in-favor-of-gitlab added
  • Resolution set to rejected
  • Status changed from new to closed

Sorry, but we switched to GitLab. If this issue is still relevant, please file it again in the new issue tracker.

comment:14 Changed on 05/04/2020 at 09:01:01 PM by hfiguiere

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 (none).
 
Note: See TracTickets for help on using tickets.