In my case what seemed to be happening, was that when i use "exec()" then the pop up of course is shown modal. The "Qt::ApplicationModal" property of the QLineEdit caused it to be modal relative to the pop up and blocking all input to the pop up, which in turn blocked the main window, locking up the whole program.

Thus, making the QLineEdit Qt::NonModal made it not block the pop up window, in turn allowing the submit button to work.

This behavior makes sense, however in older versions (and on other operating systems aside from windows) the "Qt::ApplicationModal" property in the .ui file seems to be ignored for the QLineEdit, as I had used the offending .ui file for quite a while on many platforms with no problem.

I am not even sure how my QLineEdit got this property given that I made the UI file with designer, and designer does not give you the option to set this property for QLineEdit. It was however originally made with an older designer in the 4.x series on linux, and then used when I compiled with the latest version on windows. Manually editing the .ui file to remove that property fixed the issue right away.