From 8d37275edb1a4e414d5caf7c02cf6113a5ab268d Mon Sep 17 00:00:00 2001 From: Brent Simmons Date: Mon, 3 Sep 2018 12:50:24 -0700 Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20make=20publication=20date=20a?= =?UTF-8?q?=20link=20when=20it=20would=20be=20to=20same=20link=20as=20titl?= =?UTF-8?q?e.=20Fix=20#412.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NetNewsWire/MainWindow/Detail/ArticleRenderer.swift | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/NetNewsWire/MainWindow/Detail/ArticleRenderer.swift b/NetNewsWire/MainWindow/Detail/ArticleRenderer.swift index aa1d27d54..e07788edc 100644 --- a/NetNewsWire/MainWindow/Detail/ArticleRenderer.swift +++ b/NetNewsWire/MainWindow/Detail/ArticleRenderer.swift @@ -198,7 +198,7 @@ class ArticleRenderer { let longDate = longDateFormatter.string(from: article.logicalDatePublished) let mediumDate = mediumDateFormatter.string(from: article.logicalDatePublished) let shortDate = shortDateFormatter.string(from: article.logicalDatePublished) - if let permalink = article.url { + if dateShouldBeLink() || self.title == "", let permalink = article.url { d["date_long"] = linkWithText(longDate, permalink) d["date_medium"] = linkWithText(mediumDate, permalink) d["date_short"] = linkWithText(shortDate, permalink) @@ -215,6 +215,16 @@ class ArticleRenderer { return d } + private func dateShouldBeLink() -> Bool { + guard let permalink = article.url else { + return false + } + guard let preferredLink = article.preferredLink else { // Title uses preferredLink + return false + } + return permalink != preferredLink // Make date a link if it’s a different link from the title’s link + } + struct Avatar { let imageURL: String let url: String?