Closed Bug 8625 Opened 25 years ago Closed 25 years ago

[BLOCKER] Scrolling view's need to support gfx-rendered scrollbars.

Categories

(Core :: Web Painting, defect, P3)

x86
Windows NT
defect

Tracking

()

VERIFIED FIXED

People

(Reporter: kmcclusk, Assigned: beard)

Details

We need to be able to support gfx-rendered scrollbar for scrolling views. The problem is that the gfx-rendered scrollbars are implemented as frames. It may be better to modified the nsScrollFrame to create scrollbars as frame's instead of relying on the view to create the scrollbars. We would at least need to be able to turn the native scrollbars off in this case. This is a blocker for frame-based combo-boxes. I can not do a system mouse capture to roll up the drop-down list on a combo box unless the scrollbars are gfx-rendered. Currently, scrollbars are a separate window so if I capture the mouse events for the drop-list items I will not get the scroll events for the drop-downs scrollbar.
Status: NEW → ASSIGNED
Target Milestone: M11
Eric Vaughan an dI need to collaborate on a listener interface that provides a way for frame-based GFX scrollbars to communicate with the scrolling view. This could help us work out the issues of mouse capture, etc.
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
I've created a new interface in mozilla/view/public/nsIScrollPositionListener.h, which allows interested parties to hear about scroll position changes of an nsIScrollableView. I added the methods AddScrollPositionListener and RemoveScrollPositionListener to nsIScrollableView, and keep references to the listeners in an nsISupportsArray. When the scroll position changes, all interested listeners are notified. This should solve most of the problems we have with scrolling independently of the scrollbars.
QA Contact: beppe → claudius
Status: RESOLVED → VERIFIED
I'm just gonna trust you guys and mark this one VERIFIED. I am surprised however that there are no dependencies listed for this bug.
Component: Layout: View Rendering → Layout: Web Painting
You need to log in before you can comment on or make changes to this bug.