63

Whenever I click a link from something like outlook or a program opens a web page (not when I click a link from within chrome). It opens up in Chrome since it is my default browser but if I already have a page open it will open in a new tab on that same window. I can't tell you how many times I forget about this and close the window out, accidentally losing the other tab too. Ofcourse, I can open a new chrome window and find it under recently closed tabs but I would really just prefer if they opened in their own window so I can prevent this.

10 Answers 10

29

Problem

For Linux, if you have multiple VNC servers, this same problem will occur.
That is,

$ google-chrome
Created new window in existing browser session

And no google chrome window will appear in the current X VNC session (a new tab will appear in the X session with the first instance of google-chrome).

Solution

A simple workaround is to run

$ google-chrome "--user-data-dir=${HOME}/.google-chrome/session${DISPLAY}"

This sets a unique user directory based on the X VNC instance in use. The user directory will be created as needed. The new google-chrome process will display within the current X VNC session.

Tested using Google Chrome version 22 on Ubuntu 12.04.

3
20

There doesn't appear to be a user-friendly option to change this inside Chrome (presumably because most people prefer the new tab).

However, you can change this manually by editing the command specified in your Windows registry used to open an http url.

To do this, open regedit and:

  1. Go to HKEY_CLASSES_ROOT\http\shell\open\command
  2. You should see one key, named (Default). Double click this to get an editing popup.
  3. At the end of the Value data: field you should see the text -- "%1". Change this to --new-window "%1".

That will instruct Windows to open all http links in a new window of Chrome instead of a new tab.

Presumably, the same general idea is true for Mac and Linux, but I don't know offhand where they store the command to open urls.

10
  • When I double click default the pop has a field called Value Data it is empty. Should I just add --new-window or --new-window "%1" Also I am using Win7 if it matters.
    – JD Isaacks
    Commented Jul 22, 2010 at 14:39
  • 1
    Note, if you search the registry for any other keys containing "chrome.exe", and find one with a value containing " -- %1", then adding my change should work.
    – Cerin
    Commented Jul 23, 2010 at 13:42
  • 5
    Is there any good way to "prevent" Chrome from overriding these changes every update? (Which happens relatively frequently.)
    – Qtax
    Commented Aug 15, 2013 at 11:03
  • 6
    Note that in Windows 10, it's slightly different. This answer informs us that the default browser is pointed from here: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\Shell\Associations\URLAssociations\(http|https)\UserChoice So for Chrome, it says: ProdId=ChromeHTML From there you can find ChromeHTML here: HKEY_CLASSES_ROOT\ChromeHTML Under that you can find the shell/open/command, so the full path is: HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command
    – Trinition
    Commented Feb 27, 2018 at 12:53
  • 2
    To apply @Trinition's solution without going through the Registry Editor, you can store the following content as 'WebLinks.reg' and execute it. Please verify that the file contains your correct Chrome installation directory. Also, add some newlines in between ;) Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command] @="\"C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe\" --new-window \"%1\"" Commented Dec 16, 2018 at 0:18
12

Mike Hardy posted a solution for Mac OS X. I'm using it in 10.7 Lion and it works fine.

The solution involves a small AppleScript application:

on open location theURL
    tell application "/Applications/Google Chrome.app"
        make new window
        activate
        set URL of active tab of first window to theURL
    end tell
end open location

Setting this application as your default browser will cause external program links to open in a new window in Chrome.

2
  • How / where am I supposed to save this AppleScript application in 10.9.5 Mavericks? I saved the above in [My User] / Library / Application Scripts as an "application", but it did not appear as a browser under Safari's default browser preference. Also, I downloaded the applescript bundle from Mike Hardy's solution, and unzipped it in the same folder. That added the script to the list of browsers, and I chose it, but when I then clicked on a link from an external application, the link did not open.
    – Mike Eng
    Commented Mar 18, 2015 at 21:06
  • 1
    8 years later ... is there a more elegant solution?
    – d0g
    Commented Nov 22, 2021 at 19:35
11

Updated for Windows 7 pro x64 , following Cerin above -

Go to HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command

You should see one key, named (Default). Double click this to get an editing pop-up.

Change the key value from :

["C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -- "%1"]

to

["C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --new-window "%1"]
2
  • Just confirmed this works on Windows 10 in January 2017.
    – Nelson
    Commented Jan 29, 2017 at 16:06
  • this works great, except when it goes away on updates which happen like once a month. Sigh.
    – BoB3K
    Commented Jan 9, 2021 at 18:10
9

In case any Linux users are wondering the same thing, I did this by copying /usr/share/applications/chromium.desktop to ~/.local/share/applications and then editing it as follows:

--- /usr/share/applications/chromium.desktop    2012-08-10 17:02:01.000000000 +0100
+++ /home/sam/.local/share/applications/chromium.desktop    2012-08-23  10:33:21.987359591 +0100
@@ -128,7 +128,7 @@
 Comment[zh_CN]=访问互联网
 Comment[zh_HK]=連線到網際網路
 Comment[zh_TW]=連線到網際網路
-Exec=/usr/bin/chromium %U
+Exec=/usr/bin/chromium --new-window %U
 Terminal=false
 X-MultipleArgs=false
 Type=Application

If you're using the Debian chromium package, and you don't mind setting this as the default for all users on the system, you can instead edit /etc/chromium/default and add --new-window to the CHROMIUM_FLAGS variable.

1
  • Thanks -- I was so tired of being switched to another desktop when I click on the Chrome launcher! I'll just add that you can simply edit the properties for the launcher icon to add in the --new-window option, if you're just looking to change the behavior of the launcher icon. Why isn't the option is documented in the man page???
    – AmigoNico
    Commented Jan 30, 2014 at 14:48
7

You can use the "New Tab, New Window" extension for this. They way it works is moving the newly created tab quickly to a new window. So there is a bit of redrawing, but it does work pretty well (for me at least).

Note, as @John mentions below, this extension makes the default behavior for all new tabs (even ones created from inside Chrome).

2
  • 5
    this extension is not good... it always opens a new window, even when command-clicking from within chrome itself Commented Mar 15, 2013 at 6:42
  • 1
    I actually think that is a good thing (I hate tabs :), but I agree given the question I needed to make that clearer in my answer. I've updated it.
    – studgeek
    Commented Apr 11, 2013 at 20:40
2

the answer by Cerin above is the good one but there is an edit needed: the proposed key to change is not specific to Chrome and varies according to the logged-in user. this is the working solution:

  1. Go to HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command
  2. You should see one key, named (Default). Double click this to get an editing popup.
  3. Change the key value into "C:\Program Files\Google\Chrome\Application\chrome.exe" --new-window "%1".
2
  • Hi, thanks, this works great. However, either after restarting pc or updating chrome (not sure which) it is set back. Does not bother since I do not do any of those two much too often, but do you have a way to avoid this? The only thing that comes to my mind would create a registry file which would be run on startup.
    – Ev0oD
    Commented Mar 30, 2017 at 12:49
  • Hi, i am not a regular user of Chrome so I didn't do heavy testing on this solution. However there is a post in the Chrome product forum that suggests you need to change all registry occurencens of chrome to have the new-window switch. find out more there: productforums.google.com/forum/#!msg/chrome/V8blictbYuI/… Commented Mar 31, 2017 at 13:14
2

This command line option should work for you

chrome --new-window 
1
  • This does not answer the "when clicking links in other programs" question per se, but it does answer my particular query, and is the accepted answer of a duplicate question. Commented Jan 23, 2017 at 3:05
0

For Linux

cp /usr/share/applications/chromium.desktop ~/.local/share/applications

And then edit ~/.local/share/applications/chromium.desktop, change Exec to below

Exec=chromium "--profile-directory=Default --new-window" %U
0

For the HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command method, note that this will NOT work if Chrome is not already running, at least for me, using win 10.0.19042.8404, Chrome 89.0.4389.90 64bit.

If Chrome is already running, the method works. But if Chrome is not yet running, and if you have Chrome set to for example "open where you left off" the new url will still open in a new tab on an existing window.

I verified that the command that Windows used to open Chrome in that situation does indeed contain the --new-window switch. That may be a bug in Chrome, or it might be intentional for god only knows what reason. It's probably a bug imho related to how Chrome deals with restoring the session.

You can test it by simply running Chrome from a command line with the switch, when Chrome is not currently running.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .