Fix URL label translation and formatting
- Add localization keys for "open_url" and "open_original_page" in EN/DE - Create URLUtil.openUrlLabel() helper function for consistent formatting - Replace incorrect string concatenation with proper localized labels - Fix: "example.comopen" now displays as "Open example.com" (EN) or "example.com öffnen" (DE) - Update BookmarkDetailLegacyView, BookmarkDetailView2, and BookmarkCardView
This commit is contained in:
parent
cdfa6dc4c5
commit
db3cbf41d4
@ -105,6 +105,8 @@
|
|||||||
"More" = "Mehr";
|
"More" = "Mehr";
|
||||||
"New Bookmark" = "Neues Lesezeichen";
|
"New Bookmark" = "Neues Lesezeichen";
|
||||||
"No articles in the queue" = "Keine Artikel in der Warteschlange";
|
"No articles in the queue" = "Keine Artikel in der Warteschlange";
|
||||||
|
"open_url" = "%@ öffnen";
|
||||||
|
"open_original_page" = "Originalseite öffnen";
|
||||||
"No bookmarks" = "Keine Lesezeichen";
|
"No bookmarks" = "Keine Lesezeichen";
|
||||||
"No bookmarks found in %@." = "Keine Lesezeichen in %@ gefunden.";
|
"No bookmarks found in %@." = "Keine Lesezeichen in %@ gefunden.";
|
||||||
"No bookmarks found." = "Keine Lesezeichen gefunden.";
|
"No bookmarks found." = "Keine Lesezeichen gefunden.";
|
||||||
|
|||||||
@ -101,6 +101,8 @@
|
|||||||
"More" = "More";
|
"More" = "More";
|
||||||
"New Bookmark" = "New Bookmark";
|
"New Bookmark" = "New Bookmark";
|
||||||
"No articles in the queue" = "No articles in the queue";
|
"No articles in the queue" = "No articles in the queue";
|
||||||
|
"open_url" = "Open %@";
|
||||||
|
"open_original_page" = "Open original page";
|
||||||
"No bookmarks" = "No bookmarks";
|
"No bookmarks" = "No bookmarks";
|
||||||
"No bookmarks found in %@." = "No bookmarks found in %@.";
|
"No bookmarks found in %@." = "No bookmarks found in %@.";
|
||||||
"No bookmarks found." = "No bookmarks found.";
|
"No bookmarks found." = "No bookmarks found.";
|
||||||
|
|||||||
@ -126,7 +126,7 @@ struct BookmarkDetailLegacyView: View {
|
|||||||
}) {
|
}) {
|
||||||
HStack {
|
HStack {
|
||||||
Image(systemName: "safari")
|
Image(systemName: "safari")
|
||||||
Text((URLUtil.extractDomain(from: "open " + viewModel.bookmarkDetail.url) ?? "Open original page"))
|
Text(URLUtil.openUrlLabel(for: viewModel.bookmarkDetail.url))
|
||||||
}
|
}
|
||||||
.font(.title3.bold())
|
.font(.title3.bold())
|
||||||
.frame(maxWidth: .infinity)
|
.frame(maxWidth: .infinity)
|
||||||
@ -402,7 +402,7 @@ struct BookmarkDetailLegacyView: View {
|
|||||||
}) {
|
}) {
|
||||||
HStack {
|
HStack {
|
||||||
Image(systemName: "safari")
|
Image(systemName: "safari")
|
||||||
Text((URLUtil.extractDomain(from: viewModel.bookmarkDetail.url) ?? "Open original page") + "open")
|
Text(URLUtil.openUrlLabel(for: viewModel.bookmarkDetail.url))
|
||||||
}
|
}
|
||||||
.font(.title3.bold())
|
.font(.title3.bold())
|
||||||
.frame(maxWidth: .infinity)
|
.frame(maxWidth: .infinity)
|
||||||
@ -456,7 +456,7 @@ struct BookmarkDetailLegacyView: View {
|
|||||||
Button(action: {
|
Button(action: {
|
||||||
URLUtil.open(url: viewModel.bookmarkDetail.url, urlOpener: appSettings.urlOpener)
|
URLUtil.open(url: viewModel.bookmarkDetail.url, urlOpener: appSettings.urlOpener)
|
||||||
}) {
|
}) {
|
||||||
Text((URLUtil.extractDomain(from: viewModel.bookmarkDetail.url) ?? "Open original page") + " open")
|
Text(URLUtil.openUrlLabel(for: viewModel.bookmarkDetail.url))
|
||||||
.font(.subheadline)
|
.font(.subheadline)
|
||||||
.foregroundColor(.secondary)
|
.foregroundColor(.secondary)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -411,7 +411,7 @@ struct BookmarkDetailView2: View {
|
|||||||
Button(action: {
|
Button(action: {
|
||||||
URLUtil.open(url: viewModel.bookmarkDetail.url, urlOpener: appSettings.urlOpener)
|
URLUtil.open(url: viewModel.bookmarkDetail.url, urlOpener: appSettings.urlOpener)
|
||||||
}) {
|
}) {
|
||||||
Text((URLUtil.extractDomain(from: viewModel.bookmarkDetail.url) ?? "Open original page") + " open")
|
Text(URLUtil.openUrlLabel(for: viewModel.bookmarkDetail.url))
|
||||||
.font(.subheadline)
|
.font(.subheadline)
|
||||||
.foregroundColor(.secondary)
|
.foregroundColor(.secondary)
|
||||||
}
|
}
|
||||||
@ -501,7 +501,7 @@ struct BookmarkDetailView2: View {
|
|||||||
}) {
|
}) {
|
||||||
HStack {
|
HStack {
|
||||||
Image(systemName: "safari")
|
Image(systemName: "safari")
|
||||||
Text((URLUtil.extractDomain(from: "open " + viewModel.bookmarkDetail.url) ?? "Open original page"))
|
Text(URLUtil.openUrlLabel(for: viewModel.bookmarkDetail.url))
|
||||||
}
|
}
|
||||||
.font(.title3.bold())
|
.font(.title3.bold())
|
||||||
.frame(maxWidth: .infinity)
|
.frame(maxWidth: .infinity)
|
||||||
|
|||||||
@ -254,7 +254,7 @@ struct BookmarkCardView: View {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
HStack {
|
HStack {
|
||||||
Label((URLUtil.extractDomain(from: bookmark.url) ?? "Original Site") + " open", systemImage: "safari")
|
Label(URLUtil.openUrlLabel(for: bookmark.url), systemImage: "safari")
|
||||||
.onTapGesture {
|
.onTapGesture {
|
||||||
URLUtil.open(url: bookmark.url, urlOpener: appSettings.urlOpener)
|
URLUtil.open(url: bookmark.url, urlOpener: appSettings.urlOpener)
|
||||||
}
|
}
|
||||||
@ -335,7 +335,7 @@ struct BookmarkCardView: View {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
HStack {
|
HStack {
|
||||||
Label((URLUtil.extractDomain(from: bookmark.url) ?? "Original Site") + " open", systemImage: "safari")
|
Label(URLUtil.openUrlLabel(for: bookmark.url), systemImage: "safari")
|
||||||
.onTapGesture {
|
.onTapGesture {
|
||||||
URLUtil.open(url: bookmark.url, urlOpener: appSettings.urlOpener)
|
URLUtil.open(url: bookmark.url, urlOpener: appSettings.urlOpener)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -44,4 +44,12 @@ struct URLUtil {
|
|||||||
guard let url = URL(string: urlString), let host = url.host else { return nil }
|
guard let url = URL(string: urlString), let host = url.host else { return nil }
|
||||||
return host.replacingOccurrences(of: "www.", with: "")
|
return host.replacingOccurrences(of: "www.", with: "")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static func openUrlLabel(for urlString: String) -> String {
|
||||||
|
if let domain = extractDomain(from: urlString) {
|
||||||
|
return String(format: "open_url".localized, domain)
|
||||||
|
} else {
|
||||||
|
return "open_original_page".localized
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user