Opened 9 years ago
Closed 9 years ago
#12603 closed bug (fixed)
[regression] [Interface Kit] white border around some menus
Reported by: | diver | Owned by: | axeld |
---|---|---|---|
Priority: | blocker | Milestone: | R1/beta1 |
Component: | Kits/Interface Kit | Version: | R1/Development |
Keywords: | Cc: | looncraz | |
Blocked By: | Blocking: | ||
Platform: | All |
Attachments (1)
Change History (10)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Milestone: | R1 → R1/beta1 |
---|---|
Priority: | normal → blocker |
Summary: | [Interface Kit] white border around some menus → [regression] [Interface Kit] white border around some menus |
comment:3 by , 9 years ago
This took me a bit to understand what was wrong as it was so rarely occurring, but it was just the fact that we should be adopting the parent view color as the low color. Easily missed because most views' low color is the same as their view color (especially during initialization).
Attaching a patch.
by , 9 years ago
Attachment: | MenuField-LowColor.patch added |
---|
comment:4 by , 9 years ago
patch: | 0 → 1 |
---|
follow-up: 6 comment:5 by , 9 years ago
Can this patch be applied or is there still something wrong with it?
comment:6 by , 9 years ago
Replying to markh:
Can this patch be applied or is there still something wrong with it?
It should probably be applied, it's a really simple fix that restores the intent of the code that existed prior to the application of another patch.
follow-up: 8 comment:7 by , 9 years ago
I'm not sure it goes the right way, setting the low color is known to cause flickering in some cases because the view is filled with the low color on invalidation (and then redrawn over that).
Why wouldn't BMenuField drawing use the ViewColor directly instead?
comment:8 by , 9 years ago
Replying to pulkomandy:
I'm not sure it goes the right way, setting the low color is known to cause flickering in some cases because the view is filled with the low color on invalidation (and then redrawn over that).
Why wouldn't BMenuField drawing use the ViewColor directly instead?
The low color matches the parent's view color, so it is used to draw a border around the menu when giving it a shape. Usually the view color and the low color are the same.
This method is used for many interface elements without issue (and it is the default BControl behavior). This is also the method deployed prior to the application of the SetViewUIColor patchset.
Another example is menus in Pe's find window.