Closed Bug 291448 Opened 20 years ago Closed 20 years ago

"browser.display.focus_ring_width" pref does not work when "browser.display.focus_ring_on_anything" is false

Categories

(Core :: Layout, defect)

defect
Not set
minor

Tracking

()

RESOLVED INVALID

People

(Reporter: acidarrow, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b2) Gecko/20050419 Firefox/1.0+
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b2) Gecko/20050419 Firefox/1.0+

When browser.display.focus_ring_on_anything is set to false a one pixel border
is still visible when clicking a link.

The only way to get rid of the border when clicking on links is to set
browser.display.focus_ring_width to 0 AND browser.display.focus_ring_on_anything
to true.

Reproducible: Always

Steps to Reproduce:
1. Open about:config
2. Check that browser.display.focus_ring_on_anything is set to false
3. See that a 1 pixel border still appears on links.
Is this a regression?

As far as I can see, browser.display.focus_ring_on_anything is only meant to
determine whether _all_ elements should have the rings, or only links and other
usual items. 
Assignee: firefox → nobody
Component: General → Layout: Misc Code
Product: Firefox → Core
QA Contact: general → layout.misc-code
Version: unspecified → Trunk
I checked another machine with the same firefox build and it was working
properly (browser.display.focus_ring_width was working indepedently of
browser.display.focus_ring_on_anything) so I think it may be random. I'll try
making another clean install of firefox and try again.
I guess I'm not really clear on what the expected/actual results are here.

Are you saying that the bug is that the _width pref doesn't work without the
focus_ring_on_anything pref?
example :
browser.display.focus_ring_on_anything is set to false and
browser.display.focus_ring_width is set to 5.

I get a one pixel border when clicking on links. Shouldn't
browser.display.focus_ring_width control the border size on links regardless of
what browser.display.focus_ring_on_anything is set?
So this is a better summary, right?
OS: Windows XP → All
Hardware: PC → All
Summary: browser.display.focus_ring_on_anything does not work properly → "browser.display.focus_ring_width" pref does not work when "browser.display.focus_ring_on_anything" is false
This worksforme in a current trunk Linux Seamonkey build -- setting the width
pref to 0 disables focus outlines on links (and the "anything" pref is not set).
(In reply to comment #4)
> example :
> browser.display.focus_ring_on_anything is set to false and
> browser.display.focus_ring_width is set to 5.
> 
> I get a one pixel border when clicking on links. Shouldn't
> browser.display.focus_ring_width control the border size on links regardless of
> what browser.display.focus_ring_on_anything is set?

Ah, I understand what the problem is now.

http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/layout/base/nsPresShell.cpp&rev=3.839&mark=2555#2553

As you can see, the focus ring width is limited to 4 pixels, so a value of 5
won't have any effect. This is probably INVALID, then.
Oh, right.  If focus rings are not being forced, then too-large values are ignored.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
Product: Core → Core Graveyard
Component: Layout: Misc Code → Layout
Product: Core Graveyard → Core
You need to log in before you can comment on or make changes to this bug.