(changing) Multiple Screens quirk

I have 2 screens.

  1. I open Kicad (NOT full-screen, but in a window) and put the window on the second screen. If I disconnect (as in un-plug) that screen then windows goes to single screen mode, and the Kicad window moves to the primary screen, as expected.

  2. I open Kicad and put the window on the second screen, then close Kicad. If I open Kicad again, the window appears on the second screen again (ie where it was before I closed it), again, as expected.

  3. Moving on from (2), if I disconnect the second screen, leaving the primary screen, (or I RDP to the machine, which gives me a single display), and I then open Kicad, it puts the Kicad window on the non-existent second screen, with no way to move the window!

  4. If I reconnect the second screen, the window is there on the second display, and it works as in (2).

  5. If I leave the Kicad screen on the primary screen, then with the second screen disconnected, it launches correctly where is was, on the primary screen.

  6. the same applies to the schematic capture and PCB layout, if they were previously opened as a window on the second screen, then when they are re-launched, they remain over on the non-existant second screen… so at least the behaviour is completely consistent.

  7. If I instead open Kicad, or the schematic capture or the PCB layout in FULL SCREEN on the second screen, then when I re-launch it, it opens full-screen on the primary screen :slight_smile:

  8. back to (3) or (6): the app was previously in a window on the second screen, and I re-open it with just the primary screen, it will be on the non-existent secondary screen. If I now use the task bar to make it go full-screen, it opens full-screen on the primary display, but if I minimize it again, it goes back the non-existent secondary screen!

(In all the above, Windows correctly sees that the second screen is either there or not there, as expected)

I’m assuming that Kicad is keeping a note of where (on the 2 screens) it needs to be when it is windowed, and how big that window is; but when it is full screen, it either goes goes full-screen on the “last used screen” if it exists, or moves correctly to the primary display if it doesn’t exist!

I had exactly this behaviour a year or two ago with “Essential PIM”, reported it, and it was fixed, so clearly it can be done correctly!

Ok, so you may ask why this matters. Well, if I need to do something to a PCB or schematic, and I’m not local to the 2-screen PC, I will RDP to it (with just a single screen) but clearly this “feature” stops me doing what I want!!