Hi Brad, I've reviewed your changes and they make me feel like I really need to spend some time rethinking the management of the event focus. Neither your changes or the original feel like clean solution.
Could you please outline how I can reproduce the bugs that you've seen then I can think about these. I must admit I'm a bit cold on the whole topic of CompositeViewer and event focus so will need a little time to get back up to speed and make a good decision about how to go forward - knowing how to recreate the problems will help ramp up quicker. Cheers, Robert. On Tue, May 3, 2011 at 12:06 AM, Brad Huber <[email protected]> wrote: > Actually the fix needs be more like what is attached. Please disregard the > attachments to my first email about this same bug. > > > > In addition to the bug description below, when a RESIZE event is received > CompositeViewer currently does setCameraWithFocus(0); and does not change > masterView (it should!!). This fix addresses that. > > > > I look forward to hearing if there is a better fix for this issue… > > > > Thanks > > -Brad > > > > From: [email protected] > [mailto:[email protected]] On Behalf Of Brad > Huber > Sent: Monday, May 02, 2011 3:24 PM > To: [email protected] > Subject: [osg-submissions] CompositeViewer bug > > > > I’ve attached a fix to a bug I discovered in CompositeViewer which allowed > some GUI events to get sent to the wrong view. The attachment is duplicated > in both .zip and .gz forms for convenience. This behavior was observed on a > Windows machine and I did not test on any other OSes but I suspect it does > exist on the other OSes as well. > > > > I apologize if my submission is not quite in the right form. I tried to > look online for a writeup about the submission protocol but the osg website > was apparently down. > > > > A description of the bug: > > When using composite viewer, if getViewWithFocus() was NULL then masterView > would get set to _views[0]. In the case where you resize the window frame > (and you have not moused over any views within that window) then the resize > event would mistakenly get sent to _views[0] which was in a different window > altogether. I address this by setting masterView to the first view found > within the graphics window instead. > > > > PS I don’t know if this is the best/correct fix, or if something else should > be done instead. It seems to fix the problem for me. > > > > Thanks > > -Brad > > _______________________________________________ > osg-submissions mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org > > _______________________________________________ osg-submissions mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
