Author Topic: "No windows are visible" message  (Read 167025 times)

Support Team

  • Administrator
  • Hero Member
  • *****
  • Posts: 1074
    • View Profile
"No windows are visible" message
« on: May 04, 2007, 12:17:13 AM »
We've run into a problem where we get the following error:
 
"No windows are visible..."
 
I know what's causing it but I don't know how to fix it.  Prior to this error, a dialog is shown and disposed of by a thread different than the main GUI thread.  (Previously I wrote code which sets the ClientAgent for this alternate thread so that it could display dialogs.)  Based on the error above, it appears I need to be able to tell WebCream what window is now visible (which is the last window shown by the main GUI thread).  Is this possible?  One caveat to this is that we don't see the above error if the last window shown by the main GUI thread is a frame; we only see the error if the last window shown by the main GUI thread was a dialog.

Support Team

  • Administrator
  • Hero Member
  • *****
  • Posts: 1074
    • View Profile
Re: "No windows are visible" message
« Reply #1 on: May 04, 2007, 12:26:08 AM »
This message is displayed when the emulation thread used to start the GUI application and process user actions did not detect any open Swing or AWT windows. The most common reason is multithreading when the application starts a new thread from the event processing action that will display the window. We have a troubleshooting entry on this:

http://creamtec.com/webcream/doc/troubleshooting.html

If it's due to multithreading, several solutions are described on this page.

http://creamtec.com/webcream/doc/multithreading.html

If the component doesnt have a name ( getName() == null ) then you can try turning on the humanComponentsName in default.properties for easier naming. However, humanComponentNames is not a reliable way of naming components so the safest way is to set names to components you want to refer to.
« Last Edit: September 01, 2007, 10:36:11 AM by CreamTec Support Team »

aevett

  • Customer
  • Sr. Member
  • *
  • Posts: 482
    • View Profile
Re: "No windows are visible" message
« Reply #2 on: May 07, 2007, 12:22:32 PM »
I reviewed http://creamtec.com/webcream/doc/multithreading.html.

Manipulating the webcream application properties isn't an option as it's unpredictable which dialog is active when the dialog causing the problem is displayed.

beginOperation() and endOperation() don't quite fit the problem.  I'm not kicking off a thread based on a GUI event.  I'm displaying a dialog from a different background thread.

I've been trying to use SwingUtilities.invokeLater() or invokeAndWait(), but my problem never has been displaying the dialog from a different thread.  I can get the dialog to display.  My problem is returning back to the original dialog after the dialog from a different thread is closed.  Is the problem related to the fact that the dialog from a different thread isn't displayed until their is a request on the original dialog?  Is this unfulfilled request somehow causing the "No windows are visible..."?

Support Team

  • Administrator
  • Hero Member
  • *****
  • Posts: 1074
    • View Profile
Re: "No windows are visible" message
« Reply #3 on: May 10, 2007, 07:58:16 PM »
OK, Im a bit confused about the sequence of events so if my reply doesnt help you solve the problem Im going to have to ask you to provide a step-by-step sequence of user operations and application actions (like, step 1 - main window is displayed, step 2 - user clicks Login button etc). I would also ask you to email WebCream log file at level 10 to support@creamtec.com.

"No windows are visible" message is displayed if the GUI manager stack is empty at the time when the request emulation is complete. Every displayed window is added to the windows stack. When a window is closed, it is removed from the stack. At the end of the request emulation the rendering engine attempts to render the window at the top of the stack.

My question would be, are you sure there are actually visible windows at the time when the action emulation completes? From your post it sounds that you are closing a dialog from the background thread, is there another window being open or is it already open?



aevett

  • Customer
  • Sr. Member
  • *
  • Posts: 482
    • View Profile
Re: "No windows are visible" message
« Reply #4 on: May 15, 2007, 04:32:19 PM »
Here's a step-by-step:

1) Main window A is displayed
2) User selects something in main window which causes modal dialog B to be displayed
3) Background thread causes unsolicited dialog C to be displayed - this isn't displayed in HTML until user selects something in B dialog
4) User closes C dialog

B dialog should be displayed at this point but isn't.  Instead get "No windows are visible..." error.  I've tried using invokeLater() and invokeAndWait(), but these make no difference.  If step 2) does not occur (i.e. if the unsolicited dialog is displayed on top of the main window), the "No windows are visible..." error does not occur and the main window is displayed as it should when the unsolicited dialog is closed.

I will email the WebCream log file.

Support Team

  • Administrator
  • Hero Member
  • *****
  • Posts: 1074
    • View Profile
Re: "No windows are visible" message
« Reply #5 on: May 17, 2007, 10:10:10 PM »
From the log files it seems that the background thread confuses WebCream. When the dialog C is closed WebCream checks if there are any previously blocked threads that are now running to finish their work. A thread is "blocked" if there is a modal dialog displayed. When the dialog is closed, the thread is supposed to complete the execution of the method that displayed the dialog, and that's what WebCream is waiting for. For some reason in your case the thread that is unblocked when the Options dialog is closed never signals that it's finished.

This is a bug in WebCream threading that should be fixed at the product level. Do you have a working example that we can use to reproduce the problem? If yes, please email it or attach it to this thread. If not, we'll have to recreate the problem so we can fix the code.

Serviceoai

  • Newbie
  • *
  • Posts: 13
    • View Profile
"No windows are visible" me
« Reply #6 on: November 25, 2016, 01:22:23 AM »
I just installed the 64bit Windows 7 Beta and Hinterland is saying it requires DirectX 9.0c or later to run. Is the game not able to detect DirectX 11?

rentdrescvv

  • Newbie
  • *
  • Posts: 10
    • View Profile
"No windows are visible" me
« Reply #7 on: December 04, 2016, 08:56:09 AM »
I am getting the following error message:

Windows cannot find C:Program Files x86ClarusSamsung Drive ManagerDrive Manager.exe Make sure you typed the name correctly and then try again.

This happens when I try to open other programs. I have gone into Programs and even clicked the .exe with the same result.

I have a vague feeling it may be something to do with AVG I installed from software section, but disabling AVG has no effect.

Found some solutions on Google but none work

Any solutions please ?


rentdresnrt

  • Newbie
  • *
  • Posts: 7
    • View Profile
"No windows are visible" me
« Reply #9 on: December 10, 2016, 02:24:07 PM »
Our company have just gone through being sold, and now have new computers and IT system. When on the TAMB, almost every time I go to view another thread or change forums, I get a Windows message asking if I want to leave this page, or stay on this page.Irritating as . anyone know how I can get rid off it?