GithubHelp home page GithubHelp logo

Comments (16)

maxwxyz avatar maxwxyz commented on May 27, 2024

Left or right click? Are you using a mouse, touch pad, touchscreeen?
Can you also try it in the weekly builds: https://github.com/FreeCAD/FreeCAD-Bundle/releases/tag/weekly-builds

from freecad.

greyltc avatar greyltc commented on May 27, 2024

Mouse. Neither left nor right clicking works. I'll see if I can get a weekly build going and report back shortly.

from freecad.

greyltc avatar greyltc commented on May 27, 2024

@maxwxyz Okay, I've built and tested whatever commit that latest weekly build you linked there is based on (a4dd600). The cube's behavior has changed in that now the cube and associated controls highlight whenever my pointer hovers over them, but still nothing up there responds in any way to any left or right mouse clicks/click+drag or anything at all. See attached video:
Screencast from 2024-04-16 11-33-00.webm I can't quite figure out why/when the cursor decides to change between a hand and an arrow. Right clicking brings up the menu as shown.

OS: Arch Linux (GNOME/gnome)
Word size of FreeCAD: 64-bit
Version: 0.22.0dev.36874 (Git)
Build type: Release
Branch: makepkg
Hash: a4dd600ec6d5a53a9960cd9f8693d7d307b9e359
Python 3.11.8, Qt 6.7.0, Coin 4.0.2, Vtk 9.3.0, OCC 7.7.2
Locale: English/United States (en_US)

from freecad.

maxwxyz avatar maxwxyz commented on May 27, 2024

I cannot reproduce on my system and never heard about this behavior. Could you try temporarily rename your user.cfg file?

from freecad.

greyltc avatar greyltc commented on May 27, 2024

mv ~/.config/FreeCAD/ ~/.config/FreeCAD.bak then relaunch freecad did not impact the issue.

I've got this issue on multiple machines (desktops and laptops). Granted, these are all pretty similar setups: Arch Linux, gnome desktop environment, intel graphics, freecad from official Arch repos (and now the one test I did where I built from a4dd600)

from freecad.

greyltc avatar greyltc commented on May 27, 2024

Wait a sec. This is probably just a duplicate of #13303

from freecad.

maxwxyz avatar maxwxyz commented on May 27, 2024

@greyltc related to this one? https://gitlab.archlinux.org/archlinux/packaging/packages/freecad/-/issues/3

from freecad.

xtemp09 avatar xtemp09 commented on May 27, 2024

@greyltc, yes, it's a duplicate.

from freecad.

adrianinsaval avatar adrianinsaval commented on May 27, 2024

I consider this issue to be better at describing the navicube issue than the above and would advise to have this one open and close the other one instead.

@Rexbas would you have any clue why the navicube doesn't properly register mouse events when built with qt6?

from freecad.

Rexbas avatar Rexbas commented on May 27, 2024

I have no idea but I am trying to compile with qt6 right now.

from freecad.

Rexbas avatar Rexbas commented on May 27, 2024

It seems that the behavior of glReadPixels(...) is different but I don't know why or how to fix it.

glReadPixels(2 * x + m_CubeWidgetSize, 2 * y + m_CubeWidgetSize, 1, 1,
GL_RGBA, GL_UNSIGNED_BYTE, &pixels);

from freecad.

adrianinsaval avatar adrianinsaval commented on May 27, 2024

could it be related to dpi scaling?

from freecad.

Rexbas avatar Rexbas commented on May 27, 2024

Don't know if it is dpi scaling.

If I write the QtGLFramebufferObject to a file by inserting this code:

auto img = m_PickingFramebuffer->toImage();
img.save(QString::fromStdString("test.png"));

here:

Then with qt5 I get this:
navicubeqt5
It might be hard to see but it is the navigation cube in dark red on a black background. This image is 800x800 pixels when I set navigation cube size to 400.

But with qt6 I get this:
navicubeqt6
This is also a 800x800 image but the content of the image is clearly not right.

So I think something is wrong with QtGLFramebufferObject* m_PickingFramebuffer. I don't know how to fix.

from freecad.

YakoYakoYokuYoku avatar YakoYakoYokuYoku commented on May 27, 2024

I'm currently investigating this issue, from my observations this is split in two problems. One is that there's no mouse interaction with the navigation cube, so this means that at least one of SoQt or Qt6 is the culprit. The other is that reading from the framebuffer object returns invalid data, @Rexbas from what I can check is that QOpenGLFramebufferObject hasn't changed its semantics essentially since Qt5, so it must another thing.

from freecad.

YakoYakoYokuYoku avatar YakoYakoYokuYoku commented on May 27, 2024

Could be related coin3d/soqt#80.

from freecad.

Rexbas avatar Rexbas commented on May 27, 2024

I think it is one problem. The mouse interaction with the navigation cube is not working because it can't decide which face is hovered/selected in NaviCubeImplementation::pickFace which is caused by the different behavior in the frame buffer.

from freecad.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.