Hello Robert,

You are right, It is not safe, we should not use my changes, because it
changes behavior.

You also right changing
GraphicsWindowWin32::determineWindowPositionAndStyle(..) to virtual solve
this issue. I will be able to override this function and change default
styles.

Alexander



2014/1/21 Robert Osfield <[email protected]>

> Hi Alexandre,
>
> I haven't used Windows for over a decade so can't help on the Windows
> specifics like this so will have to defer to other Widows developers for
> guidance on how to resolve these issue.  I don't feel just changing the
> default style settings is going to be safe without widespread testing.
>
> My inclination would be to expose these settings in a way that users can
> set them to what they want, either my subclassing from GraphicsWindowWin32
> or by us introducing extra options to pass in with the
> GraphicsConext::Traits object.   For instance we could make
> GraphicsWindowWin32::determineWindowPositionAndStyle(..) a virtual method,
> the same could be done for the other methods that go to create the window.
>
> Thoughts?
> Robert.
>
>
> On 28 November 2013 15:15, Alexander Sinditskiy 
> <[email protected]>wrote:
>
>> Hello all.
>>
>> I have nvidia card, windows 7 sp1.
>>
>> My app is annoying blinking when I am trying to work with fullscreen
>> multidisplay setup.
>> To reproduce this issue you need just create empty viewer and click on
>> screens.
>>
>> You can see my issue on the video:
>>
>> http://www.youtube.com/watch?v=WbHJznlhMio - record using camera
>> http://www.youtube.com/watch?v=R1EVZ_nbRcY - record using screen capture
>>
>> I tested it on lot of nvidia cards, I can reproduce it with every nvidia
>> card.
>>
>> I think "Windows" is trying to enable some mode on right screen and it
>> causes blinking. Also I unable to grab right screen by camstasia.
>>
>> I found that It caused by WS_POPUP flag on windows creation.
>> (src/osgViewer/GraphicsWindowWin32.cpp)
>> Also you can check that fullscreen Firefox does not have this flag and
>> works perfectly.
>>
>> But If I disable this flag I have another issue. Initially created osg
>> window have WS_EX_WINDOWEDGE flag even when I pass 0 as flags. (disable
>> everything).
>> It is really strange behavior of CreateWindowEx function.
>>
>> It can be fixed by setting flags again, but my question is why did it
>> happen?
>>
>> Also my changes affect on behavior of fullscreen osg window.
>> Before it was osg window is HWND_TOPMOST.(no window on top osg). And It
>> is HWND_TOP with my changes (other windows can be on top osg window).
>>
>> May be I need to do this configurable, but I don't know.
>>
>> _______________________________________________
>> 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
>
>
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to