Skip to content

Commit

Permalink
Issue with extension script not being applied on the tab URL change r…
Browse files Browse the repository at this point in the history
…esolved
  • Loading branch information
tomasstrba committed Jan 29, 2025
1 parent 5f6c722 commit ac5617a
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 2 deletions.
8 changes: 8 additions & 0 deletions DuckDuckGo/PinnedTabs/Model/PinnedTabsManager.swift
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,10 @@ final class PinnedTabsManager {
} else {
tabCollection.append(tab: tab)
}

if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.pinned], for: tab)
}
}

func unpinTab(at index: Int, published: Bool = false) -> Tab? {
Expand All @@ -47,6 +51,10 @@ final class PinnedTabsManager {
return nil
}
didUnpinTabSubject.send(index)

if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.pinned], for: tab)
}
return tab
}

Expand Down
23 changes: 21 additions & 2 deletions DuckDuckGo/Tab/Model/Tab.swift
Original file line number Diff line number Diff line change
Expand Up @@ -462,6 +462,9 @@ protocol NewWindowPolicyDecisionMaker {
if navigationDelegate.currentNavigation == nil {
updateCanGoBackForward(withCurrentNavigation: nil)
}
if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.URL], for: self)
}
}
}

Expand Down Expand Up @@ -532,7 +535,13 @@ protocol NewWindowPolicyDecisionMaker {

var lastSelectedAt: Date?

@Published var title: String?
@Published var title: String? {
didSet {
if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.title], for: self)
}
}
}

private func updateTitle() {
if let error {
Expand All @@ -559,7 +568,13 @@ protocol NewWindowPolicyDecisionMaker {
}
let permissions: PermissionModel

@Published private(set) var isLoading: Bool = false
@Published private(set) var isLoading: Bool = false {
didSet {
if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.loading], for: self)
}
}
}
@Published private(set) var loadingProgress: Double = 0.0

/// an Interactive Dialog request (alert/open/save/print) made by a page to be published and presented asynchronously
Expand Down Expand Up @@ -836,6 +851,10 @@ protocol NewWindowPolicyDecisionMaker {
func muteUnmuteTab() {
webView.audioState.toggle()
objectWillChange.send()

if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.muted], for: self)
}
}

private enum ReloadIfNeededSource {
Expand Down
4 changes: 4 additions & 0 deletions DuckDuckGo/Tab/ViewModel/TabViewModel.swift
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,10 @@ final class TabViewModel {
if oldValue != zoomLevel {
zoomLevelSubject.send(zoomLevel)
}

if #available(macOS 14.4, *) {
WebExtensionManager.shared.eventsListener.didChangeTabProperties([.zoomFactor], for: tab)
}
}
}

Expand Down

0 comments on commit ac5617a

Please sign in to comment.