This patch implements the preference "browser.tabs.insertAfterCurrent" which,
when set to true, will cause all tabs (related and unrelated) to be opened next
to the current tab.
It also implements the browserSettings API "newTabPosition", which allows
extensions to control both "browser.tabs.insertRelatedAfterCurrent", and
"browser.tabs.insertAfterCurrent" via values for "afterCurrent",
"relatedAfterCurrent" and "atEnd".
The code for "browser.tabs.insertAfterCurrent" including the test for it is
mostly taken from a patch attached to bug 933532 written by Masayuki Nakano.
MozReview-Commit-ID: KQE7M2FGpc7
--HG--
extra : rebase_source : 71dac785c2edbf9edaa79e0e99dca6714addc9d8
We keep the XBL binding around for <content>, <constructor>, and <destructor>. This can
eventually be migrated to a Custom Element once we have platform support, but in the meantime
this is a way to get the many thousands of LOC into a JS class.
MozReview-Commit-ID: 1dCQp527yF9
--HG--
extra : rebase_source : 26b833413bab71168aa15e03f0f3803884be3f6b
extra : amend_source : 150cef6748ca8a9e819de0c674fac5966dd574cf
This will allow us to preserve blame as best as possible when the implementation
of this binding gets rewritten to JS in the next changeset.
MozReview-Commit-ID: HTBXcvQDAQZ
--HG--
rename : browser/base/content/tabbrowser.xml => browser/base/content/tabbrowser.js
extra : rebase_source : 9e9ffd02922966faedaa69c80e587e5b776b74c3