[Webkit-unassigned] [Bug 33418] [Qt] Custom select popups.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jan 11 07:11:08 PST 2010


https://bugs.webkit.org/show_bug.cgi?id=33418





--- Comment #24 from Luiz Agostini <luiz.agostini at openbossa.org>  2010-01-11 07:11:06 PST ---
(In reply to comment #21)
> (In reply to comment #13)
> > Created an attachment (id=46209)
 --> (https://bugs.webkit.org/attachment.cgi?id=46209) [details] [details]
> > Custom popups, popup factories and usage example.
> 
> Some comments:
> 
> * I don't understand why we're adding a public exported class but a private API
> to actually use it.
If this is supposed to get in to 4.6.x release we need to make it private.
Should I move the class to the *_p.h file until it can be made public?
> 
> * I'm not particularly fond of the term QWebPopup. It suggests that this
> relates to popup menus in web sites (sometimes also called dhtml menus). Just
> brainstorming: How about QWebListSelectionDelegate (too long)?
What about QWebSelectPopupDelegate. It says it is a popup related to a <select>
html element.
> 
> * Public Qt classes usually don't have non-virtual protected methods, they
> belong into the d-pointer.
Those methods are there to be used by the derived classes, not to be
implemented by them. Should the d-pointer be protected?
> 
> * It appears the parent of the popup should be passed to the constructor and at
> the time the factory is called. That would also reduce the number of virtual
> functions one has to re-implement.
The popup object is created for each combobox just when needed but it is kept
alive until the page is unloaded. There could for example have many views
showing the same scene. The parent must then be adjusted before showing the
popup.
> 
> * Why is there a difference between show() and hide()? Why not capture the
> delegation in one single function call? Something along the lines of
> 
> int selectedIndex = select(geometry, items, initialSelectedIndex);
I think that this call must not be synchronous. I think it is not possible to
block that thread while the user chooses an item in a combobox.
> 
> 
> I think a goal of this API should be that it requires minimal effort to
> implement. If all it takes is one method call, then perhaps a better frame for
> this would be a QWebUIDelegate of some sort, provided we can keep it easily and
> conviently extensible.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list