Skip to content

Add Back to Opener Explainer #1057

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

victorhuangwq
Copy link

This PR introduces an explainer for Back to the Opener, a proposed feature to improve navigation when links open in new tabs.

It allows developers to opt-in (via window.open() or <a> tag attributes) to have the opener tab added to the new tab's history. This enables a seamless "back" navigation to the opener, closing the new tab and reducing tab clutter, especially useful for search and chat interfaces.

@victorhuangwq victorhuangwq marked this pull request as ready for review June 10, 2025 18:19
@victorhuangwq
Copy link
Author

@aluhrs13 and @erik-anderson could you help take a look at the explainer?
I'm hoping to merge this in and use it to reach out to potential partners for feedback.


## Introduction

A relatively modern paradigm has emerged where chat interfaces (e.g. ChatGPT, Google AI mode, Copilot, Gemini) often open content in new tabs rather than opening in the current tab. This makes sense for chat interfaces, as this approach helps the user with multitasking and preserves the conversational context. This is in addition to various search engines that already opens links in a new tab (e.g. Yahoo, Bing, Perplexity). However, this causes tab proliferation, and also prevents a natural back navigation flow.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure I follow that this is relatively recent - target=_blank has existed for a long time

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I was trying to draw attention to the fact that upcoming link originators (i.e. chat interfaces) defaults to opening in new tab.


A relatively modern paradigm has emerged where chat interfaces (e.g. ChatGPT, Google AI mode, Copilot, Gemini) often open content in new tabs rather than opening in the current tab. This makes sense for chat interfaces, as this approach helps the user with multitasking and preserves the conversational context. This is in addition to various search engines that already opens links in a new tab (e.g. Yahoo, Bing, Perplexity). However, this causes tab proliferation, and also prevents a natural back navigation flow.

This proposal introduces an opt‑in mechanism that signals the browser to insert the opener as an initial entry in the new tab's history. Additionally, when the user navigates back in the new tab, the UA will automatically return focus to the originating tab and close the new tab, provided the originating tab is still active. This feature enhances user experience by supporting a logical back navigation flow, and reduce tab clutter at the same time.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't pinpoint it exactly, but I'm concerned about the overindexing on tabs, which isn't an HTML concept. I think we should reframe this a bit to include the user perception (tabs) and the HTML concept of a document. Many references of "tab" should probably be "document" here and below.

- If the opener tab is unavailable (e.g., closed or navigated away), the new tab will navigate back to the opener's URL in the current tab.


## Alternatives Considered
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did we consider a new target? IE something like target=_blankWithHistory?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants