Win Disable monitor change
#1
I recently upgraded to XBMC 11 from 10.x and I noticed that XBMC always remembers the last display that it was on despite the display that's configured in settings.

For example:
I have XBMC running on a computer with two monitors. The first monitor is just the regular desktop and the second monitor is my television. I have XBMC configured to load on monitor #2. If the connection to the tv becomes disabled, xbmc is automatically moved to display #1 which is normal in Windows. The problem is that in version 11 it always remembers the last monitor set. So the next time XBMC loads, it loads on display#1. In version 10 this didn't happen and it always remembered the display #2 setting.

Is there any way I can stop XBMC from remembering the last display it was on? Or if there's a way to have XBMC automatically close when target display is disabled that would be even better.
Reply
#2
Under advanced settings http://wiki.xbmc.org/index.php?title=Adv...ttings.xml

<fullscreen>true</fullscreen>
Reply
#3
(2012-04-13, 17:38)PatK Wrote: Under advanced settings http://wiki.xbmc.org/index.php?title=Adv...ttings.xml

<fullscreen>true</fullscreen>

Doesn't change anything. To my knowledge that just sets XBMC in fullscreen on startup
Reply
#4
You wanted to know if there was anyway of stopping XBMC from remembering the last screen setting... that does it. From your message it's not clear what you're trying to achieve... My system works the same and opens the same in either Dharma or Eden.

I use a script to flip between TV monitor & monitor, works well, always moves me to the 2nd display... full screen unless it's not up, then it defaults to 1st display full screen. Next time I call up the script..it opens up on 2nd display full screen I found this script somewhere around these forums (thanks to the originator, don't ask me how it functions or if your doesn't work [wshell may be needed]) and it's saved as a .vbs file create a shortcut icon.

Dim WshShell
Dim scv
Set svc=getobject("winmgmts:root\cimv2")
Set sh = CreateObject("WScript.Shell")
Set WshShell = WScript.CreateObject("WScript.Shell")
Const DELAY = 1

'switch to TV only
execCMD = """C:\Windows\System32\DisplaySwitch.exe""/internal"
Wshshell.Run execCMD,2,false

'Launch Xbmc
WshShell.CurrentDirectory = "C:\Program Files (x86)\XBMC\"
execCMD = """C:\Program Files (x86)\XBMC\XBMC.exe"""
Wshshell.Run execCMD,3,true

'switch to LCD only
execCMD = """C:\Windows\System32\DisplaySwitch.exe""/external"
Wshshell.Run execCMD,2,false
Reply
#5
I have two displays connected to my computer. The first one is my regular computer monitor and the second one is my television. The displays are setup so that the television is extended as the second display. The script posted changes displays by altering which display is considered the main one and configures it so that the desktop is only displayed on that one. This is somewhat of a solution if your desktop will never be used at the same time as XBMC. However, if someone wants to let's say check e-mail while you're using XBMC to watch media then it's impossible.

In Windows if you have open windows on a second display and it becomes disabled, all open windows get moved to the first display so that they are still accessible without having to reconnect the display. I have XBMC running on the second display so that if someone were to sit down at the desktop and use it, they wouldn't be able to tell a difference. If the connection gets severed by whatever means, XBMC then moves to the first display since it can no longer be displayed on a non existent screen. The problem now is that whenever XBMC is opened again, it displays on the first screen instead of the second one. In previous versions, it would stick with whatever display was configured in settings. However, it automatically remembers the last display used and assumes that's the one you want.

Also I tried the fullscreen setting in the xml and it does just that, it "Starts XBMC in full screen (check resolutions!)." I see what you were trying to say though. If I had it set to windowed then it wouldn't remember the windowed setting, but i'm talking about settings > system > display mode
Reply
#6
Ok.. I see what you're getting at. Looks like the behaviour between the two XBMC versions has changed, for better or worse, I don't think it will be changed back. I have seen quite a few messages about people trying to multi-task two screens, one with XBMC and the other some windows application and they've had difficulty with what is in focus affecting the other and the answer from the devs in large part has been, XBMC isn't meant to be used that way, and they suggest running XBMC in a windowed environment.

I too have a TV and Monitor combo, and on occasion have them both operational even if it's a bit slower... it's easy to run XBMC on one... and file manipulate or use my browser etc on the other.... With an extended screen, I've always opened up a windowed version of XBMC, and drag it to the 2nd screen and hit the slash/ key for full screen expansion. When I use the shrink/enlarge gadgets.. the window jumps to and from the same position. But I rarely use this mode so never run into the issue you're grasping for.

The script works fine for me, using the slash/ key allows me to get the browser up or whatever windowed task I need, use the shrink on XBMC and it's a windows machine until I choose to get back to XBMC all on one screen. Most of us have more than one machine lying around... so I never see a point to extended screens, when I can have multi-machines connected.
Reply

Logout Mark Read Team Forum Stats Members Help
Disable monitor change0