BiciAP
BiciAP

Reputation: 112

chrome.tabs.update is not working consistently

Using chrome.tabs API I want to redirect a newly opened tab to a select (static) URL.

chrome.tabs.onCreated.addListener(async tab => {
  // Set URL
  let updateProps = {
    url: "https://github.com"
  }

  // Update the tab (redirect to URL)
  tab = await chrome.tabs.update(tab.id, updateProps)
  
  console.log(tab.pendingUrl) // https://github.com
})

The problem is consistency. Most of the times, the tab is correctly redirected, while in the other 1 out of 10 scenarios it is not redirected at all.

That being said after the chrome.tabs.update call, the tab pendingUrl is correct every time.

I have the tabs permission in the manifest (version 3).

Edit: Also, there are no errors in the console.

Upvotes: 4

Views: 736

Answers (1)

Sam Smith
Sam Smith

Reputation: 21

I'm trying to do the same thing and having the exact same consistency issue.

I was able to fix it by wrapping my chrome.tabs.update() statement inside of a chrome.tabs.query() statement, as seen in this thread: How to modify current url location in chrome via extensions

Upvotes: 2

Related Questions