Giter VIP home page Giter VIP logo

Comments (16)

ghvau avatar ghvau commented on May 12, 2024

The error comes with "Adds arg to force GUI web engine " that means none of the parameter
python app.py -g gtk (to use GTK on Linux)
python app.py -g qt (to use QT)
works.

With "-g qt" you get a small empty window, which will be closed after a few sec. and the warning:
System Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
---> You get also "init error and info about the parameter"

W/o any parameter you get a small window with "gears", after a few sec. the window was closed, no warning.
--->The app "hangs" w/o any message, you can interrupt by Ctrl-c.

Using still the QT and gnome environment!

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Hi @ghvau, it's a delay issue I think.
Could you increase the START_GUI_AND_WS_TIMEOUT_SEC in conf.py (7 seconds by default) and retry?

For nothing has changed except the ability to force the use of a GUI engine but also to detect when an engine does not start.
And apparently, in your case, this last point passes the 7 seconds time limit and the application decides to close itself by indicating the error message.

If it worked before the update, don't use arguments but just tell me if with a longer delay it works.

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

I just download the latest version, the parameter already changed by youself (7->15).
But i get exact the situation as described above (w/o parameter and with -g qt) !

The app still be started by default description (from Jama dir):
cd ESP32-MPY-Jama
. venv/bin/activate
python3 src/app.py ("with or w/o args")

And really, before update it worked :-) !

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

@ghvau, thank you for your tests 👍🏻
So it closes after 15 seconds?
Does it do the same thing if you completely remove the line gui = forceGUI in the function Start(...) line 1607 of the app.py.

I also just changed a sleep to an async sleep during startup, maybe this was causing a problem on your system.

It's annoying because I don't have a Linux like yours to test :(

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

After i delete the line, there is no change or problem still there.

I play also with vizviewer (Tracetool) and i get the following info, after start Jama w/o parameter:

image

You can see that the gtk.py modul was started ?
Problems in handling default parameter for QT or parameter handover ?
Remember, I start w/o parameter, equal to the past.

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

If you start the app with parameter -g qt you see

image

It looks equal, also the gtk modul was started ?

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Thanks for your feedback.
You mean that with the line gui=forceGUI and without passing any parameter it doesn't work while using GTK?
That would mean that setting gui=None would be different from not setting it at all or that gui would be different from None.

Could you possibly add the line print(forceGUI) just before the call to Start(...) to know what it is worth when passed?

Also, do you think you could look at what version of the pywebview lib is used in your environment?
I'm having trouble understanding as I don't have anything to reproduce this problem :(

( You can also try adding an environment variable named PYWEBVIEW_GUI and set it to qt .
The WebView library will read this environment variable and use it to force the web engine. )

Thank you very much!!

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

print(forceGUI)
W/o parameter -> None
With "-g qt" -> qt

pywebview[qt]
Requirement already satisfied: pywebview[qt] in ./venv/lib/python3.10/site-packages (4.0.2)
Requirement already satisfied: bottle in ./venv/lib/python3.10/site-packages (from pywebview[qt]) (0.12.25)
Requirement already satisfied: proxy-tools in ./venv/lib/python3.10/site-packages (from pywebview[qt]) (0.1.0)
Requirement already satisfied: PyQt5 in ./venv/lib/python3.10/site-packages (from pywebview[qt]) (5.15.9)
Requirement already satisfied: pyqtwebengine in ./venv/lib/python3.10/site-packages (from pywebview[qt]) (5.15.6)
Requirement already satisfied: QtPy in ./venv/lib/python3.10/site-packages (from pywebview[qt]) (2.3.0)
Requirement already satisfied: PyQt5-Qt5>=5.15.2 in ./venv/lib/python3.10/site-packages (from PyQt5->pywebview[qt]) (5.15.2)
Requirement already satisfied: PyQt5-sip<13,>=12.11 in ./venv/lib/python3.10/site-packages (from PyQt5->pywebview[qt]) (12.11.1)
Requirement already satisfied: PyQtWebEngine-Qt5>=5.15.0 in ./venv/lib/python3.10/site-packages (from pyqtwebengine->pywebview[qt]) (5.15.2)
Requirement already satisfied: packaging in ./venv/lib/python3.10/site-packages (from QtPy->pywebview[qt]) (23.0)

Set PYWEBVIEW_GUI direct before webview.start and use it with :

  • Jama start w/o parameter
    PYWEBVIEW_GUI: qt
    forceGUI: None

  • Jama start with "-g qt"
    PYWEBVIEW_GUI: qt
    forceGUI: qt


There is no change in the error situation or error description !!!

I have also the lastest Jama version which runs for me (version -> fix problem with size of port description). If i start this version, i get also the same traceview as above, means also a module gtk.py starts, but Jama works ?!?!

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Ok I see, GTK is still launched after QT in case QT does not work.
So if it doesn't change anything for you on the latest version then I think I know where the problem comes from, I changed something else that no longer hides the software main window at startup.
Maybe it works, line 69 :
Instead of hidden = True you can try hidden = not conf.IS_LINUX
This bug also existed under Windows but has since been fixed. It must persist under Linux then...

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

If I start Jama with "-g qt" i get two (small/big) white empty windows who disappear after a few sec.

BUT if i start w/o parameter (like the past), you have found the half way for the solution, i get the dialog mask of jama and i can select the items.
BUT: jama starts always with reduced window (also in the past!). If i use this reduced size jama will be closed after a few sec.
BUT: If i switch after start directly to a full size jama window
image
, jama stays stable !!!
During the switch to full size window there is flash up a message/info/error(?) on the screen, but its to quick, i cant read it.

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Ahh! Thanks for the feedback @ghvau! 👍🏻

First of all, don't use the QT parameter because you actually have to run the program in GTK mode on your Linux.
With the g -qt arguments: the UI looks for QT first and then GTK.
With the arguments g -gtk : the IU looks first for GTK and then for QT.

As for the windows, there are indeed 2 of them:
The small square window is in fact a splash screen which is supposed to appear during the loading time and then the big window is the software.
Normally, the big one is hidden at the beginning, the time that all the interface loads...
Apparently there is a problem at this level and all I have restored is to display the main window right away. The small one remains. That's why you see 2 of them.
Concerning the message and the fact that you have to click on the main window and not the small one, I think it's a problem of focus on the objects/windows that stays somewhere and makes the interface crash.

Also, there is a 15 second delay during the launch. After this delay, the software closes automatically if everything has not started correctly, by writing the message in the terminal about the arguments.

For the UI message that you don't have time to see, I have no idea what it is.

However, I wonder why it worked better before now.
Tell me, how long (seconds) does it take for the software to launch on your system?
And also, after how long does it close when you don't click on the main window?

Finally, when you say "jama starts always with reduced window (also in the past!)", do you mean that the window was invisible and that you had to click in your task bar to make it appear? It's important :)

Once you have seen all this, you can update the sources with the current repository because I just made a modification that should surely work (commit d5a07ed).

Thank you very much for your feedback, we are making progress, it will work properly soon 😎

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024
  • Start up (launch of jama) was very quick ~ 2 sec.
  • Close window after ~ 12 sec.
  • Reduced window means focused small window frame size (controlled by the 3 window frame icon). In reduced size the jama window closed independent of with or w/o focus (when i focused to other window). The window was visible every time.

There is a other point which i ignored in the past (no handicap), but it is still there. If i go after start (reduced window) in Jama Funcs i can see only the header line and the 3 lines of description but no functions! After switching to full size window the contents changed and the functions were shown/appears.

The just downloaded source has still the here described points.

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Can I have a screen shot of the last point?
As I would understand maybe better because there, I confess not to find the solution :/
Thanks.

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

I just updated the sources by removing the splash screen under Linux!
Does it work now?

from esp32-mpy-jama.

ghvau avatar ghvau commented on May 12, 2024

WOW ..., congratulations ..., that's it !!!

Ready for the Ubuntu future!

After a short basic test all points seems to be solved, include the missing overview (in small window frame) of the Jama Funcs scripts.

Thanks!

from esp32-mpy-jama.

jczic avatar jczic commented on May 12, 2024

Excellent! 🎉 thanks @ghvau for all feedbacks and for helping me solve this problem :)
So I will compile the binaries for Mac&Win and update the readme to offer this new version!
Don't hesitate to let me know how you use it if you can.
Thanks again and see you soon.

from esp32-mpy-jama.

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.