Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sliders in FlowRendere broken #2941

Closed
shaomeng opened this issue Dec 21, 2021 · 8 comments · Fixed by #2981
Closed

Sliders in FlowRendere broken #2941

shaomeng opened this issue Dec 21, 2021 · 8 comments · Fixed by #2981
Assignees
Milestone

Comments

@shaomeng
Copy link
Collaborator

shaomeng commented Dec 21, 2021

Describe the bug

Sliders in FlowRenderer seem broken, as the screen recording shows.
Broken way 1: adjusting one slider will cause all 3 sliders to adjust too.
Broken way 2: a "range slider" as shown in rake region panel no longer shows a range.

Note 1. Sliders in other renderers might be broken too.
Note 2. The same behavior is observed from both installer and source build.
Note 3. The test system is macOS Monterey, so it might be the new OS that's causing trouble.

How to Reproduce

  1. Open VAPOR, load VDC data: /glade/p/cisl/vast/vapor/Bugs/2936/mydata.vdc
  2. Create a Flow Renderer. Select bx, by, bz as the advection vector field. Leave other settings with default values.
  3. Enable Flow Renderer.
  4. Go to Seedings tab and try to adjust values represented by sliders. The broken behavior is recorded below.
Screen.Recording.2021-12-21.at.1.12.21.PM.mov
@sgpearse
Copy link
Collaborator

sgpearse commented Jan 5, 2022

@shaomeng - To download pre built Qt binaries, download this online installer. You will need to register an account with Qt, which you can do through the installer.

It will walk let you select versions of Qt to install. I would un-check all extra tools like Qt Creator since we are just testing the libraries.

After that, you can point to the new libraries by changing QTDIR in site_files/site.local. It's on line 3 for OSX.

1 if (APPLE)
2     set (THIRD_PARTY_DIR     /usr/local/VAPOR-Deps/2019-Aug                    )
3     set (QTDIR               /usr/local/VAPOR-Deps/2019-Aug/Qt/5.13.2/clang_64 )

Let me know if you hit any snags.

@shaomeng
Copy link
Collaborator Author

shaomeng commented Jan 5, 2022

Hi @sgpearse , I tried the latest QT (6.2.2) but it won't pass the CMake configuration step, see attached screenshot. I tried the last QT5 (5.15.2) and it exhibits the same bug. Please advise!
Screen Shot 2022-01-06 at 7 25 57 AM

@sgpearse
Copy link
Collaborator

sgpearse commented Jan 6, 2022

@shaomeng - It looks like a 5 vs 6 naming issue. I'll take a look. Bummer that 5.15.2 didn't work :\

@shaomeng
Copy link
Collaborator Author

shaomeng commented Jan 6, 2022

@sgpearse A quick update: I replaced all occurrences of Qt5 in CMakeLists.txt to Qt6 so the CMake configuration step passes using QT 6.2.2. However, the actual building step would throw compilation errors in this case...

@clyne
Copy link
Collaborator

clyne commented Jan 25, 2022

@sgpearse will troubleshoot and try to further identify precisely in which cases this problem occurs (e.g. native widgets vs pwidgets).

@sgpearse
Copy link
Collaborator

@clyne @shaomeng @StasJ

Update: This is a Qt bug, reported here.

There is a workaround that fixes all of our sliders except for our range selectors, specifically the QRangeSlider.

The workaround is to simply apply a stylesheet to a QSlider. However the QRangerSlider is doing other operations on the widget's styleSheet, which seem to be preventing the fix. The below screenshot shows the working sliders alongside the range-sliders which are still dysfunctional. Notice the different look on the working "XYZ axis seeds" sliders.

Screen Shot 2022-01-26 at 1 45 35 PM

We are currently running Qt 5.13.2. The bug report that this issue is reported as affecting Qt 5.15.8, which is a commercially licensed version that we don't have access to. Additionally, this bug is reported as fixed on Qt 6.2.3+, but not on any Qt version 5 distribution. This leads to the following questions:

  1. Will this ever get fixed for Qt5, if they've deemed the bug as fixed for v6?
  2. If it does get fixed for Qt5, will it only be for commercial versions?

Right now I believe there are two paths forward:

  1. Continue to try getting QRangeSlider's styleSheet to fix the bug on our current version of Qt
  2. Try upgrading to Qt6
  3. Revert QRangerSlider back to a pair of individual min/max sliders (last resort)

I'm going to keep trying to fix the styleSheet (path 1) before attempting to upgrade to version 6.

@clyne
Copy link
Collaborator

clyne commented Feb 11, 2022

@sgpearse or @shaomeng, this problem only occurs on Monterey, correct? If so, I will assign it to someone else to verify.

@sgpearse
Copy link
Collaborator

@clyne That's correct - please reassign.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants