How to make applications open on the correct monitor when using multiple monitors?

I'm using Windows 8.1, which has much better multiple monitor support than Windows 7 (sort of). However when I'm in a full-screen app on one monitor, and I go to the Start menu on the other and open a desktop app, it opens on the opposite monitor because of it being on that one last time the app was used.

This suspends the full-screen app and switches to the desktop view on that monitor. I then have to drag the desktop app to the other monitor which I didn't have my mouse pointer near in the first place, then switch back to the full-screen app on that monitor by going to the upper-right corner.

This is so incredibly irritating, every time I plug in my laptop to my second monitor and try to use it, this happens. Not to mention whenever I have Netflix or any kind of video in the second monitor and it just randomly stops playing when I'm trying to work on the other screen.

Most likely there is going to have to be a third-party application to install to do this, right? I would really prefer if it was free, as this was less annoying in Windows 7 when the application would only open on top of the other that was on that monitor. This is one of the maybe two annoying things I don't like about Windows 8/8.1. Everything else is fantastic, to be honest.


Solution 1:

After experimenting with the shortcuts in Codezilla's answer if you press Windows+Shift+arrow keys you instantly jump it to another screen.

Solution 2:

I tried this successfully:

  1. Open the program.
  2. Move it to the monitor on which you would like it to open by default.
  3. Hit the Windows key + Shift + Enter.

From now on, it should open each time on the monitor of your preference.

Solution 3:

I'm not sure of a way to change the default positioning aside from closing the app on the screen you want it to appear on and then when you open it again it "might" be on the right screen.

That isn't always the case though as some apps have been programmed to load a certain way. However, as a quicker way to move stuff from one screen to the other, I use a shortcut that makes it faster that dragging stuff around with the mouse. When you have the app in focus that you want to move (if you just opened it and haven't clicked other places, it's in focus). Hold down the windows key and use the cursors to move the window around where you want it.

If it's on the left monitor and you want it on the right, hold down windows key + press right arrow key and it'll shift across the screen. Depending on what state the window is in (fullscreen/windowed) may depend on how many key presses it takes to move it but you can play around with it to get a feel for what the key presses do.

  • Windows key + up arrow : maximizes the window or undoes minimizing.
  • Windows key + down arrow : minimizes the window and makes windows focus be on whatever application was opened right before, or undoes maximizing.
  • Windows key + left/right : will move the window from snapped left to unsnapped to snapped right to snapped left on the next screen, etc.
  • Windows key + shift + left/right : will move the window to another screen in the same relative position.
  • Windows key + shift + up: Will maximize the window vertically only.
  • Windows key + left/right followed by Windows key + up/down: Will snap/unsnap the window in a corner.

Solution 4:

Here is how I fixed it in Windows 10

  1. Download and install Microsoft PowerToys for Windows: https://github.com/microsoft/PowerToys/releases (I am running 0.16.1 by downloading installing 0.16.0 version and 0.16.1 patch)

  2. PowerToys Settings > FancyZones > [Edit zones]: configure the layout as one column or row or whatever and disable "show space around zones". You'll have to do this for each monitor individually by dragging the settins window to another monitor

  3. PowerToys Settings > FancyZones: Enable "Move newly created windows to their last known zone"
  4. Drag the application you want to open in a specific screen over there, and when you're in that screen assign it to the "zone" by pressing/holding [shift] and then releasing the window into that screen.

If you close and open an app it will open open into the last zone you've assigned it to, which in this setup is your screen

I'm hoping it will work on Windows 8.1 aswell.

Solution 5:

In the event of all the above solutions didn't help then mark the monitor which you want to open the application as Main Display.

Steps: Display settings - Multiple Displays - Make this my main display