[Qt-interest] fullscreen windows on X11 +Xinerama
Wesley Smith
wesley.hoke at gmail.com
Wed Mar 10 21:32:54 CET 2010
yes it's a top-level window. You're probably right about the
attributes. I'm looking into it. Is there a link to the part where
ogl_win->GetDesiredVisualInfo(); GetDesiredVisual is defined?
wes
On Wed, Mar 10, 2010 at 12:25 PM, Clinton Stimpson <clinton at elemtech.com> wrote:
>
> Are you using OpenGL with this top level window? If so, you may need to be
> smarter about XCreateWindow() by getting the right visual and other
> parameters.
>
> Window win = XCreateWindow(display, p, a.x, a.y, a.width, a.height,
> 0, vi->depth, InputOutput, vi->visual,
> CWBackPixel|CWBorderPixel|CWColormap, &attrib);
>
> Complete code is accessible here:
> <http://public.kitware.com/cgi-
> bin/viewcvs.cgi/GUISupport/Qt/QVTKWidget.cxx?view=markup>
>
> Otherwise, you could probably just use your top level window as a container
> for other widgets.
> Also, the OpenGL context should be created during the first show().
>
> Clint
>
> On Wednesday 10 March 2010 01:10:15 pm Wesley Smith wrote:
>> thanks! I'm able to use the create(...) function to do what I want,
>> but now I'm having trouble with OpenGL contexts. Does anyone know how
>> passing a window generated with XCreateWindow interacts with the
>> QGLWidget's OpenGL context? Do I also have to make my own context?
>> It's giving me XBadDrawable errors right now. From what I understand,
>> create gets called by in the constructor. Does anyone know where the
>> opengl context gets created? Does calling create invalidate it if it
>> exists such that the widget will recreate it properly? Or do I have
>> to manage this myself?
>>
>> thanks,
>> wes
>>
>> On Wed, Mar 10, 2010 at 11:27 AM, Clinton Stimpson <clinton at elemtech.com>
> wrote:
>> > On Wednesday 10 March 2010 11:51:51 am Wesley Smith wrote:
>> >> I'm having some issues trying to get fullscreen windows to span
>> >> multiple heads on X11 with Xinerama. I'm on ubuntu Jaunty with Qt
>> >> 4.3. From what I can tell, the window manager is restricting windows
>> >> to be the size of one monitor. I've also tried setting the window to
>> >> be borderless with a size equivalent to the multi-head display and i'm
>> >> not able to get the window beyond one monitor without dragging it
>> >> manually.
>> >>
>> >> I've managed to get a proper multihead fullscreen window in X11
>> >> directly using XSetWindowAttrbutes.override_redirect = True and adding
>> >> the CWOverrideRedirect flag to the window mask field of XCreateWindow.
>> >> Now I'm looking for a way to do this through Qt. Is there any way
>> >> for meet to somehow add these flags while still using QWidget's show
>> >> method to turn a widget into a window?
>> >
>> > If not, then you can still do an XCreateWindow and then use that when you
>> > call QWidget::create(...).
>> >
>> > Clint
>> > _______________________________________________
>> > Qt-interest mailing list
>> > Qt-interest at trolltech.com
>> > http://lists.trolltech.com/mailman/listinfo/qt-interest
>>
>
More information about the Qt-interest-old
mailing list