Qt Bottle Tutorial - Linux display issue

Hello,

I have OCC7.0.0 and Qt5.7.0. The bottle tutorial in samples/qt/Tutorial builds and runs, but when I resize the graphics window with the mouse curser, the graphic window display starts to shrink until I use the maximize button, then it stops. If I resize the main window when the graphic window is maximized the same thing happens. Un-maximizing the graphics window will make it stop. Resizing the main window (with the mouse) when the graphics window is not maximized does not cause a problem. I have the same issue with the IESample program, as well. I am attaching a short video that demonstrates the problem.

I used the included scripts to build and run the project. The one thing I changed is I commented out the lines in Tutorial.pro that added the freeimage and tbb libraries, since I don't have them installed. Here are the messages that appear in the console when I run it:

QObject::connect: No such signal QAction::activated()
libpng warning: bKGD: invalid index
TKOpenGl | Type: Other | ID: 0 | Severity: Medium | Message:
  OpenGl_Window::CreateWindow: window Visual is incomplete: no depth buffer, no stencil buffer
QObject::connect: No such signal QAction::activated()
QObject::connect: No such signal QAction::activated()
QObject::connect: No such signal QAction::activated()
QObject::connect: No such signal QAction::activated()
QObject::connect: No such signal QMdiArea::windowActivated (QWidget*)

I should also note that I tried on a different machine using Windows with the same Qt and OCC versions and did not have this problem.

Any ideas on what is wrong? Thanks in advance for any help anyone can provide.

Paul

System info:
Linux 4.7.0 kernel
gcc 6.1.0
Samsung NP350V5C laptop
Intel® Core™ i5-3210M CPU @ 2.50GHz × 4
Intel® Ivybridge Mobile graphics (on-board graphics)
6.0 GB RAM

EDIT: Video is actually from the Import/Export sample, but the behaviour is the same on the bottle tutorial.

Stefan Sicklinger's picture

I have the same issue!

Paul Hentschel's picture

Hi Stefan. Thanks for letting me know it's not just me.I may file a bug report now that I know someone else has the same issue. I have since tried it on a machine with a NVIDIA Quadro K4000 graphic card and had the same result. Just for reference, do you mind sharing what Linux kernel, qt version, gcc version and graphics card you are using?

Stefan Sicklinger's picture

Thanks!

Linux kubuntu 4.4.0-34-generic 
QT 5.6
OCC 7.0.0
Running within a virtual box (Nvidia GTX660)
gcc 5.4.0

Stefan Sicklinger's picture

I found the source of the problem: It has to be inside OcctWindow. When I generate the window with the "old" method;

        #if defined _WIN32 || defined __WIN32__
        myWindow = new WNT_Window((Aspect_Handle)winId());
        #elif defined __APPLE__
        myWindow = new Cocoa_Window((NSView *)winId());
        #else
        Aspect_Handle windowHandle = (Aspect_Handle)winId();
        myWindow = new Xw_Window(myContext->CurrentViewer()->Driver()->GetDisplayConnection(),
                                 windowHandle);
        #endif

it works!

Paul Hentschel's picture

Great! Nice to have a narrowed down.Thanks!

Stefan Sicklinger's picture

May I ask if the potential bug was accepted?

Paul Hentschel's picture

Thanks for reminding me. I started to fill one out before, but got distracted and never submitted it. I just filed a report today. Here is the link:

https://tracker.dev.opencascade.org/view.php?id=27922