Compare commits

...

44 Commits

Author SHA1 Message Date
Arkadiusz Fal
eb1dfe69cd Bump build number to 170 2023-11-26 19:09:45 +01:00
Arkadiusz Fal
9f5720d393 Update CHANGELOG 2023-11-26 19:09:26 +01:00
Arkadiusz Fal
675db6f651 Update packages 2023-11-26 18:59:10 +01:00
Arkadiusz Fal
fb5e86c2cb Merge pull request #559 from stonerl/collapsable-details
make description collapsible
2023-11-26 18:57:27 +01:00
Toni Förster
d384a4c520 iOS click on collapsed description text expands it 2023-11-26 15:42:47 +01:00
Toni Förster
6994271eca iOS - the description header is a button now 2023-11-26 15:42:47 +01:00
Toni Förster
ed5fa8e4aa no preview shows nothing now 2023-11-26 15:42:47 +01:00
Toni Förster
cbdf295d67 fix macOS layout 2023-11-26 15:42:47 +01:00
Toni Förster
5d78946320 add stepper for previewed line (broken on macOS) 2023-11-26 15:42:47 +01:00
Toni Förster
84fdc22861 formatting 2023-11-26 15:42:46 +01:00
Toni Förster
a57645f824 make description collapsible 2023-11-26 15:42:46 +01:00
Arkadiusz Fal
e78f40c555 Merge pull request #560 from stonerl/clickable-links
make links in description clickable
2023-11-26 12:28:58 +01:00
Arkadiusz Fal
23f5fc9575 Merge pull request #562 from stonerl/honor-aspect-ratio
honour the aspect ratio when resizing
2023-11-26 12:27:02 +01:00
Toni Förster
fc7a7b085f fixed styling 2023-11-26 10:33:58 +01:00
Arkadiusz Fal
7ffa34b0f9 Merge pull request #554 from weblate/weblate-yattee-localizable-strings
Translations update from Hosted Weblate
2023-11-25 22:26:26 +01:00
maboroshin
177e28121b Translated using Weblate (Japanese)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/ja/
2023-11-25 22:26:19 +01:00
gallegonovato
68a35b8804 Translated using Weblate (Spanish)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
ooosssay
9ec9a680a6 Translated using Weblate (Spanish)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
gallegonovato
7629931747 Translated using Weblate (Spanish)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
ooosssay
afb22e6c25 Translated using Weblate (Spanish)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
gallegonovato
052fc86388 Translated using Weblate (Spanish)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
ooosssay
4de51f29c8 Translated using Weblate (Spanish)
Currently translated at 98.4% (525 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:19 +01:00
gallegonovato
d1a1f4da38 Translated using Weblate (Spanish)
Currently translated at 98.4% (525 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
ooosssay
d1153ed97d Translated using Weblate (Spanish)
Currently translated at 97.5% (520 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
gallegonovato
1c356560d5 Translated using Weblate (Spanish)
Currently translated at 97.5% (520 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
gallegonovato
bbd18d921b Translated using Weblate (Spanish)
Currently translated at 91.5% (488 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
gallegonovato
9e4860d97c Translated using Weblate (Spanish)
Currently translated at 88.7% (473 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
ooosssay
50d42f721f Translated using Weblate (Spanish)
Currently translated at 88.7% (473 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
gallegonovato
9bfccb49e3 Translated using Weblate (Spanish)
Currently translated at 86.3% (460 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
Sergio Varela
919126f9b0 Translated using Weblate (Spanish)
Currently translated at 86.1% (459 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/es/
2023-11-25 22:26:18 +01:00
Toni Förster
d00903569f Translated using Weblate (German)
Currently translated at 100.0% (533 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/de/
2023-11-25 22:26:18 +01:00
Toni Förster
25e7b0d3e1 Translated using Weblate (German)
Currently translated at 99.8% (532 of 533 strings)

Translation: Yattee/Localizable.strings
Translate-URL: https://hosted.weblate.org/projects/yattee/localizable-strings/de/
2023-11-25 22:26:18 +01:00
Arkadiusz Fal
2aafe33417 Merge pull request #565 from stonerl/private-instances
support for private instances
2023-11-25 22:26:13 +01:00
Toni Förster
e525f36824 formatting 2023-11-22 10:24:41 +01:00
Toni Förster
5a5f5a8696 code formatting 2023-11-22 10:21:21 +01:00
Toni Förster
45d2968d9e support for private instances
closes #552

and some formatting
2023-11-21 18:14:17 +01:00
Toni Förster
c3e1465f31 fix broken fullscreen on macOS 2023-11-21 17:58:44 +01:00
Toni Förster
df47ffb013 change default minWidth with hidden sidebar 2023-11-21 17:49:29 +01:00
Toni Förster
8900f96ce7 honour the aspect ratio when resizing
The `defaultMinimumHeightLeft? has been adjusted to make the radio of the video view 16:9 in its initial state. Also on macOS when resizing the window, the aspect ratio of the view now correlates with the video.
2023-11-21 13:47:51 +01:00
Toni Förster
ed69780d52 removed superfluous braces 2023-11-21 01:13:01 +01:00
Toni Förster
691a3305e7 make links in description clickable
Adds clickable links to macOS. I it is a naive approach, but it works.

Probably closes #51
2023-11-21 00:58:40 +01:00
Arkadiusz Fal
987f6dcac8 Bump build number to 169 2023-11-04 11:34:45 +01:00
Arkadiusz Fal
1113a94d67 Update CHANGELOG 2023-11-04 11:34:25 +01:00
Arkadiusz Fal
8c6fc7d561 Update dependencies 2023-11-04 11:33:01 +01:00
14 changed files with 324 additions and 157 deletions

View File

@@ -1,3 +1,14 @@
## Build 168
## Build 170
* Description is collapsible with a button
* Links in description are clickable on macOS
* Aspect ratio is honored on resize on macOS
* Added support for private Invidious instances
* Updated dependencies
**Big thanks to [@stonerl](https://github.com/stonerl) for these contributions!**
**And to all other project contributors!**
## Previous builds
* Fixed issue where Piped login token would not refresh
* Update dependencies
* Fixed issue with MPV subtitles not working
* Other minor changes and improvements

View File

@@ -7,21 +7,21 @@ GEM
public_suffix (>= 2.0.2, < 6.0)
artifactory (3.0.15)
atomos (0.1.3)
aws-eventstream (1.2.0)
aws-partitions (1.840.0)
aws-sdk-core (3.185.1)
aws-eventstream (1.3.0)
aws-partitions (1.856.0)
aws-sdk-core (3.188.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.5)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.72.0)
aws-sdk-core (~> 3, >= 3.184.0)
aws-sdk-kms (1.73.0)
aws-sdk-core (~> 3, >= 3.188.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.136.0)
aws-sdk-core (~> 3, >= 3.181.0)
aws-sdk-s3 (1.139.0)
aws-sdk-core (~> 3, >= 3.188.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.6)
aws-sigv4 (1.6.0)
aws-sigv4 (1.7.0)
aws-eventstream (~> 1, >= 1.0.2)
babosa (1.0.4)
claide (1.1.0)
@@ -32,8 +32,7 @@ GEM
declarative (0.0.20)
digest-crc (0.6.5)
rake (>= 12.0.0, < 14.0.0)
domain_name (0.5.20190701)
unf (>= 0.0.5, < 1.0.0)
domain_name (0.6.20231109)
dotenv (2.8.1)
emoji_regex (3.2.3)
excon (0.104.0)
@@ -66,7 +65,7 @@ GEM
faraday_middleware (1.2.0)
faraday (~> 1.0)
fastimage (2.2.7)
fastlane (2.216.0)
fastlane (2.217.0)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
@@ -107,9 +106,9 @@ GEM
xcpretty (~> 0.3.0)
xcpretty-travis-formatter (>= 0.0.3)
gh_inspector (1.1.3)
google-apis-androidpublisher_v3 (0.51.0)
google-apis-androidpublisher_v3 (0.53.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-core (0.11.1)
google-apis-core (0.11.2)
addressable (~> 2.5, >= 2.5.1)
googleauth (>= 0.16.2, < 2.a)
httpclient (>= 2.8.1, < 3.a)
@@ -122,19 +121,19 @@ GEM
google-apis-core (>= 0.11.0, < 2.a)
google-apis-playcustomapp_v1 (0.13.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-storage_v1 (0.19.0)
google-apis-core (>= 0.9.0, < 2.a)
google-apis-storage_v1 (0.29.0)
google-apis-core (>= 0.11.0, < 2.a)
google-cloud-core (1.6.0)
google-cloud-env (~> 1.0)
google-cloud-errors (~> 1.0)
google-cloud-env (1.6.0)
faraday (>= 0.17.3, < 3.0)
google-cloud-errors (1.3.1)
google-cloud-storage (1.44.0)
google-cloud-storage (1.45.0)
addressable (~> 2.8)
digest-crc (~> 0.4)
google-apis-iamcredentials_v1 (~> 0.1)
google-apis-storage_v1 (~> 0.19.0)
google-apis-storage_v1 (~> 0.29.0)
google-cloud-core (~> 1.6)
googleauth (>= 0.16.2, < 2.a)
mini_mime (~> 1.0)
@@ -160,8 +159,8 @@ GEM
optparse (0.1.1)
os (1.1.4)
plist (3.7.0)
public_suffix (5.0.3)
rake (13.0.6)
public_suffix (5.0.4)
rake (13.1.0)
representable (3.2.0)
declarative (< 0.1.0)
trailblazer-option (>= 0.1.1, < 0.2.0)
@@ -189,9 +188,6 @@ GEM
tty-spinner (0.9.3)
tty-cursor (~> 0.7)
uber (0.1.0)
unf (0.1.4)
unf_ext
unf_ext (0.0.8.2)
unicode-display_width (2.5.0)
webrick (1.8.1)
word_wrap (1.0.0)

View File

@@ -105,6 +105,7 @@ extension PlayerModel {
func playerAPI(_ video: Video) -> VideosAPI? {
guard let url = video.instanceURL else { return accounts.api }
if accounts.current?.url == url { return accounts.api }
switch video.app {
case .local:
return nil

View File

@@ -147,6 +147,7 @@ extension Defaults.Keys {
static let expandVideoDescriptionDefault = true
#endif
static let expandVideoDescription = Key<Bool>("expandVideoDescription", default: expandVideoDescriptionDefault)
static let collapsedLinesDescription = Key<Int>("collapsedLinesDescription", default: 5)
static let showChannelAvatarInChannelsLists = Key<Bool>("showChannelAvatarInChannelsLists", default: true)
static let showChannelAvatarInVideosListing = Key<Bool>("showChannelAvatarInVideosListing", default: true)

View File

@@ -6,11 +6,10 @@ import Foundation
import SwiftUI
struct VideoDescription: View {
static let collapsedLines = 5
private var search: SearchModel { .shared }
@Default(.showKeywords) private var showKeywords
@Default(.expandVideoDescription) private var expandVideoDescription
@Default(.collapsedLinesDescription) private var collapsedLinesDescription
var video: Video
var detailsSize: CGSize?
@@ -21,56 +20,58 @@ struct VideoDescription: View {
}
var body: some View {
Group {
if !expandVideoDescription && !expand {
Button {
expand = true
} label: {
descriptionView
}
.buttonStyle(.plain)
} else {
descriptionView
}
}
.id(video.videoID)
descriptionView.id(video.videoID)
}
var descriptionView: some View {
VStack {
#if os(iOS)
ActiveLabelDescriptionRepresentable(
description: description,
detailsSize: detailsSize,
expand: shouldExpand
)
#else
textDescription
#endif
@ViewBuilder var descriptionView: some View {
if !expand && collapsedLinesDescription == 0 {
EmptyView()
} else {
VStack {
#if os(iOS)
ActiveLabelDescriptionRepresentable(
description: description,
detailsSize: detailsSize,
expand: expand
)
#else
textDescription
#endif
keywords
keywords
}
.contentShape(Rectangle())
.overlay(
Group {
#if canImport(UIKit)
if !expand {
Button(action: { expand.toggle() }) {
Rectangle()
.foregroundColor(.clear)
}
}
#endif
}
)
}
.contentShape(Rectangle())
}
var shouldExpand: Bool {
expandVideoDescription || expand
expand
}
@ViewBuilder var textDescription: some View {
#if !os(iOS)
#if canImport(AppKit)
Group {
if #available(macOS 12, *) {
Text(description)
DescriptionWithLinks(description: description, detailsSize: detailsSize)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(shouldExpand ? 500 : Self.collapsedLines)
#if !os(tvOS)
.lineLimit(shouldExpand ? 500 : collapsedLinesDescription)
.textSelection(.enabled)
#endif
} else {
Text(description)
.frame(maxWidth: .infinity, alignment: .leading)
.lineLimit(shouldExpand ? 500 : Self.collapsedLines)
.lineLimit(shouldExpand ? 500 : collapsedLinesDescription)
}
}
.multilineTextAlignment(.leading)
@@ -79,6 +80,33 @@ struct VideoDescription: View {
#endif
}
// If possibe convert URLs to clickable links
#if canImport(AppKit)
@available(macOS 12, *)
struct DescriptionWithLinks: View {
let description: String
let detailsSize: CGSize?
let separators = CharacterSet(charactersIn: " \n")
var formattedString: AttributedString {
var attrString = AttributedString(description)
let words = description.unicodeScalars.split(whereSeparator: separators.contains).map(String.init)
words.forEach { word in
if word.hasPrefix("https://") || word.hasPrefix("http://"), let url = URL(string: String(word)) {
if let range = attrString.range(of: word) {
attrString[range].link = url
}
}
}
return attrString
}
var body: some View {
Text(formattedString)
}
}
#endif
@ViewBuilder var keywords: some View {
if showKeywords {
ScrollView(.horizontal, showsIndicators: showScrollIndicators) {
@@ -109,7 +137,7 @@ struct VideoDescription: View {
}
var showScrollIndicators: Bool {
#if os(macOS)
#if canImport(AppKit)
false
#else
true
@@ -127,6 +155,8 @@ struct VideoDescription: View {
@Environment(\.openURL) private var openURL
@Default(.collapsedLinesDescription) private var collapsedLinesDescription
var player = PlayerModel.shared
func makeUIView(context _: Context) -> some UIView {
@@ -160,7 +190,12 @@ struct VideoDescription: View {
}
func updateNumberOfLines() {
label.numberOfLines = expand ? 0 : VideoDescription.collapsedLines
if expand || collapsedLinesDescription > 0 {
label.numberOfLines = expand ? 0 : collapsedLinesDescription
label.isHidden = false
} else {
label.isHidden = true
}
}
func urlTapHandler(_ url: URL) {

View File

@@ -243,6 +243,9 @@ struct VideoDetails: View {
}
})
.background(colorScheme == .dark ? Color.black : .white)
.onAppear {
descriptionExpanded = expandVideoDescription
}
}
#if os(iOS)
@@ -407,18 +410,34 @@ struct VideoDetails: View {
}
var descriptionHeader: some View {
HStack {
Text("Description".localized())
if !expandVideoDescription, !descriptionExpanded {
Spacer()
Image(systemName: "arrow.up.and.down")
.imageScale(.small)
#if canImport(UIKit)
Button(action: {
descriptionExpanded.toggle()
}) {
HStack {
Text("Description".localized())
Spacer()
Image(systemName: descriptionExpanded ? "chevron.up" : "chevron.down")
.imageScale(.small)
}
.padding(.horizontal)
.font(.caption)
.foregroundColor(.secondary)
}
}
.padding(.horizontal)
.font(.caption)
.foregroundColor(.secondary)
#elseif canImport(AppKit)
HStack {
Text("Description".localized())
Spacer()
Button { descriptionExpanded.toggle()
} label: {
Image(systemName: descriptionExpanded ? "chevron.up" : "chevron.down")
.imageScale(.small)
}
}
.padding(.horizontal)
.font(.caption)
.foregroundColor(.secondary)
#endif
}
var chaptersHeader: some View {

View File

@@ -27,10 +27,7 @@ struct VideoPlayerSizeModifier: ViewModifier {
content
.frame(width: geometry.size.width)
.frame(maxHeight: maxHeight)
#if !os(macOS)
.aspectRatio(ratio, contentMode: usedAspectRatioContentMode)
#endif
}
var ratio: CGFloat? { // swiftlint:disable:this no_cgfloat
@@ -46,10 +43,10 @@ struct VideoPlayerSizeModifier: ViewModifier {
}
var usedAspectRatioContentMode: ContentMode {
#if os(iOS)
fullScreen ? .fill : .fit
#else
#if os(tvOS)
.fit
#else
fullScreen ? .fill : .fit
#endif
}

View File

@@ -22,7 +22,7 @@ struct VideoPlayerView: View {
static let defaultAspectRatio = 16 / 9.0
static var defaultMinimumHeightLeft: Double {
#if os(macOS)
300
335
#else
200
#endif
@@ -156,7 +156,7 @@ struct VideoPlayerView: View {
.persistentSystemOverlays(!fullScreenPlayer)
#endif
#if os(macOS)
.frame(minWidth: 1100, minHeight: 700)
.frame(minWidth: playerSidebar != .never ? 1100 : 650, minHeight: 700)
#endif
}

View File

@@ -10,6 +10,7 @@ struct PlayerSettings: View {
@Default(.showKeywords) private var showKeywords
#if !os(tvOS)
@Default(.showScrollToTopInComments) private var showScrollToTopInComments
@Default(.collapsedLinesDescription) private var collapsedLinesDescription
#endif
@Default(.expandVideoDescription) private var expandVideoDescription
@Default(.pauseOnHidingPlayer) private var pauseOnHidingPlayer
@@ -77,6 +78,7 @@ struct PlayerSettings: View {
#if !os(tvOS)
Section(header: SettingsHeader(text: "Info".localized())) {
expandVideoDescriptionToggle
collapsedLineDescriptionStepper
showChaptersToggle
showRelatedToggle
#if os(macOS)
@@ -194,6 +196,24 @@ struct PlayerSettings: View {
Toggle("Open video description expanded", isOn: $expandVideoDescription)
}
#if !os(tvOS)
private var collapsedLineDescriptionStepper: some View {
LazyVStack {
Stepper(value: $collapsedLinesDescription, in: 0 ... 10) {
Text("Description preview")
#if os(macOS)
Spacer()
#endif
if collapsedLinesDescription == 0 {
Text("No preview")
} else {
Text("\(collapsedLinesDescription) lines")
}
}
}
}
#endif
private var returnYouTubeDislikeToggle: some View {
Toggle("Enable Return YouTube Dislike", isOn: $enableReturnYouTubeDislike)
}

View File

@@ -93,10 +93,10 @@
"Player" = "Player";
"Charging" = "Aufladen";
"Clear" = "Löschen";
"Clear Search History..." = "Suchverlauf löschen...";
"Clear Search History..." = "Suchverlauf löschen";
"Filter: active" = "Filter: aktiv";
"Find Other" = "Andere finden";
"Edit..." = "Bearbeiten...";
"Edit..." = "Bearbeiten";
/* Selected video has just finished playing */
"Just watched" = "Kürzlich angesehen";
@@ -133,7 +133,7 @@
"Are you sure you want to restore default quality profiles?" = "Möchten Sie die Standardqualitätsprofile wirklich wiederherstellen?";
"Autoplaying Next" = "Nächstes Element automatisch abspielen";
"Based on system color scheme" = "Basierend auf System Farbschema";
"Buffering stream..." = "Lädt…";
"Buffering stream..." = "Lädt …";
"Bugs and great feature ideas can be sent to the GitHub issues tracker. " = "Fehler und tolle Ideen für Funktionen können an den Github Issue Tracker gesendet werden. ";
"Categories to Skip" = "Zu überspringende Kategorien";
"Close PiP and open player when application enters foreground" = "Schließe Bild-in-Bild und öffne den Player wenn die App in den Vordergrund geholt wird";
@@ -167,7 +167,7 @@
"Issues Tracker" = "Issues Tracker";
"Enter fullscreen in landscape" = "Vollbild im Querformat aufrufen";
"Error when accessing playlist" = "Fehler beim Zugriff auf Wiedergabeliste";
"Finding something to play..." = "Etwas zu spielen finden...";
"Finding something to play..." = "Etwas zu spielen finden";
"Fullscreen size" = "Vollbildgröße";
/* Video date filter in search */
@@ -182,7 +182,7 @@
"Large" = "Groß";
/* Loading stream OSD */
"Loading streams..." = "Lädt Streams...";
"Loading streams..." = "Lädt Streams";
/* Video duration filter in search */
"Long" = "Lang";
@@ -199,7 +199,7 @@
"More info can be found in:" = "Weitere Informationen finden Sie in:";
"Movies" = "Filme";
"Music" = "Musik";
"Loading..." = "Lädt...";
"Loading..." = "Lädt";
"Lock portrait mode" = "Hochformatmodus sperren";
"Mark as watched" = "Als gesehen markieren";
"Mark video as watched after playing" = "Video nach dem Abspielen als angesehen markieren";
@@ -210,7 +210,7 @@
"Only when signed in" = "Nur wenn Sie eingeloggt sind";
/* Loading stream OSD */
"Opening %@ stream..." = "Öffne %@-stream...";
"Opening %@ stream..." = "Öffne %@-stream";
"Connection failed" = "Verbindung fehlgeschlagen";
"Continue from %@" = "Ab %@ fortsetzen";
"Contributing" = "Beitragen";
@@ -227,7 +227,7 @@
"I want to ask a question" = "Ich möchte eine Frage stellen";
"If you are interested what's coming in future updates, you can track project Milestones." = "Wenn Sie sich für künftige Updates interessieren, können Sie die Meilensteine des Projekts verfolgen.";
"Large layout is not suitable for all devices and using it may cause controls not to fit on the screen." = "Das große Layout ist nicht für alle Geräte geeignet und kann dazu führen, dass die Bedienelemente nicht auf den Bildschirm passen.";
"Opening audio stream..." = "Audiostream wird geöffnet...";
"Opening audio stream..." = "Audiostream wird geöffnet";
"Orientation" = "Ausrichtung";
"Playlist \"%@\" will be deleted.\nIt cannot be reverted." = "Die Wiedergabeliste \"%@\" wird gelöscht.\nDies kann nicht rückgängig gemacht werden.";
"Preferred Formats" = "Bevorzugte Formate";
@@ -248,7 +248,7 @@
/* Video sort order in search */
"Rating" = "Bewertung";
"Settings" = "Einstellungen";
"Share..." = "Teilen...";
"Share..." = "Teilen";
"Remove from Playlist" = "Aus Wiedergabeliste entfernen";
"Remove from the queue" = "Aus der Warteschlange entfernen";
"Replies" = "Antworten anzeigen";
@@ -257,7 +257,7 @@
"Resolution" = "Auflösung";
"Restart the app to apply the settings above." = "Starten Sie die App neu, um die Einstellungen zu übernehmen.";
"Restart/Play next" = "Von Anfang an/Als Nächstes spielen";
"Restore default profiles..." = "Standardprofile wiederherstellen...";
"Restore default profiles..." = "Standardprofile wiederherstellen";
"Rotate to portrait when exiting fullscreen" = "Auf Hochformat drehen, wenn der Vollbildmodus beendet wird";
"Round corners" = "Runde Ecken";
"Switch to public locations" = "Zu öffentlichen Adressen wechseln";
@@ -271,10 +271,10 @@
/* Video sort order in search */
"Views" = "Aufrufe";
"Watched" = "Beobachtet";
"Watched" = "Gesehen";
/* Selected video was played on given date */
"Watched %@" = "Beobachtet %@";
"Watched %@" = "%@ gesehen";
/* Selected video is being played */
"Watching now" = "Jetzt anschauen";
@@ -309,7 +309,7 @@
/* Player controls layout size for TV */
"TV" = "Fernsehen";
"unknown" = "unbekannt";
"Unsubscribe" = "Deabonnieren";
"Unsubscribe" = "Abbestellen";
"Upload date" = "Uploaddatum";
"URL" = "URL";
"Wi-Fi" = "Wi-Fi";
@@ -357,7 +357,7 @@
"Hardware decoder" = "Hardware-Decoder";
"Save history of searches, channels and playlists" = "Verlauf von Suchen, Kanälen und Wiedergabelisten speichern";
"Search history is empty" = "Suchverlauf ist leer";
"Search..." = "Suche...";
"Search..." = "Suche";
"Sections" = "Abschnitte";
"Seek gesture sensitivity" = "Suchgesten-Sensibilität";
"Seek gesture speed" = "Geschwindigkeit der Suchgesten";
@@ -427,7 +427,7 @@
"Could not refresh Trending" = "Trends kann nicht aktualisiert werden";
"Could not open channel" = "Kanal kann nicht geöffnet werden";
"This URL could not be opened" = "Diese URL kann nicht geöffnet werden";
"Share Logs..." = "Logs teilen…";
"Share Logs..." = "Logs teilen …";
"Channel could not be found" = "Der Kanal konnte nicht gefunden werden";
"Could not refresh Subscriptions" = "Abonnements konnten nicht aktualisiert werden";
"If you want this app to be available in your language, join translation project." = "Wenn Sie wünschen, dass diese App auch in Ihrer Sprache verfügbar ist, nehmen Sie am Übersetzungsprojekt teil.";
@@ -439,11 +439,11 @@
"Show Home" = "Startseite anzeigen";
"Video Details" = "Videodetails";
"Share files from Finder on a Mac\nor iTunes on Windows" = "Teilen von Dateien über den Finder auf einem Mac\noder iTunes unter Windows";
"Recent History" = "Neueste Verlauf";
"Recent History" = "Neuester Verlauf";
"Show Open Videos toolbar button" = "Schaltfläche \"Videos öffnen\" in der Symbolleiste anzeigen";
"Edit Favorites…" = "Favoriten bearbeiten…";
"Edit Favorites…" = "Favoriten bearbeiten …";
"Show Documents" = "Dokumente anzeigen";
"Buttons labels" = "Tasten-Etiketten";
"Buttons labels" = "Schaltflächen-Etiketten";
"Inspector visibility" = "Sichtbarkeit der Inspector";
"Pages toolbar position" = "Position der Seitensymbolleiste";
"Clear Queue before opening" = "Warteschlange vor dem Öffnen löschen";
@@ -482,7 +482,7 @@
"Sample Rate" = "Samplerate";
"Files" = "Dateien";
"Could not find any links to open in your clipboard" = "Kann keine Links zum Öffnen in Ihrer Zwischenablage finden";
"Remove…" = "Entfernen…";
"Remove…" = "Entfernen …";
"Show Inspector" = "Inspector einblenden";
"Actions buttons" = "Aktionsschaltflächen";
"Show sidebar" = "Seitenleiste anzeigen";
@@ -503,7 +503,7 @@
"Verified" = "Verifiziert";
"Channel" = "Kanal";
"Short videos: visible" = "Kurze Videos: sichtbar";
"Player Bar" = "Spielerleiste";
"Player Bar" = "Video-Player-Leiste";
"Short videos: hidden" = "Kurze Videos: versteckt";
"Play all unwatched" = "Alle ungesehen abspielen";
"Double tap gesture" = "Doppeltippgeste";
@@ -539,7 +539,7 @@
"Subscribe/Unsubscribe" = "Abonnieren/abbestellen";
"Are you sure you want to clear cache?" = "Möchten Sie den Cache wirklich löschen?";
"Single tap gesture" = "Einmalige Antippen-Geste";
"Seeking" = "Suchend";
"Seeking" = "Suchen";
"List" = "Liste";
"Cells" = "Zellen";
"Show Next in Queue" = "Nächste in Warteschlange anzeigen";
@@ -564,12 +564,12 @@
"Lock" = "Sperre";
"Description" = "Beschreibung";
"Seek" = "Suchen";
"Enter account credentials to connect..." = "Geben Sie die Kontozugangsdaten ein, um eine Verbindung herzustellen...";
"Enter account credentials to connect..." = "Geben Sie die Kontozugangsdaten ein, um eine Verbindung herzustellen";
"Show scroll to top button in comments" = "Schaltfläche Nach oben scrollen in Kommentaren anzeigen";
"Enter location address to connect..." = "Geben Sie die Internetadresse ein, um eine Verbindung herzustellen...";
"Enter location address to connect..." = "Geben Sie die Internetadresse ein, um eine Verbindung herzustellen";
"Opened File" = "Geöffnete Datei";
"File Extension" = "Dateierweiterung";
"Opening file..." = "Datei öffnen...";
"Opening file..." = "Datei öffnen";
"Close video and player on end" = "Video und Player am Ende beenden";
"Use system controls with AVPlayer" = "Systemsteuerung mit AVPlayer verwenden";
"Public account" = "Öffentliches Konto";
@@ -582,12 +582,12 @@
"Available" = "Verfügbar";
"Startup section" = "Bereich Startup";
"Home Settings" = "Startseite Einstellungen";
"Watched: hidden" = "Beobachtet: versteckt";
"(watched and shorts hidden)" = "(beobachtet und shorts versteckt)";
"Watched: visible" = "Beobachtet: sichtbar";
"Watched: hidden" = "Gesehene: versteckt";
"(watched and shorts hidden)" = "(gesehene und Shorts versteckt)";
"Watched: visible" = "Gesehene: sichtbar";
"No videos to show" = "Keine Videos zu zeigen";
"(watched hidden)" = "(versteckt beobachtet)";
"(shorts hidden)" = "(shorts versteckt)";
"(watched hidden)" = "(gesehene versteckt)";
"(shorts hidden)" = "(Shorts versteckt)";
"Disable filters" = "Filter deaktivieren";
"Limit" = "Grenze";
"Are you sure you want to remove %@ from Favorites?" = "Möchten Sie %@ wirklich aus den Favoriten entfernen?";
@@ -597,3 +597,6 @@
"Play Now in AVPlayer" = "Jetzt in AVPlayer abspielen";
"Show channel avatars in videos lists" = "Kanal-Avatare in Videolisten anzeigen";
"Show channel avatars in channels lists" = "Kanal-Avatare in Kanallisten anzeigen";
"Podcasts" = "Podcasts";
"Add %@" = "%@ hinzufügen";
"Releases" = "Veröffentlichungen";

View File

@@ -53,7 +53,7 @@
"Are you sure you want to restore default quality profiles?" = "¿Estás seguro de que quieres restablecer los ajustes por defecto de los perfiles de calidad?";
"Are you sure you want to unsubscribe from %@?" = "¿Estás seguro de que quieres dejar de estar suscrito a %@?";
"Cancel" = "Cancelar";
"Autoplaying Next" = "Autorreproducir el siguiente";
"Autoplaying Next" = "Autoreproducir el siguiente";
"Based on system color scheme" = "Basado en el tema del sistema";
"Clear Search History..." = "Limpiar el historial de búsqueda...";
"Battery" = "Batería";
@@ -116,7 +116,7 @@
"Decrease rate" = "Tasa de disminución";
"Decreased opacity" = "Opacidad disminuida";
"High" = "Alto";
"%lld videos" = "%lld vídeos";
"%lld videos" = "%lld videos";
"Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)." = "Recordatorios explícitos para marquen \"me gusta\", se suscriban o interactúen con ellos en cualquier plataforma de pago o gratuita (por ejemplo, haciendo clic en un vídeo).";
"Formats will be selected in order as listed.\nHLS is an adaptive format (resolution setting does not apply)." = "Los formatos se seleccionarán en orden como se indica.\nHLS es un formato adaptable (no aplica la configuración de resolución).";
"Fullscreen size" = "Tamaño de pantalla completa";
@@ -169,7 +169,7 @@
"Stream & Player" = "Transmisión y reproductor";
"Picture in Picture" = "Imagen en imagen";
"Visibility" = "Visibilidad";
"Edit Favorites…" = "Editar Favoritos...";
"Edit Favorites…" = "Editar los favoritos";
"Center" = "Centrar";
"Wiki" = "Wiki";
"Live Streams" = "Transmisiones en vivo";
@@ -250,7 +250,7 @@
"Actions buttons" = "Botones de acciones";
"Files" = "Archivos";
"Sign In Required" = "Inicio de sesión requerido";
"Buttons labels" = "Etiquetas de botones";
"Buttons labels" = "Etiquetas de los botones";
"Next" = "Siguiente";
"Default Profile" = "Perfil por defecto";
"Paste" = "Pegar";
@@ -258,7 +258,7 @@
"File" = "Archivo";
"Right" = "Derecha";
"Reset search filters" = "Restablecer filtros de búsqueda";
"Channel" = "Vanal";
"Channel" = "Canal";
"Open Files" = "Abrir archivos";
"You can find information about using Yattee in the Wiki pages." = "Puede encontrar información sobre el uso de Yattee en la Wiki.";
"Lock portrait mode" = "Bloquear modo retrato";
@@ -266,7 +266,7 @@
/* Loading stream OSD */
"Loading streams..." = "Cargando secuencias...";
"Public Locations" = "Ubicaciones Públicas";
"Public Locations" = "Ubicaciones públicas";
"Yattee" = "Yattee";
"No results" = "No hay resultados";
"Driver" = "Driver";
@@ -397,7 +397,7 @@
"Playlist \"%@\" will be deleted.\nIt cannot be reverted." = "Se eliminará la lista de reproducción \"%@\".\nNo se puede revertir.";
"Playlists" = "Listas de reproducción";
"Popular" = "Popular";
"Proxy videos" = "Proxy videos";
"Proxy videos" = "Utilizar un proxy para ver los vídeos";
"Regular size" = "Tamaño regular";
"Related" = "Relacionado";
@@ -456,7 +456,7 @@
"Press and hold remote button to open captions and quality menus" = "Mantenga presionado el botón del control remoto para abrir subtítulos y menús de calidad";
"Comments are disabled" = "Los comentarios están deshabilitados";
"No comments" = "Sin comentarios";
"Share Logs..." = "Compartir registros...";
"Share Logs..." = "Compartir registros";
"Open logs in Finder" = "Abrir registros en Finder";
"Could not open video" = "No se pudo abrir el video";
"Channel could not be found" = "No se pudo encontrar el canal";
@@ -481,14 +481,14 @@
"Playback" = "Reproducción";
"Restart/Play next" = "Reiniciar/Reproducir siguiente";
"This cannot be reverted" = "Esto no se puede revertir";
"This cannot be reverted. You might need to switch between views or restart the app to see changes." = "Esto no se puede revertir. Es posible que deba cambiar entre vistas o reiniciar la aplicación para ver los cambios";
"This cannot be reverted. You might need to switch between views or restart the app to see changes." = "Esto no se puede revertir. Es posible que deba cambiar entre vistas o reiniciar la aplicación para ver los cambios.";
"Could not open channel" = "No se pudo abrir el canal";
"Recent History" = "Historial reciente";
"Share files from Finder on a Mac\nor iTunes on Windows" = "Comparta archivos desde Finder en una Mac\no iTunes en Windows";
"Pages toolbar position" = "Posición de la barra de herramientas de páginas";
"Video actions buttons" = "Botones de acciones de video";
"Video" = "Video";
"Show Open Videos toolbar button" = "Mostrar el botón de la barra de herramientas Abrir videos";
"Show Open Videos toolbar button" = "Mostrar el botón de los vídeos abiertos en la barra de herramientas";
"Show Documents" = "Mostrar documentos";
"Clear Queue before opening" = "Borrar cola antes de abrir";
"Open" = "Abrir";
@@ -498,21 +498,105 @@
"Audio" = "Audio";
"Codec" = "Codec";
"Size" = "Tamaño";
"Remove…" = "Eliminar...";
"Remove…" = "Eliminar";
"Playback history is empty" = "El historial de reproducción está vacío";
"Copy%@link" = "Copiar%@enlace";
"Share%@link" = "Compartir%@enlace";
"Open expanded" = "Abrir maximizada";
"Single tap gesture" = "Gesto con un solo toque";
"Open expanded" = "Abrir maximizado";
"Single tap gesture" = "Gesto de un solo toque";
"Right click channel thumbnail to open context menu with more actions" = "Haz clic con el botón derecho en la miniatura del canal para abrir el menú contextual con más acciones";
"Short videos: visible" = "Vídeos cortos: visibles";
"Short videos: visible" = "Videos cortos: visible";
"Tap and hold channel thumbnail to open context menu with more actions" = "Mantén pulsada la miniatura del canal para abrir el menú contextual con más acciones";
"Maximum width expanded" = "Ancho máximo ampliado";
"Short videos: hidden" = "Vídeos cortos: ocultos";
"Maximum width expanded" = "Ancho máximo expandido";
"Short videos: hidden" = "Videos cortos: oculto";
"Clear all" = "Borrar todo";
"Always show controls buttons" = "Mostrar siempre los botones de control";
"Mark channel feed as unwatched" = "Marcar el canal como no visto";
"Mark channel feed as unwatched" = "Marcar el feed del canal como no visto";
"Play all unwatched" = "Reproducir todo lo no visto";
"Mark channel feed as watched" = "Marcar el canal como visto";
"Double tap gesture" = "Doble toque";
"Mark channel feed as watched" = "Marcar el feed del canal como visto";
"Double tap gesture" = "Gesto de doble toque";
"Player Bar" = "Barra del reproductor";
"Controls Buttons" = "Botones de control";
"Seeking" = "Buscando";
"Total size: %@" = "Tamaño total: %@";
"Gesture: backwards" = "Gesto: atrás";
"Gesture: fowards" = "Gesto: adelante";
"System controls" = "Controles del sistema";
"Close video" = "Cerrar vídeo";
"Controls button: backwards" = "Botón de control: hacia atrás";
"Controls button: forwards" = "Botón de control: hacia delante";
"Show unwatched feed badges" = "Mostrar insignias de feeds no vistos";
"Gesture settings control skipping interval for double tap gesture on left/right side of the player. Changing system controls settings requires restart." = "Los ajustes de los gestos controlan el intervalo de salto para el gesto de doble toque en el lado izquierdo/derecho del reproductor. Para cambiar los ajustes de los controles del sistema es necesario reiniciar.";
"Gesture settings control skipping interval for double click on left/right side of the player. Changing system controls settings requires restart." = "Los ajustes gestuales controlan el intervalo de salto para el doble clic en el lado izquierdo/derecho del reproductor. Para cambiar la configuración de los controles del sistema es necesario reiniciar.";
"Open channels with description expanded" = "Canales abiertos con la descripción ampliada";
"Subscribe/Unsubscribe" = "Suscribirse/Desuscribirse";
"Are you sure you want to clear cache?" = "¿Seguro que quieres borrar la caché?";
"Lock orientation" = "Bloquear orientación";
"Cache" = "Cache";
"Actions Buttons" = "Botones de Acción";
"Music Mode" = "Modo Música";
"Play next item" = "Reproducir siguiente elemento";
"Gesture settings control skipping interval for remote arrow buttons (for 2nd generation Siri Remote or newer). Changing system controls settings requires restart." = "Los ajustes gestuales controlan el intervalo del salto de los botones de la flecha del mando a distancia (para Siri Remote de 2ª generación o posterior). Para cambiar los ajustes de los controles del sistema es necesario reiniciar.";
"Show cache status" = "Mostrar estado de cache";
"Show Next in Queue" = "Mostrar el siguiente en la cola";
"Hide player" = "Ocultar al jugador";
"Toggle player" = "Alternar el reproductor";
"Inspector" = "Inspector";
"Playback Settings" = "Ajustes de la reproducción";
"Show toggle watch status button" = "Mostrar el botón para alternar estado de la visualización";
"Queue - shuffled" = "Cola - aleatoria";
"Cells" = "Celdas";
"Do nothing" = "No hacer nada";
"Next in Queue" = "Siguiente en la cola";
"Open video description expanded" = "Abrir la descripción del vídeo ampliada";
"Mark all as unwatched" = "Marcar todo como no visto";
"Mark all as watched" = "Marcar todo como visto";
"List" = "Lista";
"Toggle size" = "Alternar el tamaño";
"Open channel" = "Abrir el canal";
"Feed" = "Feed";
"Available" = "Disponible";
"Loop one" = "Bucle uno";
"Use system controls with AVPlayer" = "Utilizar los controles del sistema con AVPlayer";
"Opening file..." = "Abriendo el archivo...";
"No videos to show" = "No hay vídeos que mostrar";
"Autoplay next" = "Reproducir automáticamente la siguiente";
"Home Settings" = "Ajustes iniciales";
"Watched: visible" = "Visto: visible";
"Fullscreen" = "A pantalla completa";
"Seek" = "Buscar";
"Landscape left" = "Apaisado a la izquierda";
"(watched and shorts hidden)" = "(ocultar videos reproducidos y cortos)";
"Rotate when entering fullscreen on landscape video" = "Rotar al entrar en pantalla completa en un vídeo apaisado";
"Enter account credentials to connect..." = "Introduce las credenciales de la cuenta para conectarte...";
"Watched: hidden" = "Visto: oculto";
"Stream" = "Stream";
"Replay" = "Repetir";
"(watched hidden)" = "(ocultar lo reproducido)";
"Show scroll to top button in comments" = "Mostrar el botón de desplazamiento hacia arriba en los comentarios";
"Enter location address to connect..." = "Introduzca la dirección para conectarse...";
"File Extension" = "Extensión del archivo";
"Opened File" = "Archivo abierto";
"Public account" = "Cuenta pública";
"Lock" = "Bloquear";
"No rotation" = "Sin rotación";
"Startup section" = "Sección de inicio";
"Browse without account" = "Navegar sin cuenta";
"Close video and player on end" = "Cerrar el vídeo y el reproductor al final";
"Landscape right" = "Apaisado a la derecha";
"Your Accounts" = "Tus cuentas";
"Description" = "Descripción";
"Maximum feed items" = "Número máximo de elementos en el feed";
"Are you sure you want to remove %@ from Favorites?" = "¿Estás seguro de que quieres eliminar %@ de favoritos?";
"Limit" = "Límite";
"Keep channels with unwatched videos on top of subscriptions list" = "Mantén los canales con los vídeos sin ver en la parte superior de la lista de suscripciones";
"(shorts hidden)" = "(cortos ocultos)";
"Disable filters" = "Desactivar los filtros";
"Podcasts" = "Podcasts";
"Releases" = "Lanzamientos";
"Show channel avatars in channels lists" = "Mostrar los avatares de los canales en las listas de los canales";
"Play Now in MPV" = "Reproducir ahora en MPV";
"Show channel avatars in videos lists" = "Mostrar los avatares de los canales en las listas de los vídeos";
"Add %@" = "Añada %@";
"Show video context menu options to force selected backend" = "Mostrar las opciones del menú contextual del vídeo para forzar el backend seleccionado";
"Play Now in AVPlayer" = "Reproducir ahora en AVPlayer";

View File

@@ -105,7 +105,7 @@
"Not available" = "利用できません";
/* SponsorBlock category name */
"Offtopic in Music Videos" = "音楽動画の脱線した内容";
"Offtopic in Music Videos" = "音楽動画の非音楽部分";
"Only when signed in" = "ログイン時のみ";
"Orientation" = "向き";
"Opening audio stream..." = "音声ストリーム 開始中...";
@@ -487,13 +487,13 @@
"Category" = "分類";
/* SponsorBlock category name */
"Interaction" = "操作の要求";
"Interaction" = "操作の依頼";
/* SponsorBlock category name */
"Self-promotion" = "自己宣伝";
"Quality" = "品質";
"Are you sure you want to clear search history?" = "検索履歴を消去しますか?";
"For videos which feature music as the primary content." = "音楽主なコンテンツとする動画用です。";
"For videos which feature music as the primary content." = "音楽主な内容の動画が対象です。";
"Always use AVPlayer for live videos" = "ライブ配信には常に AVPlayer を使用";
"Clear Search History" = "検索履歴を消去";
"Disabled" = "無効化";

View File

@@ -3801,7 +3801,7 @@
CODE_SIGN_ENTITLEMENTS = "Open in Yattee/Open in Yattee.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = "Open in Yattee/Info.plist";
INFOPLIST_KEY_CFBundleDisplayName = "Open in Yattee";
@@ -3832,7 +3832,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 78Z5H3M6RJ;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = "Open in Yattee/Info.plist";
@@ -3863,7 +3863,7 @@
buildSettings = {
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MACOSX_DEPLOYMENT_TARGET = 11.0;
@@ -3883,7 +3883,7 @@
buildSettings = {
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MACOSX_DEPLOYMENT_TARGET = 11.0;
@@ -4047,7 +4047,7 @@
CODE_SIGN_ENTITLEMENTS = "iOS/Yattee (iOS).entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
ENABLE_PREVIEWS = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
@@ -4100,7 +4100,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 78Z5H3M6RJ;
ENABLE_PREVIEWS = YES;
GCC_PREPROCESSOR_DEFINITIONS = "GLES_SILENCE_DEPRECATION=1";
@@ -4152,7 +4152,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEAD_CODE_STRIPPING = YES;
ENABLE_APP_SANDBOX = YES;
ENABLE_HARDENED_RUNTIME = YES;
@@ -4191,7 +4191,7 @@
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "3rd Party Mac Developer Application";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEAD_CODE_STRIPPING = YES;
"DEVELOPMENT_TEAM[sdk=macosx*]" = 78Z5H3M6RJ;
ENABLE_APP_SANDBOX = YES;
@@ -4226,7 +4226,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
@@ -4250,7 +4250,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
LD_RUNPATH_SEARCH_PATHS = (
@@ -4276,7 +4276,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEAD_CODE_STRIPPING = YES;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
@@ -4301,7 +4301,7 @@
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
COMBINE_HIDPI_IMAGES = YES;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEAD_CODE_STRIPPING = YES;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
@@ -4327,7 +4327,7 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEVELOPMENT_ASSET_PATHS = "";
ENABLE_PREVIEWS = YES;
GENERATE_INFOPLIST_FILE = YES;
@@ -4367,7 +4367,7 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "iPhone Distribution";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
DEVELOPMENT_ASSET_PATHS = "";
"DEVELOPMENT_TEAM[sdk=appletvos*]" = 78Z5H3M6RJ;
ENABLE_PREVIEWS = YES;
@@ -4408,7 +4408,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
@@ -4432,7 +4432,7 @@
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 168;
CURRENT_PROJECT_VERSION = 170;
GENERATE_INFOPLIST_FILE = YES;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
@@ -4742,8 +4742,8 @@
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/cxfksword/MPVKit.git";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 0.35.1;
branch = main;
kind = branch;
};
};
/* End XCRemoteSwiftPackageReference section */

View File

@@ -14,8 +14,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/Alamofire/Alamofire.git",
"state" : {
"revision" : "b2fa556e4e48cbf06cf8c63def138c98f4b811fa",
"version" : "5.8.0"
"revision" : "3dc6a42c7727c49bf26508e29b0a0b35f9c7e1ad",
"version" : "5.8.1"
}
},
{
@@ -42,7 +42,7 @@
"location" : "https://github.com/kishikawakatsumi/KeychainAccess.git",
"state" : {
"branch" : "master",
"revision" : "ecb18d8ce4d88277cc4fb103973352d91e18c535"
"revision" : "e0c7eebc5a4465a3c4680764f26b7a61f567cdaf"
}
},
{
@@ -59,8 +59,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/cxfksword/MPVKit.git",
"state" : {
"revision" : "96825b3dc2b38e5550268156148d47798ce6aa74",
"version" : "0.36.0"
"branch" : "main",
"revision" : "dca1e345a26d09a3d621d7656a94e6427f3f7b83"
}
},
{
@@ -105,7 +105,7 @@
"location" : "https://github.com/SDWebImage/SDWebImage",
"state" : {
"branch" : "master",
"revision" : "7550aa759c8d57800f7fdb3d17272a232b05e8cb"
"revision" : "191b94cd545274603fcffce275dd4c1247587b6e"
}
},
{
@@ -131,8 +131,8 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/SDWebImage/SDWebImageWebPCoder.git",
"state" : {
"revision" : "b442fafefeee8d3f489e33e69e0bb9407deb4757",
"version" : "0.14.0"
"revision" : "db4603921b31a6ce0f8c26d36d6a3fffc2dba481",
"version" : "0.14.2"
}
},
{