mirror of
https://github.com/yattee/yattee.git
synced 2025-12-12 19:18:16 +00:00
Compare commits
45 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3a8d6aed76 | ||
|
|
2952e10359 | ||
|
|
59f84ec129 | ||
|
|
a76dae6656 | ||
|
|
a208ef9147 | ||
|
|
7a998d2d69 | ||
|
|
f3659904dc | ||
|
|
72246448f1 | ||
|
|
6617ad5fc6 | ||
|
|
65b3eb60d9 | ||
|
|
0174d2f8a0 | ||
|
|
8f340586a6 | ||
|
|
23e07baa7a | ||
|
|
e0e0352238 | ||
|
|
543a7c0da6 | ||
|
|
c78a0dc8c3 | ||
|
|
0051b3ab74 | ||
|
|
1f0a2d25e9 | ||
|
|
5d8e8483d1 | ||
|
|
7972498f2c | ||
|
|
703ac90a33 | ||
|
|
265c4cd95c | ||
|
|
b7929465a7 | ||
|
|
669f7d5aa6 | ||
|
|
3136d6328d | ||
|
|
32b19d8cd5 | ||
|
|
2efb3ec334 | ||
|
|
16c580b1f3 | ||
|
|
5cef7d40ff | ||
|
|
7b9aa8ce99 | ||
|
|
a83657b8c6 | ||
|
|
287bd25360 | ||
|
|
7c45f3286b | ||
|
|
a9e3e81567 | ||
|
|
f45001da78 | ||
|
|
3779b7ed1f | ||
|
|
55517fd44d | ||
|
|
77c40226eb | ||
|
|
5424d5168a | ||
|
|
2c7fce011f | ||
|
|
6911fb8e08 | ||
|
|
a73a030d92 | ||
|
|
930cefc29e | ||
|
|
02d9b34fb0 | ||
|
|
0a8d9dfceb |
50
CHANGELOG.md
50
CHANGELOG.md
@@ -1,41 +1,11 @@
|
||||
## Build 142
|
||||
* Fixed chapters layout when there are no images available
|
||||
* Other minor fixes
|
||||
## Build 148
|
||||
* Fixed issue where keyboard would be dismissed on iOS during typing location address/account credentials
|
||||
* Localizations updates and fixes
|
||||
* Other minor changes and fixes
|
||||
|
||||
### Previous Builds
|
||||
* Improved player layout
|
||||
- Video titles can now span multiple lines for readability
|
||||
- Channel details and video dates/likes/dislikes displayed below title
|
||||
- Segmented picker between Info page and Comments
|
||||
- Info page combines description, chapters, inspector, and related
|
||||
- Description is collapsed by default, tap to expand
|
||||
- Chapters are displayed in horizontal scroll view
|
||||
- Gesture to toggle fullscreen size of details is changed to double tap above action buttons
|
||||
* Opening channel from current video, related or from comments will open it in sheet above player instead of in browser (iOS)
|
||||
* Added settings toggles for enabling more action buttons:
|
||||
- Toggle fullscreen
|
||||
- Toggle PiP
|
||||
- Lock orientation
|
||||
- Restart video
|
||||
- Play next video
|
||||
- Music mode
|
||||
* Added browsing setting to toggle visibility of button to change video watch status
|
||||
* Added player setting to show Inspector always or only for local videos
|
||||
* Added player setting to show video descriptions expanded (now gets collapsed by default)
|
||||
* Added playback mode menu to Playback Settings
|
||||
* Changed layout to vertical and added configuration buttons for remaining views on tvOS (Popular, Trending, Playlists, Search)
|
||||
* Simplified animation on closing player
|
||||
* Removed "Watch Next" view
|
||||
* Added pagination/infinite scroll for channel contents (Invidious and Piped)
|
||||
* Added support for channel tabs for Invidious (previously available only for Piped)
|
||||
* Added filter to hide Short videos, available via view menu/toolbar button
|
||||
* Added localizations: Arabic, Japanese, Portugese, Portuguese (Brazil)
|
||||
* Added browsing setting: "Show unwatched feed badges"
|
||||
* Fixed reported crashes
|
||||
* Fixed issue where channels in Favorites would not refresh contents
|
||||
* Fixed issues with opening channel URLs
|
||||
* Fixed issue where account username would get truncated
|
||||
* Fixed issue where marking all feed videos as watched/unwatched would not refresh actions in Subscriptions menu
|
||||
* Fixed issue where closing channel would require multiple back presses
|
||||
* Fixed issue with controls being clipped (regression from build 140)
|
||||
* Other minor changes and improvements
|
||||
## Previous Builds
|
||||
* Added button to scroll to top in comments and setting to toggle it
|
||||
* Switch seek duration +/- buttons in controls settings
|
||||
* Fixed playback settings sheet height
|
||||
* Localizations updates and fixes
|
||||
* Other minor changes and fixes
|
||||
|
||||
@@ -222,7 +222,9 @@ final class MPVBackend: PlayerBackend {
|
||||
func playStream(_ stream: Stream, of video: Video, preservingTime: Bool, upgrading: Bool) {
|
||||
#if !os(macOS)
|
||||
if model.presentingPlayer {
|
||||
UIApplication.shared.isIdleTimerDisabled = true
|
||||
DispatchQueue.main.async {
|
||||
UIApplication.shared.isIdleTimerDisabled = true
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -280,7 +282,7 @@ final class MPVBackend: PlayerBackend {
|
||||
self.stop()
|
||||
|
||||
DispatchQueue.main.async { [weak self] in
|
||||
guard let self else {
|
||||
guard let self, let client = self.client else {
|
||||
return
|
||||
}
|
||||
|
||||
@@ -296,7 +298,7 @@ final class MPVBackend: PlayerBackend {
|
||||
}
|
||||
}
|
||||
|
||||
self.client.loadFile(url, sub: captions?.url, time: time, forceSeekable: stream.kind == .hls) { [weak self] _ in
|
||||
client.loadFile(url, sub: captions?.url, time: time, forceSeekable: stream.kind == .hls) { [weak self] _ in
|
||||
self?.isLoadingVideo = true
|
||||
}
|
||||
} else {
|
||||
@@ -308,7 +310,7 @@ final class MPVBackend: PlayerBackend {
|
||||
let fileToLoad = self.model.musicMode ? stream.audioAsset.url : stream.videoAsset.url
|
||||
let audioTrack = self.model.musicMode ? nil : stream.audioAsset.url
|
||||
|
||||
self.client?.loadFile(fileToLoad, audio: audioTrack, sub: captions?.url, time: time, forceSeekable: stream.kind == .hls) { [weak self] _ in
|
||||
client.loadFile(fileToLoad, audio: audioTrack, sub: captions?.url, time: time, forceSeekable: stream.kind == .hls) { [weak self] _ in
|
||||
self?.isLoadingVideo = true
|
||||
self?.pause()
|
||||
}
|
||||
|
||||
@@ -459,12 +459,16 @@ final class PlayerModel: ObservableObject {
|
||||
return
|
||||
}
|
||||
|
||||
streamSelection = stream
|
||||
playStream(
|
||||
stream,
|
||||
of: currentVideo,
|
||||
preservingTime: !currentItem.playbackTime.isNil
|
||||
)
|
||||
DispatchQueue.global(qos: .userInitiated).async {
|
||||
DispatchQueue.main.async {
|
||||
self.streamSelection = stream
|
||||
}
|
||||
self.playStream(
|
||||
stream,
|
||||
of: currentVideo,
|
||||
preservingTime: !self.currentItem.playbackTime.isNil
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
private func handlePresentationChange() {
|
||||
|
||||
@@ -95,6 +95,8 @@ extension PlayerModel {
|
||||
|
||||
func resetSegments() {
|
||||
resetLastSegment()
|
||||
restoredSegments = []
|
||||
DispatchQueue.main.async { [weak self] in
|
||||
self?.restoredSegments = []
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -166,7 +166,7 @@ struct ChannelPlaylistView: View {
|
||||
#if os(iOS)
|
||||
.navigationBarTrailing
|
||||
#else
|
||||
.automatic
|
||||
.automatic
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -136,6 +136,10 @@ extension Defaults.Keys {
|
||||
static let seekGestureSpeed = Key<Double>("seekGestureSpeed", default: 0.5)
|
||||
static let seekGestureSensitivity = Key<Double>("seekGestureSensitivity", default: 30.0)
|
||||
static let showKeywords = Key<Bool>("showKeywords", default: false)
|
||||
#if !os(tvOS)
|
||||
static let showScrollToTopInComments = Key<Bool>("showScrollToTopInComments", default: true)
|
||||
#endif
|
||||
|
||||
#if os(iOS)
|
||||
static let expandVideoDescriptionDefault = Constants.isIPad
|
||||
#else
|
||||
@@ -287,7 +291,7 @@ enum PlayerSidebarSetting: String, CaseIterable, Defaults.Serializable {
|
||||
#if os(macOS)
|
||||
.always
|
||||
#else
|
||||
.whenFits
|
||||
.whenFits
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -144,7 +144,7 @@ struct HomeView: View {
|
||||
navigation.presentAlert(
|
||||
Alert(
|
||||
title: Text("Are you sure you want to clear history of watched videos?"),
|
||||
message: Text("It cannot be reverted"),
|
||||
message: Text("This cannot be reverted"),
|
||||
primaryButton: .destructive(Text("Clear All")) {
|
||||
PlayerModel.shared.removeHistory()
|
||||
historyID = UUID()
|
||||
|
||||
@@ -62,7 +62,7 @@ struct PlayerControls: View {
|
||||
}
|
||||
}
|
||||
#else
|
||||
.offset(y: 2)
|
||||
.offset(y: 2)
|
||||
#endif
|
||||
|
||||
VStack {
|
||||
|
||||
@@ -13,7 +13,8 @@ struct ProgressBar: View {
|
||||
Rectangle().frame(width: min(Double(self.value) * geometry.size.width, geometry.size.width), height: geometry.size.height)
|
||||
.foregroundColor(Color.accentColor)
|
||||
.animation(.linear)
|
||||
}.cornerRadius(45.0)
|
||||
}
|
||||
.cornerRadius(45.0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ extension Backport where Content: View {
|
||||
@ViewBuilder func playbackSettingsPresentationDetents() -> some View {
|
||||
if #available(iOS 16.0, macOS 13.0, tvOS 16.0, *) {
|
||||
content
|
||||
.presentationDetents([.height(350), .large])
|
||||
.presentationDetents([.height(400), .large])
|
||||
} else {
|
||||
content
|
||||
}
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import SwiftUI
|
||||
|
||||
struct CommentsView: View {
|
||||
var embedInScrollView = false
|
||||
@State private var repliesID: Comment.ID?
|
||||
|
||||
@ObservedObject private var comments = CommentsModel.shared
|
||||
@@ -16,7 +15,7 @@ struct CommentsView: View {
|
||||
PlaceholderProgressView()
|
||||
} else {
|
||||
let last = comments.all.last
|
||||
let commentsStack = LazyVStack {
|
||||
LazyVStack {
|
||||
ForEach(comments.all) { comment in
|
||||
CommentView(comment: comment, repliesID: $repliesID)
|
||||
.onAppear {
|
||||
@@ -25,15 +24,6 @@ struct CommentsView: View {
|
||||
.borderBottom(height: comment != last ? 0.5 : 0, color: Color("ControlsBorderColor"))
|
||||
}
|
||||
}
|
||||
|
||||
if embedInScrollView {
|
||||
ScrollView(.vertical, showsIndicators: false) {
|
||||
commentsStack
|
||||
Color.clear.frame(height: 50)
|
||||
}
|
||||
} else {
|
||||
commentsStack
|
||||
}
|
||||
}
|
||||
}
|
||||
.padding(.horizontal)
|
||||
|
||||
@@ -4,6 +4,8 @@ import SDWebImageSwiftUI
|
||||
import SwiftUI
|
||||
|
||||
struct VideoDetails: View {
|
||||
static let pageMenuID = "pageMenu"
|
||||
|
||||
struct TitleView: View {
|
||||
@ObservedObject private var model = PlayerModel.shared
|
||||
@State private var titleSize = CGSize.zero
|
||||
@@ -170,12 +172,15 @@ struct VideoDetails: View {
|
||||
@Environment(\.colorScheme) private var colorScheme
|
||||
|
||||
@ObservedObject private var accounts = AccountsModel.shared
|
||||
let comments = CommentsModel.shared
|
||||
@ObservedObject private var comments = CommentsModel.shared
|
||||
@ObservedObject private var player = PlayerModel.shared
|
||||
|
||||
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
|
||||
@Default(.playerSidebar) private var playerSidebar
|
||||
@Default(.showInspector) private var showInspector
|
||||
#if !os(tvOS)
|
||||
@Default(.showScrollToTopInComments) private var showScrollToTopInComments
|
||||
#endif
|
||||
@Default(.expandVideoDescription) private var expandVideoDescription
|
||||
|
||||
var body: some View {
|
||||
@@ -211,7 +216,10 @@ struct VideoDetails: View {
|
||||
.animation(nil, value: player.currentItem)
|
||||
.frame(minWidth: 0, maxWidth: .infinity)
|
||||
|
||||
pageView
|
||||
ScrollViewReader { proxy in
|
||||
pageView
|
||||
.overlay(scrollToTopButton(proxy), alignment: .bottomTrailing)
|
||||
}
|
||||
#if os(iOS)
|
||||
.opacity(detailsVisibility ? 1 : 0)
|
||||
#endif
|
||||
@@ -266,9 +274,10 @@ struct VideoDetails: View {
|
||||
}
|
||||
|
||||
var pageView: some View {
|
||||
ScrollView(.vertical, showsIndicators: false) {
|
||||
ScrollView(.vertical) {
|
||||
LazyVStack {
|
||||
pageMenu
|
||||
.id(Self.pageMenuID)
|
||||
.padding(5)
|
||||
|
||||
switch page {
|
||||
@@ -319,7 +328,6 @@ struct VideoDetails: View {
|
||||
.padding(.top, 20)
|
||||
}
|
||||
}
|
||||
.padding(.bottom, 60)
|
||||
}
|
||||
}
|
||||
.onAppear {
|
||||
@@ -338,12 +346,13 @@ struct VideoDetails: View {
|
||||
.padding(.horizontal)
|
||||
|
||||
case .comments:
|
||||
CommentsView(embedInScrollView: false)
|
||||
CommentsView()
|
||||
.onAppear {
|
||||
comments.loadIfNeeded()
|
||||
}
|
||||
}
|
||||
}
|
||||
.padding(.bottom, 60)
|
||||
}
|
||||
#if os(iOS)
|
||||
.onAppear {
|
||||
@@ -365,6 +374,30 @@ struct VideoDetails: View {
|
||||
}
|
||||
}
|
||||
|
||||
@ViewBuilder func scrollToTopButton(_ proxy: ScrollViewProxy) -> some View {
|
||||
#if !os(tvOS)
|
||||
if showScrollToTopInComments,
|
||||
page == .comments,
|
||||
comments.loaded,
|
||||
comments.all.count > 3
|
||||
{
|
||||
Button {
|
||||
withAnimation {
|
||||
proxy.scrollTo(Self.pageMenuID)
|
||||
}
|
||||
} label: {
|
||||
Label("Scroll to top", systemImage: "arrow.up")
|
||||
.padding(8)
|
||||
.foregroundColor(.white)
|
||||
.background(Circle().opacity(0.8).foregroundColor(.accentColor))
|
||||
}
|
||||
.padding()
|
||||
.labelStyle(.iconOnly)
|
||||
.buttonStyle(.plain)
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
var descriptionHeader: some View {
|
||||
HStack {
|
||||
Text("Description".localized())
|
||||
|
||||
@@ -44,7 +44,7 @@ struct VideoPlayerSizeModifier: ViewModifier {
|
||||
#if os(iOS)
|
||||
fullScreen ? .fill : .fit
|
||||
#else
|
||||
.fit
|
||||
.fit
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -89,14 +89,6 @@ struct VideoPlayerView: View {
|
||||
.onChange(of: playerSidebar) { _ in
|
||||
updateSidebarQueue()
|
||||
}
|
||||
#if os(macOS)
|
||||
.background(
|
||||
EmptyView().sheet(isPresented: $navigation.presentingChannelSheet) {
|
||||
ChannelVideosView(channel: navigation.channelPresentedInSheet, showCloseButton: true, inNavigationView: false)
|
||||
.frame(minWidth: 1000, minHeight: 700)
|
||||
}
|
||||
)
|
||||
#endif
|
||||
}
|
||||
|
||||
var videoPlayer: some View {
|
||||
@@ -189,7 +181,7 @@ struct VideoPlayerView: View {
|
||||
.persistentSystemOverlays(!fullScreenPlayer)
|
||||
#endif
|
||||
#if os(macOS)
|
||||
.frame(minWidth: 1000, minHeight: 700)
|
||||
.frame(minWidth: 1100, minHeight: 700)
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ struct AddToPlaylistView: View {
|
||||
#if os(tvOS)
|
||||
600
|
||||
#else
|
||||
.infinity
|
||||
.infinity
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -115,7 +115,7 @@ struct AddToPlaylistView: View {
|
||||
#if os(tvOS)
|
||||
.trailing
|
||||
#else
|
||||
.center
|
||||
.center
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -107,7 +107,7 @@ struct PlaylistVideosView: View {
|
||||
#if os(iOS)
|
||||
.navigationBarTrailing
|
||||
#else
|
||||
.automatic
|
||||
.automatic
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,7 +150,7 @@ struct PlaylistsView: View {
|
||||
}
|
||||
}
|
||||
#else
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
model.load()
|
||||
loadResource()
|
||||
}
|
||||
|
||||
@@ -167,7 +167,7 @@ struct SearchView: View {
|
||||
}
|
||||
}
|
||||
#else
|
||||
.ignoresSafeArea(.keyboard, edges: .bottom)
|
||||
.ignoresSafeArea(.keyboard, edges: .bottom)
|
||||
.navigationTitle("Search")
|
||||
#endif
|
||||
#if os(iOS)
|
||||
@@ -260,7 +260,7 @@ struct SearchView: View {
|
||||
#if os(iOS)
|
||||
accounts.app.supportsSearchFilters || favorites.isEnabled ? .bottomBar : .automatic
|
||||
#else
|
||||
.automatic
|
||||
.automatic
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -94,8 +94,12 @@ struct AccountForm: View {
|
||||
}
|
||||
|
||||
@ViewBuilder var validationStatus: some View {
|
||||
if !username.isEmpty && !password.isEmpty {
|
||||
Section {
|
||||
Section {
|
||||
if username.isEmpty || password.isEmpty {
|
||||
Text("Enter account credentials to connect...")
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.foregroundColor(.secondary)
|
||||
} else {
|
||||
AccountValidationStatus(
|
||||
app: .constant(instance.app),
|
||||
isValid: $isValid,
|
||||
|
||||
@@ -99,8 +99,12 @@ struct InstanceForm: View {
|
||||
}
|
||||
|
||||
@ViewBuilder var validationStatus: some View {
|
||||
if !url.isEmpty {
|
||||
Section {
|
||||
Section {
|
||||
if url.isEmpty {
|
||||
Text("Enter location address to connect...")
|
||||
.frame(maxWidth: .infinity, alignment: .leading)
|
||||
.foregroundColor(.secondary)
|
||||
} else {
|
||||
AccountValidationStatus(
|
||||
app: $app,
|
||||
isValid: $isValid,
|
||||
|
||||
@@ -73,7 +73,7 @@ struct PlayerControlsSettings: View {
|
||||
}
|
||||
#endif
|
||||
|
||||
Section(header: SettingsHeader(text: "Seeking"), footer: seekingGestureSection) {
|
||||
Section(header: SettingsHeader(text: "Seeking".localized()), footer: seekingGestureSection) {
|
||||
systemControlsCommandsPicker
|
||||
|
||||
seekingSection
|
||||
@@ -103,13 +103,13 @@ struct PlayerControlsSettings: View {
|
||||
}
|
||||
|
||||
var controlsButtonsSection: some View {
|
||||
Section(header: SettingsHeader(text: "Controls Buttons")) {
|
||||
Section(header: SettingsHeader(text: "Controls Buttons".localized())) {
|
||||
controlButtonToggles
|
||||
}
|
||||
}
|
||||
|
||||
@ViewBuilder var actionsButtonsSection: some View {
|
||||
Section(header: SettingsHeader(text: "Actions Buttons")) {
|
||||
Section(header: SettingsHeader(text: "Actions Buttons".localized())) {
|
||||
actionButtonToggles
|
||||
}
|
||||
}
|
||||
@@ -206,25 +206,26 @@ struct PlayerControlsSettings: View {
|
||||
|
||||
private func seekingDurationSetting(_ name: String, _ value: Binding<String>) -> some View {
|
||||
HStack {
|
||||
Text(name)
|
||||
Text(name.localized())
|
||||
.frame(minWidth: 140, alignment: .leading)
|
||||
Spacer()
|
||||
|
||||
HStack {
|
||||
#if !os(tvOS)
|
||||
Label("Plus", systemImage: "plus")
|
||||
Label("Minus", systemImage: "minus")
|
||||
.imageScale(.large)
|
||||
.labelStyle(.iconOnly)
|
||||
.padding(7)
|
||||
.foregroundColor(.accentColor)
|
||||
.accessibilityAddTraits(.isButton)
|
||||
#if os(iOS)
|
||||
.frame(minHeight: 35)
|
||||
.background(RoundedRectangle(cornerRadius: 4).strokeBorder(lineWidth: 1).foregroundColor(.accentColor))
|
||||
#endif
|
||||
.contentShape(Rectangle())
|
||||
.onTapGesture {
|
||||
var intValue = Int(value.wrappedValue) ?? 10
|
||||
intValue += 5
|
||||
intValue -= 5
|
||||
if intValue <= 0 {
|
||||
intValue = 5
|
||||
}
|
||||
@@ -248,20 +249,19 @@ struct PlayerControlsSettings: View {
|
||||
#endif
|
||||
|
||||
#if !os(tvOS)
|
||||
Label("Minus", systemImage: "minus")
|
||||
Label("Plus", systemImage: "plus")
|
||||
.imageScale(.large)
|
||||
.labelStyle(.iconOnly)
|
||||
.padding(7)
|
||||
.foregroundColor(.accentColor)
|
||||
.accessibilityAddTraits(.isButton)
|
||||
#if os(iOS)
|
||||
.frame(minHeight: 35)
|
||||
.background(RoundedRectangle(cornerRadius: 4).strokeBorder(lineWidth: 1).foregroundColor(.accentColor))
|
||||
#endif
|
||||
.contentShape(Rectangle())
|
||||
.onTapGesture {
|
||||
var intValue = Int(value.wrappedValue) ?? 10
|
||||
intValue -= 5
|
||||
intValue += 5
|
||||
if intValue <= 0 {
|
||||
intValue = 5
|
||||
}
|
||||
|
||||
@@ -8,6 +8,9 @@ struct PlayerSettings: View {
|
||||
@Default(.playerSidebar) private var playerSidebar
|
||||
|
||||
@Default(.showKeywords) private var showKeywords
|
||||
#if !os(tvOS)
|
||||
@Default(.showScrollToTopInComments) private var showScrollToTopInComments
|
||||
#endif
|
||||
@Default(.expandVideoDescription) private var expandVideoDescription
|
||||
@Default(.pauseOnHidingPlayer) private var pauseOnHidingPlayer
|
||||
#if os(iOS)
|
||||
@@ -86,6 +89,11 @@ struct PlayerSettings: View {
|
||||
|
||||
if !accounts.isEmpty {
|
||||
keywordsToggle
|
||||
|
||||
#if !os(tvOS)
|
||||
showScrollToTopInCommentsToggle
|
||||
#endif
|
||||
|
||||
#if !os(tvOS)
|
||||
expandVideoDescriptionToggle
|
||||
#endif
|
||||
@@ -160,6 +168,12 @@ struct PlayerSettings: View {
|
||||
.modifier(SettingsPickerModifier())
|
||||
}
|
||||
|
||||
#if !os(tvOS)
|
||||
private var showScrollToTopInCommentsToggle: some View {
|
||||
Toggle("Show scroll to top button in comments", isOn: $showScrollToTopInComments)
|
||||
}
|
||||
#endif
|
||||
|
||||
private var keywordsToggle: some View {
|
||||
Toggle("Show keywords", isOn: $showKeywords)
|
||||
}
|
||||
|
||||
@@ -243,7 +243,7 @@ struct SettingsView: View {
|
||||
private var windowHeight: Double {
|
||||
switch selection {
|
||||
case .browsing:
|
||||
return 840
|
||||
return 880
|
||||
case .player:
|
||||
return 450
|
||||
case .controls:
|
||||
|
||||
@@ -79,7 +79,7 @@ struct TrendingView: View {
|
||||
TrendingCountry(selectedCountry: $country)
|
||||
}
|
||||
#else
|
||||
.sheet(isPresented: $presentingCountrySelection) {
|
||||
.sheet(isPresented: $presentingCountrySelection) {
|
||||
TrendingCountry(selectedCountry: $country)
|
||||
#if os(macOS)
|
||||
.frame(minWidth: 400, minHeight: 400)
|
||||
@@ -128,7 +128,7 @@ struct TrendingView: View {
|
||||
}
|
||||
}
|
||||
#else
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
resource.loadIfNeeded()?
|
||||
.onFailure { self.error = $0 }
|
||||
.onSuccess { _ in self.error = nil }
|
||||
|
||||
@@ -76,7 +76,7 @@ struct PopularView: View {
|
||||
}
|
||||
}
|
||||
#else
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
.onReceive(NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)) { _ in
|
||||
resource?.loadIfNeeded()?
|
||||
.onFailure { self.error = $0 }
|
||||
.onSuccess { _ in self.error = nil }
|
||||
|
||||
@@ -61,7 +61,7 @@ struct YatteeApp: App {
|
||||
}
|
||||
)
|
||||
#else
|
||||
.onReceive(
|
||||
.onReceive(
|
||||
NotificationCenter.default.publisher(for: UIApplication.willEnterForegroundNotification)
|
||||
) { _ in
|
||||
player.handleEnterForeground()
|
||||
|
||||
@@ -457,7 +457,7 @@
|
||||
"Video Details" = "تفاصيل الفيديو";
|
||||
"Clear Queue before opening" = "مسح قائمة الانتظار قبل الفتح";
|
||||
"Current: %@\n%@" = "الحالي: %@\n%@";
|
||||
"Thumbnails" = "الصور المصغرة";
|
||||
"Thumbnails" = "المعاينات";
|
||||
"Show Open Videos toolbar button" = "إظهار زر الفيديوهات المفتوحة في شريط الأدوات";
|
||||
"URL to Open" = "الرابط المراد فتحه";
|
||||
"Enter link to open" = "أدخل الرابط للفتح";
|
||||
@@ -502,3 +502,4 @@
|
||||
"System controls show buttons for %@" = "تعرض ضوابط النظام أزرارًا لـ %@";
|
||||
"Wiki" = "ويكي";
|
||||
"Sample Rate" = "";
|
||||
"Short videos: visible" = "مقاطع الفيديو القصيرة: مرئية";
|
||||
|
||||
@@ -540,3 +540,26 @@
|
||||
"Are you sure you want to clear cache?" = "Möchten Sie den Cache wirklich löschen?";
|
||||
"Single tap gesture" = "Einmalige Antippen-Geste";
|
||||
"Seeking" = "Suchend";
|
||||
"List" = "Liste";
|
||||
"Cells" = "Zellen";
|
||||
"Show Next in Queue" = "Nächste in Warteschlange anzeigen";
|
||||
"Next in Queue" = "Nächster in der Warteschlange";
|
||||
"Open channel" = "Kanal öffnen";
|
||||
"Inspector" = "Inspektor";
|
||||
"Open video description expanded" = "Videobeschreibung öffnen erweitert";
|
||||
"Mark all as unwatched" = "Alle als ungesehen markieren";
|
||||
"Mark all as watched" = "Alle als gesehen markieren";
|
||||
"Queue - shuffled" = "Warteschlange - gemischt";
|
||||
"Playback Settings" = "Wiedergabeeinstellungen";
|
||||
"Replay" = "Wiederholung";
|
||||
"Loop one" = "Einmal schleifen";
|
||||
"Autoplay next" = "Nächstes Element automatisch abspielen";
|
||||
"Stream" = "Stream";
|
||||
"Show toggle watch status button" = "Umschalttaste Überwachungsstatus anzeigen";
|
||||
"Toggle size" = "Größe umschalten";
|
||||
"Toggle player" = "Player umschalten";
|
||||
"Do nothing" = "Nichts tun";
|
||||
"Feed" = "Feed";
|
||||
"Fullscreen" = "Vollbildmodus";
|
||||
"Lock" = "Sperre";
|
||||
"Description" = "Beschreibung";
|
||||
|
||||
@@ -561,3 +561,7 @@
|
||||
"Loop one" = "Loop one";
|
||||
"Autoplay next" = "Autoplay next";
|
||||
"Stream" = "Stream";
|
||||
"Show scroll to top button in comments" = "Show scroll to top button in comments";
|
||||
"Enter account credentials to connect..." = "Enter account credentials to connect...";
|
||||
"Enter location address to connect..." = "Enter location address to connect...";
|
||||
"Seek" = "Seek";
|
||||
|
||||
@@ -1,23 +1,23 @@
|
||||
|
||||
|
||||
" subscribers" = " abonnés";
|
||||
"Add Location..." = "Ajouter un emplacement…";
|
||||
"Add Location..." = "Ajouter une instance…";
|
||||
"Add profile..." = "Ajouter un profil…";
|
||||
"Add Quality Profile" = "Ajouter un profil de qualité";
|
||||
"Delete" = "Supprimer";
|
||||
"%@ Playlist" = "%@ liste de lecture";
|
||||
"%@ Playlist" = "Liste de lecture %@";
|
||||
"%@ subscribers" = "%@ abonnés";
|
||||
"%@ Channel" = "%@ chaîne";
|
||||
"10 seconds forwards/backwards" = "10 secondes en avant/en arrière";
|
||||
"%@ Channel" = "Chaîne %@";
|
||||
"10 seconds forwards/backwards" = "10 secondes en avant/arrière";
|
||||
"Accounts" = "Comptes";
|
||||
"%lld videos" = "%lld vidéos";
|
||||
"Accounts are not supported for the application of this instance" = "Les comptes ne sont pas pris en charge pour l'application de cette instance";
|
||||
"Add to Playlist" = "Ajouter à la liste de lecture";
|
||||
"Add to Favorites" = "Ajouter aux Favoris";
|
||||
"Add to Favorites" = "Ajouter aux favoris";
|
||||
"Add Account" = "Ajouter un compte";
|
||||
"Add to %@" = "Ajouter à %@";
|
||||
"Are you sure you want to clear search history?" = "Êtes-vous sûr de vouloir effacer l'historique des recherches ?";
|
||||
"Add Location" = "Ajouter un emplacement";
|
||||
"Add Location" = "Ajouter une instance";
|
||||
"Add to Playlist..." = "Ajouter à la liste de lecture…";
|
||||
"Add Account..." = "Ajouter un compte…";
|
||||
"Advanced" = "Avancé";
|
||||
@@ -63,7 +63,7 @@
|
||||
"Large" = "Grand";
|
||||
"LIVE" = "DIRECT";
|
||||
"Loading..." = "Chargement…";
|
||||
"Locations" = "Emplacements";
|
||||
"Locations" = "Instances";
|
||||
|
||||
/* Video duration filter in search */
|
||||
"Long" = "Longues";
|
||||
@@ -87,12 +87,12 @@
|
||||
"Player" = "Lecteur";
|
||||
"Playlist" = "Liste de lecture";
|
||||
"Playlist \"%@\" will be deleted.\nIt cannot be reverted." = "La liste de lecture « %@ » sera supprimée.\nIl n'est pas possible de revenir en arrière.";
|
||||
"Popular" = "Populaire";
|
||||
"Popular" = "Tendances";
|
||||
"Preferred Formats" = "Formats préférés";
|
||||
"Profiles" = "Profils";
|
||||
"Promoting a product or service that is directly related to the creator themselves. This usually includes merchandise or promotion of monetized platforms." = "La promotion d'un produit ou d'un service qui est directement lié au créateur lui-même. Il s'agit généralement de marchandises ou de la promotion de plateformes monétisées.";
|
||||
"Quality" = "Qualité";
|
||||
"Rate" = "Taux";
|
||||
"Rate" = "Vitesse";
|
||||
"Search history is empty" = "L'historique de recherche est vide";
|
||||
"Videos" = "Vidéos";
|
||||
|
||||
@@ -108,7 +108,7 @@
|
||||
"Unlisted" = "Non listée";
|
||||
"Current Playlist" = "Liste de lecture actuelle";
|
||||
"Now Playing" = "En lecture";
|
||||
"Current Location" = "Emplacement actuel";
|
||||
"Current Location" = "Instance actuelle";
|
||||
"Private" = "Privée";
|
||||
"Playback queue is empty" = "La file d'attente de lecture est vide";
|
||||
"Playing Next" = "Lecture suivante";
|
||||
@@ -133,7 +133,7 @@
|
||||
"Clear Search History" = "Effacer l'historique de recherche";
|
||||
"Clear Search History..." = "Effacer l'historique des recherches…";
|
||||
"Clear the queue" = "Effacer la file d'attente";
|
||||
"Connection failed" = "La connexion a échoué";
|
||||
"Connection failed" = "Échec de la connexion";
|
||||
"Comments" = "Commentaires";
|
||||
"Continue" = "Continuer";
|
||||
"Contributing" = "Contribuer";
|
||||
@@ -176,7 +176,7 @@
|
||||
"Next" = "Suivant";
|
||||
"Pause when entering background" = "Pause lors de l'entrée en arrière-plan";
|
||||
"Play All" = "Tout lire";
|
||||
"Quality Profile" = "Profil qualité";
|
||||
"Quality Profile" = "Profil de qualité";
|
||||
"Queue is empty" = "La file d'attente est vide";
|
||||
|
||||
/* Video sort order in search */
|
||||
@@ -185,7 +185,7 @@
|
||||
"Picture in Picture" = "Image dans l'image";
|
||||
"Play" = "Lecture";
|
||||
"Play in PiP" = "Lire en image dans l'image";
|
||||
"Play Last" = "Lire la dernière";
|
||||
"Play Last" = "Ajouter à la fin de la file d’attente";
|
||||
"Name" = "Nom";
|
||||
"Password" = "Mot de passe";
|
||||
"Playlists" = "Listes de lecture";
|
||||
@@ -230,7 +230,7 @@
|
||||
"Sort: %@" = "Trier : %@";
|
||||
"Subscribe" = "S'abonner";
|
||||
"Sort" = "Trier";
|
||||
"It can be changed later in settings. You can use your own locations too." = "Peut être modifié ultérieurement dans les paramètres. Vous pouvez également utiliser vos propres emplacements.";
|
||||
"It can be changed later in settings. You can use your own locations too." = "Peut être modifié ultérieurement dans les paramètres. Vous pouvez également utiliser vos propres instances.";
|
||||
"For videos which feature music as the primary content." = "Pour les vidéos qui n'utilisent que la musique comme contenu principal.";
|
||||
"Formats will be selected in order as listed.\nHLS is an adaptive format (resolution setting does not apply)." = "Les formats seront sélectionnés dans l'ordre de la liste.\nL'HLS est un format adaptatif (le paramètre de résolution ne s'applique pas).";
|
||||
"MPV Documentation" = "Documentation de MPV";
|
||||
@@ -243,27 +243,27 @@
|
||||
"Based on system color scheme" = "Basé sur le thème système";
|
||||
"Battery" = "Batterie";
|
||||
"Blue" = "Bleu";
|
||||
"Browsing" = "Naviguer";
|
||||
"Browsing" = "Navigation";
|
||||
"Buffering stream..." = "Mise en tampon du flux...";
|
||||
"Bugs and great feature ideas can be sent to the GitHub issues tracker. " = "Les bugs ainsi que des idées de fonctionnalités peuvent être envoyés sur GitHub. ";
|
||||
"Close PiP and open player when application enters foreground" = "Ferme l'IDI et ouvre le lecteur vidéo lorsque l'application passe au premier plan";
|
||||
"Close PiP when player is opened" = "Ferme l'IDI can le lecteur vidéo est ouvert";
|
||||
"Close PiP when starting playing other video" = "Ferme l'IDI quand une autre vidéo est commencée";
|
||||
"Close player when closing video" = "Ferme le lecteur quand la vidéo est arrêtée";
|
||||
"Close player when starting PiP" = "Ferme le lecteur lors que le mode PiP est lancé";
|
||||
"Close video after playing last in the queue" = "Ferme la vidéo après avoir lu la dernière de la file d'attente";
|
||||
"Bugs and great feature ideas can be sent to the GitHub issues tracker. " = "Les bugs et les idées de fonctionnalités peuvent être envoyés via GitHub. ";
|
||||
"Close PiP and open player when application enters foreground" = "Ferme l'IDI et ouvre le lecteur lorsque l'application passe au premier plan";
|
||||
"Close PiP when player is opened" = "Ferme l'IDI lorsque le lecteur est ouvert";
|
||||
"Close PiP when starting playing other video" = "Fermer l'IDI lors de la lecture d'une autre vidéo";
|
||||
"Close player when closing video" = "Fermer le lecteur lors de la fermeture de la vidéo";
|
||||
"Close player when starting PiP" = "Fermer le lecteur au lancement de l'IDI";
|
||||
"Close video after playing last in the queue" = "Fermer la vidéo après la dernière lecture de la file d'attente";
|
||||
"Controls" = "Contrôles";
|
||||
"Could not load locations manifest" = "Impossible de charger le manifeste des instances";
|
||||
"Custom Locations" = "Instances personalisées";
|
||||
"Custom Locations" = "Instances personnalisées";
|
||||
|
||||
/* Video sort order in search */
|
||||
"Date" = "Date";
|
||||
"Decreased opacity" = "Opacité diminuée";
|
||||
"Discord Server" = "Serveur Discord";
|
||||
"Discussions take place in Discord and Matrix. It's a good spot for general questions." = "Les discussions ont lieu sur Discord et Matrix. Ce sont de bons endroits pour poser des questions généraliste.";
|
||||
"Discussions take place in Discord and Matrix. It's a good spot for general questions." = "Les discussions ont lieu sur Discord et Matrix. Ce sont de bons endroits pour poser des questions génériques.";
|
||||
"Don't use public locations" = "Ne pas utiliser d'instances publiques";
|
||||
"Enable Return YouTube Dislike" = "Activer le retour du bouton DisLike de Youtube";
|
||||
"Enter fullscreen in landscape" = "Entrer en mode plein écran lors de la rotation en mode paysage";
|
||||
"Enable Return YouTube Dislike" = "Activer Return YouTube Dislike";
|
||||
"Enter fullscreen in landscape" = "Entrer en plein écran en mode paysage";
|
||||
"Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)." = "Rappel d'aimer la vidéo, de s'abonner ou d'intéragir avec le créateur sur une plateforme gratuite ou payante.";
|
||||
"Frontend URL" = "URL frontale";
|
||||
"Public Locations" = "Instances publiques";
|
||||
@@ -286,7 +286,7 @@
|
||||
"Lock portrait mode" = "Verrouille l'orientation en mode portrait";
|
||||
"Matrix Channel" = "Salon Matrix";
|
||||
"Only when signed in" = "Uniquement lorsque vous êtes connecté";
|
||||
"Opening audio stream..." = "Ouvrir le flux audio…";
|
||||
"Opening audio stream..." = "Ouverture du flux audio…";
|
||||
"Orientation" = "Orientation";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
@@ -313,9 +313,9 @@
|
||||
"unknown" = "inconnu";
|
||||
"This information will be processed only on your device and used to connect you to the server in the specified country." = "Ces informations sont traitées uniquement sur votre appareil et utilisées pour vous connecter au serveur dans un pays spécifique.";
|
||||
"Share..." = "Partager…";
|
||||
"Restore default profiles..." = "Restaurer le profile par défaut…";
|
||||
"Restore default profiles..." = "Rétablir les profils par défaut...";
|
||||
"Reset watched status when playing again" = "Réinitialiser le status de visionnage lors d'une nouvelle lecture";
|
||||
"Share %@ link" = "Partager %@ lien";
|
||||
"Share %@ link" = "Partager le lien %@";
|
||||
"Show anonymous accounts" = "Afficher les comptes anonymes";
|
||||
"Show channel name" = "Afficher le nom de la chaine";
|
||||
"Show history" = "Afficher l'historique";
|
||||
@@ -338,14 +338,14 @@
|
||||
"Round corners" = "Coins arrondis";
|
||||
"Seek with horizontal swipe on video" = "Rechercher avec un glissement horizontal sur la vidéo";
|
||||
"Settings" = "Paramètres";
|
||||
"Share %@ link with time" = "Partager %@ lien avec le temps";
|
||||
"Share %@ link with time" = "Partager le lien %@ avec le temps";
|
||||
"Show account username" = "Afficher le nom d'utilisateur";
|
||||
"Show sidebar when space permits" = "Afficher la barre du côté quand l'espace le permet";
|
||||
"Show video length" = "Afficher la durée de la vidéo";
|
||||
"Shuffle" = "Aléatoire";
|
||||
"Shuffle All" = "Tout en aléatoire";
|
||||
"Could not refresh Subscriptions" = "Impossible de rafraichir les abonnements";
|
||||
"Increase rate" = "Augmenter le taux";
|
||||
"Increase rate" = "Augmenter la vitesse";
|
||||
"Issues Tracker" = "Suivi de problèmes";
|
||||
"You need to select an account\nto access %@ section" = "Vous avez besoin de sélectionner un compte\npour accéder à la section %@";
|
||||
"You can use automatic profile selection based on current device status or switch it in video playback settings controls." = "Vous pouvez utiliser une sélection automatique de profil basé sur le statut actuel de l'appareil ou le changer dans les paramètre de lecture vidéo.";
|
||||
@@ -379,12 +379,12 @@
|
||||
"For custom locations you can configure Frontend URL in Locations settings" = "Pour des instances personnalisées vous pouvez configurer l'URL frontale dans les paramètres d'instance";
|
||||
"This URL could not be opened" = "Cette URL ne peut pas être ouverte";
|
||||
"Could not open channel" = "Cette chaîne ne peut pas être ouverte";
|
||||
"Could not refresh Popular" = "Populaire ne peut pas être rafraîchi";
|
||||
"Could not refresh Popular" = "Impossible d'actualiser les tendances";
|
||||
"Could not create share link" = "Impossible de créer un lien de partage";
|
||||
"Could not load video" = "Impossible de charger la vidéo";
|
||||
"If you want this app to be available in your language, join translation project." = "Si vous voulez que cette application soit disponible dans votre langue, rejoignez le projet de traduction.";
|
||||
"Translations" = "Traductions";
|
||||
"Decrease rate" = "Diminuer le taux";
|
||||
"Decrease rate" = "Diminuer la vitesse";
|
||||
"Finding something to play..." = "Trouver quelque chose à jouer…";
|
||||
"That's nice to hear. It is fun to deliver apps other people want to use. You can consider donating to the project or help by contributing to new features development." = "Cela fait plaisir à entendre. C'est amusant de délivrer des apps que d'autres personnes veulent utiliser. Vous pouvez considérer faire un don au projet ou aider en contribuant au développement de nouvelles fonctionnalités.";
|
||||
"Typically near or at the end of the video when the credits pop up and/or endcards are shown." = "Typiquement proche de la fin de la vidéo, quand les crédits ou les cartes sont montré.";
|
||||
@@ -408,7 +408,7 @@
|
||||
"Could not extract video ID" = "Impossible d'extraire l'ID de la vidéo";
|
||||
"This video could not be opened" = "Cette vidéo ne peut pas être ouverte";
|
||||
"Could not extract playlist ID" = "Impossible d'extraire l'ID de la liste de lecture";
|
||||
"No locations available at the moment" = "Aucune instances disponible pour le moment";
|
||||
"No locations available at the moment" = "Aucune instance disponible pour le moment";
|
||||
"Could not refresh Playlists" = "Impossible de rafraîchir les listes de lectures";
|
||||
|
||||
/* Video date filter in search
|
||||
@@ -424,7 +424,7 @@
|
||||
"Milestones" = "Étapes";
|
||||
|
||||
/* Loading stream OSD */
|
||||
"Opening %@ stream..." = "Ouvrir le flux %@ …";
|
||||
"Opening %@ stream..." = "Ouverture du flux %@…";
|
||||
"Regular size" = "Taille normale";
|
||||
"Regular Size" = "Taille Normale";
|
||||
"Related" = "En relation";
|
||||
@@ -438,14 +438,14 @@
|
||||
"Buttons labels" = "Étiquettes des boutons";
|
||||
"Open" = "Ouvrir";
|
||||
"Only for local files and URLs" = "Uniquement pour les fichiers locaux et les URLs";
|
||||
"Share" = "Partage";
|
||||
"Share" = "Partager";
|
||||
"Enter links to open, one per line" = "Entrer les liens à ouvrir, un par ligne";
|
||||
"Always" = "Toujours";
|
||||
"Channels" = "Chaînes";
|
||||
"Open Files" = "Ouvrir les fichiers";
|
||||
"Recent History" = "Historique récent";
|
||||
"Show Favorites" = "Afficher les favoris";
|
||||
"Show Home" = "Afficher l'Accueil";
|
||||
"Show Home" = "Afficher l'accueil";
|
||||
"Home" = "Accueil";
|
||||
"Pages toolbar position" = "Position de la barre d’outils sur les pages";
|
||||
"Show Documents" = "Afficher les documents";
|
||||
@@ -454,51 +454,112 @@
|
||||
"Video Details" = "Details des vidéos";
|
||||
"Reload manifest" = "Recharger le manifest";
|
||||
"Clear Queue before opening" = "Effacer la file d’attente avant d’ouvrir";
|
||||
"Edit Favorites…" = "Éditer les favoris";
|
||||
"Edit Favorites…" = "Éditer les favoris…";
|
||||
"Pages buttons" = "Boutons des pages";
|
||||
"Could not open Files" = "Impossible d’ouvrir les fichiers";
|
||||
"Paste" = "Coller";
|
||||
"Open Videos" = "Ouvrir les vidéos";
|
||||
"Playback Mode" = "Mode Playback";
|
||||
"Playback Mode" = "Mode de lecture";
|
||||
"Add" = "Ajouter";
|
||||
"Hide" = "Cacher";
|
||||
"Size" = "";
|
||||
"Address" = "";
|
||||
"Could not delete document" = "";
|
||||
"Could not find any links to open in your clipboard" = "";
|
||||
"Center" = "";
|
||||
"Locations Manifest" = "";
|
||||
"Actions buttons" = "";
|
||||
"Sample Rate" = "";
|
||||
"FPS" = "";
|
||||
"Remove…" = "";
|
||||
"Live Streams" = "";
|
||||
"\"%@\" will be irreversibly removed from this device." = "";
|
||||
"Remove Location" = "";
|
||||
"Open Video" = "";
|
||||
"Video actions buttons" = "";
|
||||
"Documents" = "";
|
||||
"Show Open Videos toolbar button" = "";
|
||||
"File" = "";
|
||||
"Are you sure you want to remove this document?" = "";
|
||||
"Left" = "";
|
||||
"Shorts" = "";
|
||||
"Copy%@link" = "";
|
||||
"Verified" = "";
|
||||
"Show sidebar" = "";
|
||||
"Driver" = "";
|
||||
"Show Open Videos quick actions" = "";
|
||||
"Format" = "";
|
||||
"Are you sure you want to remove %@ location?" = "";
|
||||
"Show only icons" = "";
|
||||
"Audio" = "";
|
||||
"Size" = "Taille";
|
||||
"Address" = "Adresse";
|
||||
"Could not delete document" = "Impossible de supprimer le document";
|
||||
"Could not find any links to open in your clipboard" = "Aucun lien à ouvrir n'a pu être trouvé dans votre presse-papiers";
|
||||
"Center" = "Centre";
|
||||
"Locations Manifest" = "Manifeste de l'instance";
|
||||
"Actions buttons" = "Boutons d’action";
|
||||
"Sample Rate" = "Taux d'échantillonnage";
|
||||
"FPS" = "FPS";
|
||||
"Remove…" = "Supprimer…";
|
||||
"Live Streams" = "Diffusions en direct";
|
||||
"\"%@\" will be irreversibly removed from this device." = "\"%@\" sera irréversiblement supprimé de cet appareil.";
|
||||
"Remove Location" = "Supprimer l'instance";
|
||||
"Open Video" = "Ouvrir la vidéo";
|
||||
"Video actions buttons" = "Boutons d'action vidéo";
|
||||
"Documents" = "Documents";
|
||||
"Show Open Videos toolbar button" = "Afficher le bouton de la barre d'outils Ouvrir les vidéos";
|
||||
"File" = "Fichier";
|
||||
"Are you sure you want to remove this document?" = "Êtes-vous sûr de vouloir supprimer ce document ?";
|
||||
"Left" = "Gauche";
|
||||
"Shorts" = "Shorts";
|
||||
"Copy%@link" = "Copier le lien %@";
|
||||
"Verified" = "Vérifiée";
|
||||
"Show sidebar" = "Afficher la barre latérale";
|
||||
"Driver" = "Driver";
|
||||
"Show Open Videos quick actions" = "Actions rapides Afficher les vidéos ouvertes";
|
||||
"Format" = "Format";
|
||||
"Are you sure you want to remove %@ location?" = "Êtes-vous sûr de vouloir supprimer l'instance %@ ?";
|
||||
"Show only icons" = "Afficher seulement les icônes";
|
||||
"Audio" = "Audio";
|
||||
"Share files from Finder on a Mac\nor iTunes on Windows" = "Partager des fichiers depuis Finder sur Mac\nou iTunes sur Windows";
|
||||
"Channel" = "";
|
||||
"Inspector visibility" = "";
|
||||
"Video" = "";
|
||||
"Right" = "";
|
||||
"Show icons and text when space permits" = "";
|
||||
"Codec" = "";
|
||||
"Default Profile" = "";
|
||||
"Playback history is empty" = "";
|
||||
"Share%@link" = "";
|
||||
"Channel" = "Chaîne";
|
||||
"Inspector visibility" = "Visibilité de l'inspecteur";
|
||||
"Video" = "Vidéo";
|
||||
"Right" = "Droite";
|
||||
"Show icons and text when space permits" = "Afficher les icônes et le texte lorsque l’espace le permet";
|
||||
"Codec" = "Codec";
|
||||
"Default Profile" = "Profil par défaut";
|
||||
"Playback history is empty" = "L'historique de lecture est vide";
|
||||
"Share%@link" = "Partager le lien %@";
|
||||
"Clear all" = "Tout effacer";
|
||||
"Hide player" = "Masquer le lecteur";
|
||||
"Close video" = "Fermer la vidéo";
|
||||
"Show cache status" = "Montrer l'état du cache";
|
||||
"Cache" = "Cache";
|
||||
"Maximum feed items" = "Nombres d'éléments maximum du flux";
|
||||
"Open channels with description expanded" = "Ouvrir les chaînes avec la description complète";
|
||||
"Are you sure you want to clear cache?" = "Voulez-vous vraiment vider le cache ?";
|
||||
"Right click channel thumbnail to open context menu with more actions" = "Effectuez un clic droit sur la miniature d'une chaîne pour ouvrir un menu contextuel avec plus d'actions";
|
||||
"Play next item" = "Jouer le prochain élément";
|
||||
"Lock orientation" = "Verrouiller l'orientation";
|
||||
"Subscribe/Unsubscribe" = "S'abonner/Se désabonner";
|
||||
"Total size: %@" = "Taille totale : %@";
|
||||
"Inspector" = "Inspecteur";
|
||||
"Open channel" = "Ouvrir la chaîne";
|
||||
"Feed" = "Flux";
|
||||
"Music Mode" = "Mode Musique";
|
||||
"Gesture: fowards" = "Geste : en avant";
|
||||
"Short videos: visible" = "Shorts : visible";
|
||||
"Mark channel feed as watched" = "Marquer le flux de chaînes comme regardé";
|
||||
"Short videos: hidden" = "Shorts : caché";
|
||||
"Mark channel feed as unwatched" = "Marquer le flux de chaînes comme non regardé";
|
||||
"Play all unwatched" = "Lire toutes les vidéos non visionnées";
|
||||
"Player Bar" = "Barre de lecture";
|
||||
"Double tap gesture" = "Geste de double pression";
|
||||
"Always show controls buttons" = "Toujours afficher les boutons de contrôle";
|
||||
"Tap and hold channel thumbnail to open context menu with more actions" = "Touchez et maintenez la miniature de la chaîne pour ouvrir le menu contextuel avec plus d'actions";
|
||||
"Gesture settings control skipping interval for double tap gesture on left/right side of the player. Changing system controls settings requires restart." = "Les paramètres des gestes contrôlent l'intervalle de saut pour les gestes de double pression sur le côté gauche/droit du lecteur. La modification des paramètres de contrôle du système nécessite un redémarrage.";
|
||||
"Gesture settings control skipping interval for double click on left/right side of the player. Changing system controls settings requires restart." = "Les paramètres des gestes contrôlent l'intervalle de saut pour le double clic sur le côté gauche/droit du lecteur. La modification des paramètres de contrôle du système nécessite un redémarrage.";
|
||||
"Gesture settings control skipping interval for remote arrow buttons (for 2nd generation Siri Remote or newer). Changing system controls settings requires restart." = "Les paramètres des gestes contrôlent l'intervalle de saut pour les boutons fléchés de la télécommande (pour la télécommande Siri de 2e génération ou plus récente). La modification des paramètres de contrôle du système nécessite un redémarrage.";
|
||||
"Open expanded" = "Ouvrir en grand";
|
||||
"Single tap gesture" = "Geste de simple pression";
|
||||
"Maximum width expanded" = "Largeur maximale étendue";
|
||||
"Show unwatched feed badges" = "Afficher les badges de flux non regardés";
|
||||
"Seeking" = "Recherche";
|
||||
"Controls Buttons" = "Boutons de contrôle";
|
||||
"System controls" = "Contrôles système";
|
||||
"Controls button: backwards" = "Bouton de contrôle : en arrière";
|
||||
"Controls button: forwards" = "Bouton de contrôle : en avant";
|
||||
"Gesture: backwards" = "Geste : en arrière";
|
||||
"Actions Buttons" = "Boutons d’action";
|
||||
"List" = "Liste";
|
||||
"Cells" = "Tuiles";
|
||||
"Show Next in Queue" = "Afficher la suivante dans la file";
|
||||
"Next in Queue" = "Suivante dans la file";
|
||||
"Do nothing" = "Ne rien faire";
|
||||
"Open video description expanded" = "Ouvrir la description de la vidéo";
|
||||
"Mark all as unwatched" = "Marquer toutes comme non regardées";
|
||||
"Mark all as watched" = "Marquer toutes comme regardées";
|
||||
"Queue - shuffled" = "File d'attente - mélangée";
|
||||
"Replay" = "Replay";
|
||||
"Description" = "Description";
|
||||
"Loop one" = "En boucle";
|
||||
"Playback Settings" = "Paramètres de lecture";
|
||||
"Autoplay next" = "Lecture automatique";
|
||||
"Stream" = "Flux";
|
||||
"Show toggle watch status button" = "Afficher le bouton d'état de visionnage";
|
||||
"Toggle size" = "Taille de bouton";
|
||||
"Toggle player" = "Activer le lecteur";
|
||||
"Fullscreen" = "Plein écran";
|
||||
"Lock" = "Verrouiller";
|
||||
|
||||
@@ -3,23 +3,23 @@
|
||||
"Add to Playlist" = "Aggiungi a playlist";
|
||||
"Always use AVPlayer for live videos" = "Usa sempre AVPlayer per i video dal vivo";
|
||||
"Are you sure you want to clear history of watched videos?" = "Vuoi eliminare la cronologia dei video guardati?";
|
||||
"Based on system color scheme" = "Sistema";
|
||||
"Based on system color scheme" = "Adatta al sistema";
|
||||
"Blue" = "Blu";
|
||||
"Category" = "Categoria";
|
||||
"Cancel" = "Annulla";
|
||||
"Autoplaying Next" = "Riproduzione automatica del video successivo";
|
||||
"Buffering stream..." = "Preparazione stream...";
|
||||
"Autoplaying Next" = "Riproduzione automatica video successivo";
|
||||
"Buffering stream..." = "Caricamento stream...";
|
||||
"Are you sure you want to delete playlist?" = "Vuoi eliminare la playlist?";
|
||||
"Badge" = "Indicatore";
|
||||
"Are you sure you want to unsubscribe from %@?" = "Vuoi cancellare l'iscrizione a %@?";
|
||||
"Backend" = "Backend";
|
||||
"Are you sure you want to restore default quality profiles?" = "Vuoi ripristinare i profili di qualità predefiniti?";
|
||||
"Are you sure you want to restore default quality profiles?" = "Vuoi ripristinare i profili qualità predefiniti?";
|
||||
"Automatic" = "Automatico";
|
||||
"Chapters" = "Capitoli";
|
||||
"Badge & Decreased opacity" = "Indicatore e trasparenza";
|
||||
"Badge color" = "Colore dell'indicatore";
|
||||
"Badge color" = "Colore indicatore";
|
||||
"Browsing" = "Navigazione";
|
||||
"Bugs and great feature ideas can be sent to the GitHub issues tracker. " = "Errori e suggerimenti possono essere inviati su GitHub. ";
|
||||
"Bugs and great feature ideas can be sent to the GitHub issues tracker. " = "Errori e idee per nuove funzioni possono essere inviati su GitHub. ";
|
||||
"Captions" = "Sottotitoli";
|
||||
"Clear All" = "Cancella tutto";
|
||||
"Contributing" = "Contribuisci";
|
||||
@@ -28,26 +28,26 @@
|
||||
"Clear" = "Cancella";
|
||||
"Cellular" = "Dati cellulare";
|
||||
"Charging" = "In carica";
|
||||
"Enable Return YouTube Dislike" = "Attiva Return YouTube Dislike";
|
||||
"Enable Return YouTube Dislike" = "Abilita Return YouTube Dislike";
|
||||
"Connected successfully (%@)" = "Connessione riuscita (%@)";
|
||||
"Clear All Recents" = "Cancella tutti i recenti";
|
||||
"Clear History" = "Cancella cronologia";
|
||||
"Clear Search History" = "Cancella cronologia delle ricerche";
|
||||
"Clear Search History..." = "Cancella cronologia delle ricerche...";
|
||||
"Decrease rate" = "Diminuisci";
|
||||
"Close PiP and open player when application enters foreground" = "Chiudi PiP e apri il video quando l'applicazione viene aperta";
|
||||
"Close PiP and open player when application enters foreground" = "Chiudi PiP e apri il video quando l'applicazione viene portata in primo piano";
|
||||
"Close PiP when player is opened" = "Chiudi PiP quando il riproduttore viene aperto";
|
||||
"Contact" = "Contatto";
|
||||
"Copy %@ link" = "Copia link %@";
|
||||
"Copy %@ link with time" = "Copia %@ link con tempo";
|
||||
"Could not load locations manifest" = "Impossibile caricare il manifesto della posizione";
|
||||
"Copy %@ link with time" = "Copia link %@ con tempo";
|
||||
"Could not load locations manifest" = "Impossibile caricare manifesto delle posizioni";
|
||||
"Decreased opacity" = "Trasparenza";
|
||||
"Favorites" = "Preferiti";
|
||||
"Filter" = "Filtri";
|
||||
"Close PiP when starting playing other video" = "Chiudi PiP quando viene aperto un altro video";
|
||||
"Filter" = "Filtro";
|
||||
"Close PiP when starting playing other video" = "Chiudi PiP quando viene riprodotto un altro video";
|
||||
"Continue" = "Continua";
|
||||
"Comments" = "Commenti";
|
||||
"Country Name or Code" = "Nome o codice del Paese";
|
||||
"Country Name or Code" = "Nome o codice del paese";
|
||||
"Connection failed" = "Connessione fallita";
|
||||
"Continue from %@" = "Continua da %@";
|
||||
"Create Playlist" = "Crea playlist";
|
||||
@@ -60,31 +60,31 @@
|
||||
/* Video sort order in search */
|
||||
"Date" = "Data";
|
||||
"Delete" = "Elimina";
|
||||
"Discussions take place in Discord and Matrix. It's a good spot for general questions." = "Le discussioni hanno luogo su Discord e su Matrix. Sono dei buoni posti per fare domande.";
|
||||
"Discussions take place in Discord and Matrix. It's a good spot for general questions." = "Le discussioni hanno luogo su Discord e su Matrix. Sono posti adatti per domande generali.";
|
||||
"Duration" = "Durata";
|
||||
"Disabled" = "Disattivato";
|
||||
"Discord Server" = "Server Discord";
|
||||
"Enter fullscreen in landscape" = "Entra a schermo intero in orizzontale";
|
||||
"Filter: active" = "Filtri: attivi";
|
||||
"Enter fullscreen in landscape" = "Avvia schermo intero in orizzontale";
|
||||
"Filter: active" = "Filtro: attivo";
|
||||
"Edit" = "Modifica";
|
||||
"Done" = "Fatto";
|
||||
"Edit Quality Profile" = "Modifica profilo di qualità";
|
||||
"Edit Quality Profile" = "Modifica profilo qualità";
|
||||
"Error" = "Errore";
|
||||
"Edit..." = "Modifica...";
|
||||
"Enable logging" = "Attiva logging";
|
||||
"Enable logging" = "Attiva resoconto";
|
||||
"%@ Playlist" = "Playlist %@";
|
||||
"%@ subscribers" = "%@ iscritti";
|
||||
"10 seconds forwards/backwards" = "10 secondi avanti/indietro";
|
||||
"%lld videos" = "Video di %lld";
|
||||
"%lld videos" = "%lld video";
|
||||
"Accounts" = "Account";
|
||||
"Accounts are not supported for the application of this instance" = "Gli account non sono supportati in questa istanza";
|
||||
"Accounts are not supported for the application of this instance" = "Gli account non sono supportati per l'applicazione di questa istanza";
|
||||
"Add Account" = "Aggiungi account";
|
||||
"Add Account..." = "Aggiungi account...";
|
||||
"Add Location" = "Aggiungi posizione";
|
||||
"Add Location..." = "Aggiungi posizione...";
|
||||
"Add profile..." = "Aggiungi profilo...";
|
||||
"Add to %@" = "Aggiungi a %@";
|
||||
"Add Quality Profile" = "Aggiungi profilo di qualità";
|
||||
"Add Quality Profile" = "Aggiungi profilo qualità";
|
||||
"Add to Playlist..." = "Aggiungi a playlist...";
|
||||
"Advanced" = "Avanzate";
|
||||
|
||||
@@ -100,14 +100,14 @@
|
||||
"Button" = "Pulsante";
|
||||
"Clear the queue" = "Cancella la coda";
|
||||
"Close" = "Chiudi";
|
||||
"Close player when starting PiP" = "Chiudi il riproduttore quando viene aperto PiP";
|
||||
"Close Video" = "Chiudi il video";
|
||||
"Close video after playing last in the queue" = "Chiudi il video dopo aver riprodotto l'ultimo elemento della coda";
|
||||
"Error when accessing playlist" = "Impossibile accedere alla playlist";
|
||||
"Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)." = "Esortazioni a mettere like, iscriversi o interagire su qualsiasi piattaforma, a pagamento o gratuita (es. aprire un video).";
|
||||
"Close player when starting PiP" = "Chiudi il riproduttore quando si avvia PiP";
|
||||
"Close Video" = "Chiudi video";
|
||||
"Close video after playing last in the queue" = "Chiudi il video dopo aver riprodotto l'ultimo elemento in coda";
|
||||
"Error when accessing playlist" = "Errore nell'accesso alla playlist";
|
||||
"Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)." = "Esortazioni a mettere Mi piace, iscriversi o interagire con loro su qualsiasi piattaforma a pagamento o gratuita (es. aprire un video).";
|
||||
" subscribers" = " iscritti";
|
||||
"%@ Channel" = "Canale di %@";
|
||||
"Add to Favorites" = "Aggiungi ai preferiti";
|
||||
"%@ Channel" = "Canale %@";
|
||||
"Add to Favorites" = "Aggiungi a Preferiti";
|
||||
"Battery" = "Batteria";
|
||||
"Categories to Skip" = "Categorie da saltare";
|
||||
"Close player when closing video" = "Chiudi il riproduttore quando viene chiuso il video";
|
||||
@@ -116,18 +116,18 @@
|
||||
"Edit Playlist" = "Modifica playlist";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Intro" = "Introduzione";
|
||||
"Issues Tracker" = "Issue tracker";
|
||||
"Intro" = "Intro";
|
||||
"Issues Tracker" = "Issue Tracker";
|
||||
|
||||
/* Video duration filter in search */
|
||||
"Long" = "Lungo";
|
||||
"Lowest" = "Bassissima";
|
||||
"Lowest" = "Peggiore";
|
||||
"Low" = "Bassa";
|
||||
"Not available" = "Non disponibile";
|
||||
"Not Playing" = "Nessun video aperto";
|
||||
"Not Playing" = "Non in riproduzione";
|
||||
"Music" = "Musica";
|
||||
"Only when signed in" = "Solo se l'accesso è effettuato";
|
||||
"If you are reporting a bug, include all relevant details (especially: app version, used device and system version, steps to reproduce)." = "Se stai segnalando un bug, includi tutti i dettagli rilevanti (in particolare: versione dell'app, versione del dispositivo e del sistema operativo, come riprodurre il bug).";
|
||||
"If you are reporting a bug, include all relevant details (especially: app version, used device and system version, steps to reproduce)." = "Se stai segnalando un bug, includi tutti i dettagli rilevanti (in particolare: versione dell'app, dispositivo utilizzato, versione del sistema operativo e come riprodurre il bug).";
|
||||
"Increase rate" = "Aumenta velocità";
|
||||
"Instance of current account" = "Istanza dell'account attuale";
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
|
||||
/* Player controls layout size */
|
||||
"Large" = "Grandi";
|
||||
"Lock portrait mode" = "Modalità blocco orientamento orizzontale";
|
||||
"Lock portrait mode" = "Blocco orientamento verticale";
|
||||
"Mark as watched" = "Segna come guardato";
|
||||
"Mark video as watched after playing" = "Segna il video come guardato dopo la riproduzione";
|
||||
"Mark watched videos with" = "Segna come guardati i video con";
|
||||
@@ -149,17 +149,17 @@
|
||||
"Medium quality" = "Qualità media";
|
||||
"Milestones" = "Traguardi";
|
||||
"Movies" = "Film";
|
||||
"MPV Documentation" = "Documentazione di MPV";
|
||||
"MPV Documentation" = "Documentazione MPV";
|
||||
"Nothing" = "Niente";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Offtopic in Music Videos" = "Sezione non-musicale nei video musicali";
|
||||
"Offtopic in Music Videos" = "Sezione non musicale nei video musicali";
|
||||
"Open \"Playlists\" tab to create new one" = "Apri la sezione \"Playlist\" per crearne una nuova";
|
||||
"Open Settings" = "Apri le impostazioni";
|
||||
"Open Settings" = "Apri Impostazioni";
|
||||
|
||||
/* Loading stream OSD */
|
||||
"Opening %@ stream..." = "Apertura del flusso %@...";
|
||||
"Opening audio stream..." = "Apertura del flusso audio...";
|
||||
"Opening %@ stream..." = "Apertura stream %@...";
|
||||
"Opening audio stream..." = "Apertura stream audio...";
|
||||
"Orientation" = "Orientamento";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
@@ -167,17 +167,17 @@
|
||||
"Password" = "Password";
|
||||
"Pause" = "Pausa";
|
||||
"Info" = "Info";
|
||||
"LIVE" = "DAL VIVO";
|
||||
"LIVE" = "DIRETTA";
|
||||
|
||||
/* Loading stream OSD */
|
||||
"Loading streams..." = "Caricamento flussi...";
|
||||
"Loading streams..." = "Caricamento stream...";
|
||||
"Loading..." = "Caricamento...";
|
||||
"Locations" = "Posizioni";
|
||||
"Low quality" = "Qualità bassa";
|
||||
|
||||
/* Video date filter in search */
|
||||
"Month" = "Mese";
|
||||
"More info can be found in:" = "Ulteriori informazioni possono essere trovate qui:";
|
||||
"More info can be found in:" = "Per maggiori informazioni:";
|
||||
"Next" = "Successivo";
|
||||
"No description" = "Nessuna descrizione";
|
||||
"No Playlists" = "Nessuna playlist";
|
||||
@@ -185,42 +185,42 @@
|
||||
"Normal" = "Normale";
|
||||
"For videos which feature music as the primary content." = "Per video che hanno la musica come argomento principale.";
|
||||
"Finding something to play..." = "Trova qualcosa da guardare...";
|
||||
"Formats will be selected in order as listed.\nHLS is an adaptive format (resolution setting does not apply)." = "I formati saranno selezionati in ordine come elencato. \nHLS è un formato adattivo (le impostazioni di risoluzione non sono applicabili).";
|
||||
"Formats will be selected in order as listed.\nHLS is an adaptive format (resolution setting does not apply)." = "I formati saranno selezionati in ordine come elencato. \nHLS è un formato adattivo (l'impostazione di risoluzione non si applica).";
|
||||
"Name" = "Nome";
|
||||
"I want to ask a question" = "Voglio fare una domanda";
|
||||
"Large layout is not suitable for all devices and using it may cause controls not to fit on the screen." = "Il layout grande non è adatto a tutti i dispositivi e selezionarlo potrebbe rendere i controlli più grandi dello schermo.";
|
||||
"I want to ask a question" = "Ho una domanda";
|
||||
"Large layout is not suitable for all devices and using it may cause controls not to fit on the screen." = "Il layout grande non è adatto a tutti i dispositivi e selezionarlo potrebbe far uscire i controlli dallo schermo.";
|
||||
"New Playlist" = "Nuova playlist";
|
||||
|
||||
/* Player controls layout size */
|
||||
"Medium" = "Media";
|
||||
"Part of a video promoting a product or service not directly related to the creator. The creator will receive payment or compensation in the form of money or free products." = "Parte del video che promuove un prodotto o servizio non direttamente collegato al canale. Il canale riceve soldi o prodotti gratuiti in compenso.";
|
||||
"Part of a video promoting a product or service not directly related to the creator. The creator will receive payment or compensation in the form of money or free products." = "Parte del video che promuove un prodotto o servizio non direttamente collegato al canale. Il canale riceve soldi o prodotti gratuiti come compenso.";
|
||||
"If you are interested what's coming in future updates, you can track project Milestones." = "Se vuoi sapere cosa arriverà negli aggiornamenti futuri, tieni d'occhio i traguardi del progetto.";
|
||||
"Find Other" = "Trova altri";
|
||||
"Frontend URL" = "URL frontend";
|
||||
"Fullscreen size" = "Dimensione schermo intero";
|
||||
"Gaming" = "Gaming";
|
||||
"Gaming" = "Videogiochi";
|
||||
"Help" = "Aiuto";
|
||||
"Hide sidebar" = "Nascondi barra laterale";
|
||||
"High" = "Alta";
|
||||
"Highest" = "Massima";
|
||||
"Highest quality" = "Qualità massima";
|
||||
"History" = "Cronologia";
|
||||
"Honor orientation lock" = "Priorità blocco orientamento";
|
||||
"Honor orientation lock" = "Rispetta blocco rotazione";
|
||||
|
||||
/* Video date filter in search */
|
||||
"Hour" = "Ora";
|
||||
"I am lost" = "Sono perso";
|
||||
"I found a bug /" = "Ho trovato un bug /";
|
||||
"I have a feature request" = "Voglio richiedere una funzionalità";
|
||||
"I have a feature request" = "Ho una funzionalità da proporre";
|
||||
"I like this app!" = "Mi piace quest'app!";
|
||||
"Remove" = "Elimina";
|
||||
"Remove from Favorites" = "Elimina dai preferiti";
|
||||
"Remove from history" = "Elimina dalla cronologia";
|
||||
"Remove from Playlist" = "Elimina dalla playlist";
|
||||
"Remove from the queue" = "Elimina dalla coda";
|
||||
"Remove" = "Rimuovi";
|
||||
"Remove from Favorites" = "Rimuovi da Preferiti";
|
||||
"Remove from history" = "Rimuovi dalla cronologia";
|
||||
"Remove from Playlist" = "Rimuovi dalla playlist";
|
||||
"Remove from the queue" = "Rimuovi dalla coda";
|
||||
"Replies" = "Risposte";
|
||||
"Reset search filters" = "Azzera filtri di ricerca";
|
||||
"For custom locations you can configure Frontend URL in Locations settings" = "Per posizioni personalizzate è possibile configurare l'URL del frontend nelle impostazioni delle posizioni";
|
||||
"For custom locations you can configure Frontend URL in Locations settings" = "Per le posizioni personalizzate è possibile configurare l'URL del frontend nelle impostazioni delle posizioni";
|
||||
"This video could not be opened" = "Impossibile aprire questo video";
|
||||
"Playlist \"%@\" will be deleted.\nIt cannot be reverted." = "La playlist \"%@\" sarà eliminata.\nL'azione è irreversibile.";
|
||||
"Search..." = "Cerca...";
|
||||
@@ -233,47 +233,47 @@
|
||||
"This cannot be reverted" = "L'azione è irreversibile";
|
||||
"unknown" = "sconosciuto";
|
||||
"You have no Playlists" = "Non hai alcuna playlist";
|
||||
"You have no playlists\n\nTap on \"New Playlist\" to create one" = "Non hai alcuna playlist.\n\nUsare \"Nuova playlist\" per crearne una";
|
||||
"Could not load streams" = "Impossibile caricare i flussi";
|
||||
"You have no playlists\n\nTap on \"New Playlist\" to create one" = "Non hai alcuna playlist.\n\nUsa \"Nuova playlist\" per crearne una";
|
||||
"Could not load streams" = "Impossibile caricare stream";
|
||||
"Share Logs..." = "Condividi log…";
|
||||
"Open logs in Finder" = "Apri log in file";
|
||||
"Could not refresh Subscriptions" = "Impossibile aggiornare le iscrizioni";
|
||||
"Could not open video" = "Impossibile aprire il video";
|
||||
"Channel could not be found" = "Impossibile trovare il canale";
|
||||
"Could not extract channel information" = "Impossibile estrarre le informazioni del canale";
|
||||
"Could not extract SID from received cookies: %@" = "Impossibile estrarre l'SID dai cookie ricevuti: %@";
|
||||
"Open logs in Finder" = "Apri log nel Finder";
|
||||
"Could not refresh Subscriptions" = "Impossibile aggiornare Iscrizioni";
|
||||
"Could not open video" = "Impossibile aprire video";
|
||||
"Channel could not be found" = "Canale non trovato";
|
||||
"Could not extract channel information" = "Impossibile estrarre informazioni del canale";
|
||||
"Could not extract SID from received cookies: %@" = "Impossibile estrarre SID dai cookie ricevuti: %@";
|
||||
"Could not update your token." = "Impossibile aggiornare il tuo token.";
|
||||
"Could not refresh Trending" = "Impossibile aggiornare le tendenze";
|
||||
"Could not refresh Trending" = "Impossibile aggiornare Tendenze";
|
||||
"This URL could not be opened" = "Impossibile aprire questo URL";
|
||||
"Could not open channel" = "Impossibile aprire il canale";
|
||||
"Could not refresh Popular" = "Impossibile aggiornare i più popolari";
|
||||
"Could not create share link" = "Impossibile creare il link";
|
||||
"Could not extract video ID" = "Impossibile estrarre l'ID del video";
|
||||
"Could not load video" = "Impossibile caricare il video";
|
||||
"If you want this app to be available in your language, join translation project." = "Se vuoi che l'app sia disponibile nella tua lingua, unisciti al progetto di traduzione.";
|
||||
"Could not open channel" = "Impossibile aprire canale";
|
||||
"Could not refresh Popular" = "Impossibile aggiornare Popolari";
|
||||
"Could not create share link" = "Impossibile creare link di condivisione";
|
||||
"Could not extract video ID" = "Impossibile estrarre ID video";
|
||||
"Could not load video" = "Impossibile caricare video";
|
||||
"If you want this app to be available in your language, join translation project." = "Se vuoi che quest'app sia disponibile nella tua lingua, unisciti al progetto di traduzione.";
|
||||
"Translations" = "Traduzioni";
|
||||
"Pause when entering background" = "Metti in pausa quando si esce dall'app";
|
||||
"Pause when player is closed" = "Metti in pausa quando si minimizza il riproduttore";
|
||||
"Pause when entering background" = "Metti in pausa quando esci dall'app";
|
||||
"Pause when player is closed" = "Metti in pausa quando il riproduttore viene chiuso";
|
||||
"Picture in Picture" = "Picture in Picture";
|
||||
"Play" = "Riproduci";
|
||||
"Play All" = "Riproduci Tutti";
|
||||
"Play All" = "Riproduci tutti";
|
||||
"Play in PiP" = "Riproduci in PiP";
|
||||
"Play Last" = "Aggiungi alla coda";
|
||||
"Play Music" = "Riproduci Musica";
|
||||
"Play Next" = "Aggiungi a seguire";
|
||||
"Play Last" = "Riproduci per ultimo";
|
||||
"Play Music" = "Riproduci musica";
|
||||
"Play Next" = "Riproduci come successivo";
|
||||
"Playback" = "Riproduzione";
|
||||
"Player" = "Riproduttore";
|
||||
"Playlist" = "Playlist";
|
||||
"Playlists" = "Playlist";
|
||||
"Popular" = "Più popolari";
|
||||
"Preferred Formats" = "Format preferiti";
|
||||
"Popular" = "Popolari";
|
||||
"Preferred Formats" = "Formati preferiti";
|
||||
"Profiles" = "Profili";
|
||||
"Promoting a product or service that is directly related to the creator themselves. This usually includes merchandise or promotion of monetized platforms." = "Promozioni per un servizio direttamente collegato al canale. Ciò include sezioni riguardanti vendita di merce, donazioni o informazioni in merito a collaboratori.";
|
||||
"Promoting a product or service that is directly related to the creator themselves. This usually includes merchandise or promotion of monetized platforms." = "Promozione di un prodotto o servizio direttamente collegato al canale. Include la vendita di prodotti o la promozione di piattaforme monetizzate.";
|
||||
"Public Locations" = "Posizioni pubbliche";
|
||||
"Public Manifest" = "Manifesto pubblico";
|
||||
"Play Now" = "Riproduci adesso";
|
||||
"Play Now" = "Riproduci ora";
|
||||
"Quality" = "Qualità";
|
||||
"Quality Profile" = "Profilo di qualità";
|
||||
"Quality Profile" = "Profilo qualità";
|
||||
"Queue" = "Coda";
|
||||
"Queue is empty" = "La coda è vuota";
|
||||
"Regular size" = "Dimensione normale";
|
||||
@@ -282,51 +282,51 @@
|
||||
|
||||
/* Video sort order in search */
|
||||
"Relevance" = "Rilevanza";
|
||||
"Reset watched status when playing again" = "Azzera lo stato si visualizzazione quando si riapre il video";
|
||||
"Resolution" = "Definizione";
|
||||
"Reset watched status when playing again" = "Azzera lo stato di visualizzazione quando riproduci di nuovo";
|
||||
"Resolution" = "Risoluzione";
|
||||
"Restart" = "Riavvia";
|
||||
"Restart the app to apply the settings above." = "Riavvia l'app per applicare l'impostazione.";
|
||||
"Restart the app to apply the settings above." = "Riavvia l'app per applicare le impostazioni.";
|
||||
"Restore default profiles..." = "Ripristina profili predefiniti...";
|
||||
"Rotate to portrait when exiting fullscreen" = "Orientamento verticale quando si esce dallo schermo intero";
|
||||
"Rotate to portrait when exiting fullscreen" = "Ruota in verticale all'uscita da schermo intero";
|
||||
"Round corners" = "Angoli arrotondati";
|
||||
"Save" = "Salva";
|
||||
"Save history of played videos" = "Salva la cronologia dei video guardati";
|
||||
"Save history of played videos" = "Salva la cronologia dei video riprodotti";
|
||||
"Save history of searches, channels and playlists" = "Salva la cronologia delle ricerche, dei canali e delle playlist";
|
||||
"Search" = "Cerca";
|
||||
"Sections" = "Sezioni";
|
||||
"Seek gesture sensitivity" = "Sensibilità dello scorrimento";
|
||||
"Seek gesture speed" = "Velocità dello scorrimento";
|
||||
"Seek gesture sensitivity" = "Sensibilità scorrimento";
|
||||
"Seek gesture speed" = "Velocità scorrimento";
|
||||
"Restart/Play next" = "Riavvia/riproduci successivo";
|
||||
"Segments typically found at the start of a video that include an animation, still frame or clip which are also seen in other videos by the same creator." = "Segmenti trovati tipicamente all'inizio di un video che includono un'animazione, un'immagine o una clip presenti anche in altri video dello stesso canale.";
|
||||
"Seek with horizontal swipe on video" = "Naviga scorrendo orizzontalmente sul video";
|
||||
"Seek with horizontal swipe on video" = "Naviga con scorrimento orizzontale sul video";
|
||||
"Share %@ link" = "Condividi link %@";
|
||||
"Share..." = "Condividi...";
|
||||
|
||||
/* Video duration filter in search */
|
||||
"Short" = "Breve";
|
||||
"Show account username" = "Mostra il nome dell'account";
|
||||
"Show account username" = "Mostra nome utente dell'account";
|
||||
"Show anonymous accounts" = "Mostra account anonimi";
|
||||
"Show channel name" = "Mostra il nome del canale";
|
||||
"Show channel name" = "Mostra nome canale";
|
||||
"Show history" = "Mostra cronologia";
|
||||
"Show keywords" = "Mostra parole chiave";
|
||||
"Show playback statistics" = "Mostra statistiche di riproduzione";
|
||||
"Show progress of watching on thumbnails" = "Mostra l'avanzamento del video sulla copertina";
|
||||
"Show sidebar when space permits" = "Mostra la barra laterale se c'è abbastanza spazio";
|
||||
"Show video length" = "Mostra la lunghezza del video";
|
||||
"Show progress of watching on thumbnails" = "Mostra avanzamento del video sulle copertine";
|
||||
"Show sidebar when space permits" = "Mostra barra laterale quando c'è abbastanza spazio";
|
||||
"Show video length" = "Mostra lunghezza video";
|
||||
"Shuffle" = "Casuale";
|
||||
"Shuffle All" = "Casuale tutto";
|
||||
"Sidebar" = "Barra laterale";
|
||||
"Sign In Required" = "Richiesto l'accesso";
|
||||
"Sign In Required" = "Accesso richiesto";
|
||||
|
||||
/* Player controls layout size */
|
||||
"Small" = "Piccoli";
|
||||
|
||||
/* Player controls layout size */
|
||||
"Smaller" = "Piccolissimi";
|
||||
"Smaller" = "Più piccoli";
|
||||
"Sort: %@" = "Ordina: %@";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Sponsor" = "Sponsorizzazione";
|
||||
"Sponsor" = "Sponsor";
|
||||
"SponsorBlock" = "SponsorBlock";
|
||||
"SponsorBlock API Instance" = "Istanza API SponsorBlock";
|
||||
"Subscribe" = "Iscriviti";
|
||||
@@ -335,11 +335,11 @@
|
||||
"Subscriptions" = "Iscrizioni";
|
||||
"Switch to other public location" = "Passa a un'altra posizione pubblica";
|
||||
"Switch to public locations" = "Passa a posizioni pubbliche";
|
||||
"System controls buttons" = "Pulsanti di controllo del sistema";
|
||||
"System controls show buttons for %@" = "Pulsanti di controllo del sistema per %@";
|
||||
"That's nice to hear. It is fun to deliver apps other people want to use. You can consider donating to the project or help by contributing to new features development." = "Mi fa piacere. È bello offrire un'app che le persone usano volentieri. Puoi valutare di donare al progetto o aiutare contribuendo a sviluppare nuove funzionalità.";
|
||||
"System controls buttons" = "Pulsanti di controllo di sistema";
|
||||
"System controls show buttons for %@" = "Pulsanti di controllo di sistema per %@";
|
||||
"That's nice to hear. It is fun to deliver apps other people want to use. You can consider donating to the project or help by contributing to new features development." = "Mi fa piacere sentirlo. È bello offrire un'app che le persone usano volentieri. Puoi lasciare una donazione o contribuire allo sviluppo di nuove funzionalità, se vuoi.";
|
||||
"This cannot be reverted. You might need to switch between views or restart the app to see changes." = "L'azione è irreversibile. Potresti dover cambiare sezione o riavviare l'app per applicare le modifiche.";
|
||||
"This information will be processed only on your device and used to connect you to the server in the specified country." = "Queste informazioni saranno elaborate solo sul tuo dispositivo e saranno usate per connetterti con il server nella nazione specificata.";
|
||||
"This information will be processed only on your device and used to connect you to the server in the specified country." = "Queste informazioni saranno elaborate solo sul tuo dispositivo e saranno usate per connetterti con il server nel paese specificato.";
|
||||
"This will remove all your custom profiles and return their default values. This cannot be reverted." = "Saranno eliminati tutti i profili personalizzati e verranno riportati ai valori originali. L'azione è irreversibile.";
|
||||
"Thumbnails" = "Copertine";
|
||||
|
||||
@@ -349,8 +349,8 @@
|
||||
|
||||
/* Player controls layout size for TV */
|
||||
"TV" = "TV";
|
||||
"Typically near or at the end of the video when the credits pop up and/or endcards are shown." = "Tipicamente alla fine del video quando appaiono i ringraziamenti.";
|
||||
"Unsubscribe" = "Cancella iscrizione";
|
||||
"Typically near or at the end of the video when the credits pop up and/or endcards are shown." = "Tipicamente alla fine del video quando appaiono i ringraziamenti o le anteprime finali.";
|
||||
"Unsubscribe" = "Annulla iscrizione";
|
||||
"Upload date" = "Data di caricamento";
|
||||
"Used to create links from videos, channels and playlists" = "Usato per creare link da video, canali e playlist";
|
||||
"Username" = "Nome utente";
|
||||
@@ -370,14 +370,14 @@
|
||||
"Watching now" = "In riproduzione";
|
||||
|
||||
/* Video date filter in search */
|
||||
"Week" = "Questa Settimana";
|
||||
"Week" = "Questa settimana";
|
||||
"Welcome" = "Benvenuto";
|
||||
"When partially watched video is played" = "Quando viene aperto un video parzialmente guardato";
|
||||
"When partially watched video is played" = "Quando viene riprodotto un video guardato in parte";
|
||||
"Wi-Fi" = "Wi-Fi";
|
||||
"Wiki" = "Wiki";
|
||||
"Yattee" = "Yattee";
|
||||
"You can use automatic profile selection based on current device status or switch it in video playback settings controls." = "Puoi usare la selezione automatica del profilo in base allo stato del dispositivo o cambiarlo nei controlli della riproduzione.";
|
||||
"You need to create an instance and accounts\nto access %@ section" = "Devi creare un'istanza e un'account\nper accede alla sezione %@";
|
||||
"You can use automatic profile selection based on current device status or switch it in video playback settings controls." = "Puoi usare la selezione automatica del profilo in base allo stato del dispositivo o cambiarlo dai controlli di riproduzione.";
|
||||
"You need to create an instance and accounts\nto access %@ section" = "Devi creare un'istanza e un account\nper accedere alla sezione %@";
|
||||
"You need to select an account\nto access %@ section" = "Devi selezionare un account\nper accedere alla sezione %@";
|
||||
|
||||
|
||||
@@ -387,85 +387,85 @@
|
||||
"Current Location" = "Posizione attuale";
|
||||
"Private" = "Privata";
|
||||
"Playback queue is empty" = "La coda è vuota";
|
||||
"Playing Next" = "Successivo";
|
||||
"You can switch between profiles in playback settings controls." = "Puoi cambiare profilo nei controlli della riproduzione.";
|
||||
"Add Channels, Playlists and Searches to Favorites using" = "Aggiungi canali, playlist e ricerche ai tuoi preferiti usando";
|
||||
"Make default" = "Imposta predefinito";
|
||||
"Playing Next" = "Prossimo in coda";
|
||||
"You can switch between profiles in playback settings controls." = "Puoi cambiare profilo dai controlli di riproduzione.";
|
||||
"Add Channels, Playlists and Searches to Favorites using" = "Aggiungi canali, playlist e ricerche a Preferiti usando";
|
||||
"Make default" = "Imposta come predefinito";
|
||||
"Visibility" = "Visibilità";
|
||||
"Current Playlist" = "Playlist attuale";
|
||||
"Stream & Player" = "Flusso e riproduttore";
|
||||
"Stream & Player" = "Stream e riproduttore";
|
||||
"Statistics" = "Statistiche";
|
||||
"Hardware decoder" = "Decoder hardware";
|
||||
"Stream FPS" = "FPS flusso";
|
||||
"Cached time" = "Tempo nella cache";
|
||||
"Hardware decoder" = "Decodificatore hardware";
|
||||
"Stream FPS" = "FPS stream";
|
||||
"Cached time" = "Tempo in cache";
|
||||
"Rate & Captions" = "Velocità e sottotitoli";
|
||||
"Dropped frames" = "Frame saltati";
|
||||
"Dropped frames" = "Frame persi";
|
||||
"Any format" = "Qualsiasi formato";
|
||||
"%@ formats" = "Formati %@";
|
||||
"Keep last played video in the queue after restart" = "Mantieni l'ultimo video guardato nella coda dopo la chiusura";
|
||||
"Playlist is empty\n\nTap and hold on a video and then \n\"Add to Playlist\"" = "La playlist è vuota\n\nTieni premuto su un video e\n\"Aggiungi alla playlist\"";
|
||||
"It can be changed later in settings. You can use your own locations too." = "Potrà essere cambiata nelle impostazioni. Puoi anche usare posizioni personalizzate.";
|
||||
"%@ formats" = "%@ formati";
|
||||
"Keep last played video in the queue after restart" = "Mantieni l'ultimo video guardato in coda dopo il riavvio";
|
||||
"Playlist is empty\n\nTap and hold on a video and then \n\"Add to Playlist\"" = "La playlist è vuota\n\nTieni premuto su un video e fai\n\"Aggiungi a playlist\"";
|
||||
"It can be changed later in settings. You can use your own locations too." = "Può essere cambiata nelle impostazioni. Puoi anche usare posizioni personalizzate.";
|
||||
"Press and hold remote button to open captions and quality menus" = "Tieni premuto il pulsante del telecomando per aprire il menu dei sottotitoli e della qualità";
|
||||
"Comments are disabled" = "I commenti sono disattivati";
|
||||
"No comments" = "Nessun commento";
|
||||
"No chapters information available" = "Nessun capitolo disponibile";
|
||||
"Proxy videos" = "Proxy";
|
||||
"Proxy videos" = "Guarda video con proxy";
|
||||
"Rate" = "Velocità";
|
||||
|
||||
/* Video sort order in search */
|
||||
"Rating" = "Voto";
|
||||
"Rating" = "Valutazione";
|
||||
"Recents" = "Recenti";
|
||||
"Red" = "Rosso";
|
||||
"Refresh" = "Aggiorna";
|
||||
"Reset" = "Reimposta";
|
||||
"Settings" = "Impostazioni";
|
||||
"Share %@ link with time" = "Condividi link %@ con minutaggio";
|
||||
"Share %@ link with time" = "Condividi link %@ al minuto corrente";
|
||||
"Sort" = "Ordina";
|
||||
"URL" = "URL";
|
||||
"Yattee %@ (build %@)" = "Yattee %@ (build %@)";
|
||||
|
||||
/* Video date filter in search */
|
||||
"Year" = "Quest'anno";
|
||||
"You can find information about using Yattee in the Wiki pages." = "Puoi trovare informazioni sull'utilizzo di Yattee nella Wiki.";
|
||||
"Could not open playlist" = "Impossibile aprire la playlist";
|
||||
"Could not extract playlist ID" = "Impossibile estrarre l'ID della playlist";
|
||||
"You can find information about using Yattee in the Wiki pages." = "Puoi trovare informazioni sull'utilizzo di Yattee nelle pagine della Wiki.";
|
||||
"Could not open playlist" = "Impossibile aprire playlist";
|
||||
"Could not extract playlist ID" = "Impossibile estrarre ID playlist";
|
||||
"No locations available at the moment" = "Nessuna posizione è attualmente disponibile";
|
||||
"Could not refresh Playlists" = "Impossibile aggiornare le playlist";
|
||||
"Could not refresh Playlists" = "Impossibile aggiornare Playlist";
|
||||
"No documents" = "Nessun documento";
|
||||
"Inspector visibility" = "Visualizza ispettore";
|
||||
"Inspector visibility" = "Visibilità ispettore";
|
||||
"Are you sure you want to remove this document?" = "Eliminare questo documento?";
|
||||
"Are you sure you want to remove %@ location?" = "Eliminare la posizione %@?";
|
||||
"Are you sure you want to remove %@ location?" = "Rimuovere la posizione %@?";
|
||||
"Recent Documents" = "Documenti recenti";
|
||||
"Recent History" = "Recenti dalla cronologia";
|
||||
"Show Favorites" = "Mostra preferiti";
|
||||
"Show Open Videos quick actions" = "Mostra i controlli rapidi per aprire video";
|
||||
"Recent History" = "Cronologia recente";
|
||||
"Show Favorites" = "Mostra Preferiti";
|
||||
"Show Open Videos quick actions" = "Mostra controlli rapidi per aprire video";
|
||||
"Home" = "Home";
|
||||
"Share files from Finder on a Mac\nor iTunes on Windows" = "Condividi file dal Finder su Mac\no da iTunes su Windows";
|
||||
"Show Home" = "Mostra la Home";
|
||||
"Pages toolbar position" = "Posizione della barra delle pagine";
|
||||
"Show Home" = "Mostra Home";
|
||||
"Pages toolbar position" = "Posizione pagine in barra strumenti";
|
||||
"URL to Open" = "URL da aprire";
|
||||
"Enter link to open" = "Inserire un link da aprire";
|
||||
"Enter link to open" = "Inserisci link da aprire";
|
||||
"Show only icons" = "Mostra solo icone";
|
||||
"Video" = "Video";
|
||||
"Sample Rate" = "Frequenza di campionamento";
|
||||
"Buttons labels" = "Etichette dei pulsanti";
|
||||
"Buttons labels" = "Etichette pulsanti";
|
||||
"Files" = "File";
|
||||
"Show Documents" = "Mostra documenti";
|
||||
"Show Documents" = "Mostra Documenti";
|
||||
"Video Details" = "Dettagli video";
|
||||
"Show Inspector" = "Mostra ispettore";
|
||||
"Clear Queue before opening" = "Cancella la coda prima di aprire";
|
||||
"Clear Queue before opening" = "Cancella coda prima di aprire";
|
||||
"Open" = "Apri";
|
||||
"Video actions buttons" = "Pulsanti delle azioni nel video";
|
||||
"Pages buttons" = "Pulsanti delle pagine";
|
||||
"Video actions buttons" = "Pulsanti azione nel video";
|
||||
"Pages buttons" = "Pulsanti di pagine";
|
||||
"Could not open Files" = "Impossibile aprire File";
|
||||
"Enter links to open, one per line" = "Inserire i link da aprire, uno per riga";
|
||||
"Enter links to open, one per line" = "Inserisci link da aprire, uno per riga";
|
||||
"Playback Mode" = "Modalità riproduzione";
|
||||
"Add" = "Aggiungi";
|
||||
"Hide" = "Nascondi";
|
||||
"Only for local files and URLs" = "Solo per file locali e URL";
|
||||
"Right" = "Destra";
|
||||
"Open Files" = "Apri File";
|
||||
"Show icons and text when space permits" = "Mostra icone e testi quando c'è abbastanza spazio";
|
||||
"Show icons and text when space permits" = "Mostra icone e testo quando c'è abbastanza spazio";
|
||||
"Left" = "Sinistra";
|
||||
"Format" = "Formato";
|
||||
"Driver" = "Driver";
|
||||
@@ -475,30 +475,91 @@
|
||||
"File" = "File";
|
||||
"Codec" = "Codec";
|
||||
"Size" = "Dimensione";
|
||||
"Could not find any links to open in your clipboard" = "Impossibile trovare link da aprire negli appunti";
|
||||
"Remove…" = "Elimina…";
|
||||
"Actions buttons" = "Pulsanti azioni";
|
||||
"Could not find any links to open in your clipboard" = "Nessun link da aprire trovato negli appunti";
|
||||
"Remove…" = "Rimuovi…";
|
||||
"Actions buttons" = "Pulsanti azione";
|
||||
"Show sidebar" = "Mostra barra laterale";
|
||||
"Default Profile" = "Profilo predefinito";
|
||||
"Playback history is empty" = "La cronologia di riproduzione è vuota";
|
||||
"Address" = "Indirizzo";
|
||||
"Locations Manifest" = "Manifesto della posizione";
|
||||
"Remove Location" = "Elimina posizione";
|
||||
"Locations Manifest" = "Manifesto posizioni";
|
||||
"Remove Location" = "Rimuovi posizione";
|
||||
"Open Video" = "Apri video";
|
||||
"Copy%@link" = "Copia link%@";
|
||||
"Share%@link" = "Condividi link%@";
|
||||
"Edit Favorites…" = "Modifica preferiti…";
|
||||
"Open Videos" = "Apri video";
|
||||
"Edit Favorites…" = "Modifica Preferiti…";
|
||||
"Open Videos" = "Apri Video";
|
||||
"FPS" = "FPS";
|
||||
"Show Open Videos toolbar button" = "Mostra il pulsante per aprire video nella barra superiore";
|
||||
"Show Open Videos toolbar button" = "Mostra pulsante per aprire video nella barra strumenti";
|
||||
"Reload manifest" = "Ricarica manifesto";
|
||||
"Always" = "Sempre";
|
||||
"Could not delete document" = "Impossibile eliminare il documento";
|
||||
"Could not delete document" = "Impossibile eliminare documento";
|
||||
"Paste" = "Incolla";
|
||||
"Channels" = "Canali";
|
||||
"Share" = "Condividi";
|
||||
"\"%@\" will be irreversibly removed from this device." = "\"%@\" sarà eliminato permanentemente da questo dispositivo.";
|
||||
"Live Streams" = "Trasmissioni dal vivo";
|
||||
"\"%@\" will be irreversibly removed from this device." = "\"%@\" verrà eliminato definitivamente da questo dispositivo.";
|
||||
"Live Streams" = "Trasmissioni in diretta";
|
||||
"Shorts" = "Shorts";
|
||||
"Verified" = "Verificato";
|
||||
"Channel" = "Canale";
|
||||
"Maximum width expanded" = "Larghezza massima espansa";
|
||||
"Right click channel thumbnail to open context menu with more actions" = "Tasto destro sulla miniatura del canale per aprire il menu con più azioni";
|
||||
"Actions Buttons" = "Pulsanti azione";
|
||||
"Short videos: visible" = "Shorts: visibili";
|
||||
"Short videos: hidden" = "Shorts: nascosti";
|
||||
"Mark channel feed as unwatched" = "Segna feed canale come non guardato";
|
||||
"Play all unwatched" = "Riproduci tutti i non guardati";
|
||||
"Double tap gesture" = "Doppio tocco";
|
||||
"Clear all" = "Pulisci tutto";
|
||||
"Close video" = "Chiudi video";
|
||||
"Maximum feed items" = "Massimo numero di elementi nel feed";
|
||||
"Open channels with description expanded" = "Apri canali con descrizione espansa";
|
||||
"Are you sure you want to clear cache?" = "Cancellare la cache?";
|
||||
"Open expanded" = "Apri espanso";
|
||||
"Mark channel feed as watched" = "Segna feed canale come guardato";
|
||||
"Player Bar" = "Barra riproduttore";
|
||||
"Tap and hold channel thumbnail to open context menu with more actions" = "Tieni premuto sulla miniatura del canale per aprire il menu con più azioni";
|
||||
"Always show controls buttons" = "Mostra sempre pulsanti controllo";
|
||||
"Single tap gesture" = "Tocco singolo";
|
||||
"Gesture: fowards" = "Gesto: avanti";
|
||||
"Controls Buttons" = "Pulsanti controllo";
|
||||
"System controls" = "Controlli di sistema";
|
||||
"Controls button: backwards" = "Pulsanti controllo: indietro";
|
||||
"Controls button: forwards" = "Pulsanti controllo: avanti";
|
||||
"Gesture: backwards" = "Gesto: indietro";
|
||||
"Hide player" = "Nascondi riproduttore";
|
||||
"Play next item" = "Riproduci prossimo";
|
||||
"Lock orientation" = "Blocca orientamento";
|
||||
"Music Mode" = "Modalità Musica";
|
||||
"Total size: %@" = "Dimensione totale: %@";
|
||||
"Cache" = "Cache";
|
||||
"Subscribe/Unsubscribe" = "Iscriviti/Annulla iscrizione";
|
||||
"Show cache status" = "Mostra stato cache";
|
||||
"Show toggle watch status button" = "Mostra pulsante per segnare come guardato/non guardato";
|
||||
"Gesture settings control skipping interval for double click on left/right side of the player. Changing system controls settings requires restart." = "Le impostazioni dei gesti controllano gli intervalli dei salti tramite doppio tocco a destra/sinistra del riproduttore. Cambiare le impostazioni dei controlli di sistema richiede il riavvio.";
|
||||
"Gesture settings control skipping interval for remote arrow buttons (for 2nd generation Siri Remote or newer). Changing system controls settings requires restart." = "Le impostazioni dei gesti controllano gli intervalli dei salti tramite pulsanti freccia (per Telecomando Siri di 2ª generazione o più recente). Cambiare le impostazioni dei controlli di sistema richiede il riavvio.";
|
||||
"Open channel" = "Apri canale";
|
||||
"Seeking" = "Scrubbing";
|
||||
"Gesture settings control skipping interval for double tap gesture on left/right side of the player. Changing system controls settings requires restart." = "Le impostazioni dei gesti controllano gli intervalli dei salti tramite doppio tocco a destra/sinistra del riproduttore. Cambiare le impostazioni dei controlli di sistema richiede il riavvio.";
|
||||
"List" = "Lista";
|
||||
"Cells" = "Celle";
|
||||
"Show Next in Queue" = "Mostra prossimo in coda";
|
||||
"Next in Queue" = "Prossimo in coda";
|
||||
"Open video description expanded" = "Apri descrizione video espansa";
|
||||
"Mark all as unwatched" = "Segna tutti come non guardati";
|
||||
"Mark all as watched" = "Segna tutti come guardati";
|
||||
"Queue - shuffled" = "Coda - casuale";
|
||||
"Playback Settings" = "Impostazioni di riproduzione";
|
||||
"Replay" = "Riguarda";
|
||||
"Fullscreen" = "Schermo intero";
|
||||
"Lock" = "Blocca";
|
||||
"Description" = "Descrizione";
|
||||
"Loop one" = "Ripeti uno";
|
||||
"Autoplay next" = "Riproduci prossimo in automatico";
|
||||
"Stream" = "Stream";
|
||||
"Toggle size" = "Cambia dimensione";
|
||||
"Toggle player" = "Apri/Chiudi riproduttore";
|
||||
"Do nothing" = "Nessuna azione";
|
||||
"Feed" = "Feed";
|
||||
"Inspector" = "Ispettore";
|
||||
"Show unwatched feed badges" = "Mostra badge per video non guardati nel feed";
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
"Decreased opacity" = "透明化";
|
||||
"Delete" = "削除";
|
||||
"Custom Locations" = "場所の指定";
|
||||
"Decrease rate" = "評価を下げる";
|
||||
"Decrease rate" = "速度を下げる";
|
||||
"Done" = "完了";
|
||||
"Discord Server" = "Discord のサーバー";
|
||||
"Duration" = "長さ";
|
||||
@@ -75,7 +75,7 @@
|
||||
"Highest" = "最高";
|
||||
"Highest quality" = "最高品質";
|
||||
"Honor orientation lock" = "向きのロックに従う";
|
||||
"Increase rate" = "評価を上げる";
|
||||
"Increase rate" = "速度を上げる";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Intro" = "導入シーン";
|
||||
@@ -87,7 +87,7 @@
|
||||
"Large" = "大";
|
||||
|
||||
/* Loading stream OSD */
|
||||
"Loading streams..." = "ストリームを読み込み中...";
|
||||
"Loading streams..." = "ストリーム読込中...";
|
||||
"Lock portrait mode" = "縦モードをロック";
|
||||
"LIVE" = "ライブ";
|
||||
"Locations" = "場所";
|
||||
@@ -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..." = "音声ストリームを開始中...";
|
||||
@@ -125,7 +125,7 @@
|
||||
"Queue" = "再生待ち";
|
||||
"Red" = "赤";
|
||||
"Recents" = "最近";
|
||||
"Rate" = "評価";
|
||||
"Rate" = "速度";
|
||||
"Refresh" = "更新";
|
||||
|
||||
/* Video sort order in search */
|
||||
@@ -154,7 +154,7 @@
|
||||
"Show keywords" = "キーワードを表示";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Sponsor" = "広告主";
|
||||
"Sponsor" = "広告";
|
||||
"SponsorBlock" = "SponsorBlock";
|
||||
"SponsorBlock API Instance" = "SponsorBlock API インスタンス";
|
||||
"Source" = "入力";
|
||||
@@ -317,10 +317,10 @@
|
||||
/* Player controls layout size */
|
||||
"Small" = "小";
|
||||
"URL" = "URL";
|
||||
"Playing Next" = "次に再生";
|
||||
"Playing Next" = "次を再生";
|
||||
"Playback Mode" = "再生モード";
|
||||
"Play Now" = "すぐ再生";
|
||||
"Play Next" = "次に再生";
|
||||
"Play Now" = "今すぐ再生";
|
||||
"Play Next" = "次を再生";
|
||||
"Play Last" = "最後に再生";
|
||||
"Play" = "再生";
|
||||
"Playlist" = "プレイリスト";
|
||||
@@ -382,7 +382,7 @@
|
||||
"Lowest" = "最低";
|
||||
"Low quality" = "低品質";
|
||||
"Regular Size" = "通常時のサイズ";
|
||||
"Large layout is not suitable for all devices and using it may cause controls not to fit on the screen." = "大きな表示はあらゆる端末では適さず、生魚ボタンが画面に収まらないことがあります。";
|
||||
"Large layout is not suitable for all devices and using it may cause controls not to fit on the screen." = "大きな表示はあらゆる端末用ではなく、制御ボタンが画面に収まらないことがあります。";
|
||||
"Seeking" = "シーク";
|
||||
"Always show controls buttons" = "常に制御ボタンを表示";
|
||||
"Controls button: backwards" = "制御ボタン: 戻る";
|
||||
@@ -487,7 +487,7 @@
|
||||
"Category" = "分類";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Interaction" = "操作の呼びかけ";
|
||||
"Interaction" = "操作の要求";
|
||||
|
||||
/* SponsorBlock category name */
|
||||
"Self-promotion" = "自己宣伝";
|
||||
@@ -530,3 +530,31 @@
|
||||
"Public Locations" = "公開された場所";
|
||||
"Switch to public locations" = "公開された場所に切り替え";
|
||||
"Explicit reminders to like, subscribe or interact with them on any paid or free platform(s) (e.g. click on a video)." = "有料/無料のプラットフォームかを問わず、いいね、登録などを明示的に操作を促す(例: 動画をクリック)。";
|
||||
"Proxy videos" = "動画閲覧にプロキシ使用";
|
||||
"Sections" = "表示部分";
|
||||
"System controls show buttons for %@" = "システム制御「%@」用のボタンを表示";
|
||||
"You need to create an instance and accounts\nto access %@ section" = "%@ セクションの利用には\nインスタンスとアカウントの作成が必要";
|
||||
"You need to select an account\nto access %@ section" = "%@ セクションの利用には\nアカウントの選択が必要";
|
||||
"Visibility" = "表示";
|
||||
"Cached time" = "キャッシュ済みの時間";
|
||||
"Rate & Captions" = "速度と字幕";
|
||||
"Fullscreen" = "全画面";
|
||||
"Toggle player" = "プレイヤーを切り替え";
|
||||
"Toggle size" = "大きさを切り替え";
|
||||
"List" = "一覧";
|
||||
"Cells" = "アイコン";
|
||||
"Show toggle watch status button" = "視聴状態切り替えボタンを表示";
|
||||
"Open channel" = "チャンネルを開く";
|
||||
"Do nothing" = "何もしない";
|
||||
"Open video description expanded" = "動画の説明を展開";
|
||||
"Feed" = "フィード";
|
||||
"Mark all as unwatched" = "すべて未視聴に";
|
||||
"Mark all as watched" = "すべて視聴済みに";
|
||||
"Queue - shuffled" = "再生キュー - シャッフル";
|
||||
"Replay" = "もう一回再生";
|
||||
"Lock" = "ロック";
|
||||
"Loop one" = "ループ再生";
|
||||
"Description" = "説明";
|
||||
"Playback Settings" = "再生設定";
|
||||
"Autoplay next" = "次を自動再生";
|
||||
"Stream" = "ストリーム";
|
||||
|
||||
@@ -564,3 +564,7 @@
|
||||
"Autoplay next" = "Odtwarzaj automatycznie";
|
||||
"Stream" = "Strumień";
|
||||
"Show Next in Queue" = "Pokaż Następne w kolejce";
|
||||
"Show scroll to top button in comments" = "Pokaż przycisk przewijania do góry w komentarzach";
|
||||
"Seek" = "Przewijanie";
|
||||
"Enter account credentials to connect..." = "Wprowadź dane logowania do konta, aby połączyć...";
|
||||
"Enter location address to connect..." = "Wprowadź adres lokalizacji, aby połączyć...";
|
||||
|
||||
@@ -67,9 +67,9 @@
|
||||
"I am lost" = "Я загубився";
|
||||
"I found a bug /" = "Я знайшов баг /";
|
||||
"I have a feature request" = "В мене є пропозиція";
|
||||
"I like this app!" = "Мені подобається цей додаток!";
|
||||
"I like this app!" = "Мені подобається цей застосунок!";
|
||||
"I want to ask a question" = "Хочу задати питання";
|
||||
"If you are interested what's coming in future updates, you can track project Milestones." = "Якщо вам цікаво, що буде в наступних оновленнях, ви можете відстежувати етапи проекту.";
|
||||
"If you are interested what's coming in future updates, you can track project Milestones." = "Якщо вам цікаво, що буде в наступних оновленнях, ви можете відстежувати етапи проєкту.";
|
||||
"Increase rate" = "Підвищити якість";
|
||||
"Info" = "Інфо";
|
||||
"Instance of current account" = "Экземпляр поточного акаунта";
|
||||
@@ -197,7 +197,7 @@
|
||||
"Help" = "Допомога";
|
||||
"Related" = "Схожі";
|
||||
"Honor orientation lock" = "Блокування орієнтації";
|
||||
"If you are reporting a bug, include all relevant details (especially: app version, used device and system version, steps to reproduce)." = "Якщо ви повідомляєте про помилку, вказуйте всі відповідні деталі (особливо: версію програми, використовуваний пристрій, версію системи і кроки для відтворення).";
|
||||
"If you are reporting a bug, include all relevant details (especially: app version, used device and system version, steps to reproduce)." = "Якщо ви повідомляєте про помилку, вказуйте всі відповідні деталі (особливо: версію застосунку, використовуваний пристрій, версію системи і кроки для відтворення).";
|
||||
"Promoting a product or service that is directly related to the creator themselves. This usually includes merchandise or promotion of monetized platforms." = "Просування продукту або послуги, які безпосередньо пов'язані з самим автором. Зазвичай це стосується товарів або просування монетизованих платформ.";
|
||||
"Red" = "Червоний";
|
||||
"Refresh" = "Поновити";
|
||||
@@ -229,7 +229,7 @@
|
||||
"Clear Search History" = "Очистити історію пошуку";
|
||||
"Clear Search History..." = "Очистити історію пошуку...";
|
||||
"Clear the queue" = "Очистити чергу";
|
||||
"Close PiP and open player when application enters foreground" = "Закрийте PiP і відкрийте плеєр, коли програма відкриється";
|
||||
"Close PiP and open player when application enters foreground" = "Закрийте PiP і відкрийте плеєр, коли застосунок відкриється";
|
||||
"Close player when closing video" = "Закрийте плеєр, коли зупините відео";
|
||||
"Close player when starting PiP" = "Закрийте плеєр при старті PiP";
|
||||
"Close Video" = "Закрити відео";
|
||||
@@ -411,14 +411,14 @@
|
||||
"Share %@ link with time" = "Поділитися посиланням %@ з часом";
|
||||
"Reset watched status when playing again" = "Скинути статус перегляду при повторному відкритті";
|
||||
"Show account username" = "Відображати імʼя акаунту";
|
||||
"Restart the app to apply the settings above." = "Перезапустіть додаток, щоб застосувати нові налаштування.";
|
||||
"Restart the app to apply the settings above." = "Перезапустіть застосунок, щоб застосувати нові налаштування.";
|
||||
"Show anonymous accounts" = "Показувати анонімні акаунти";
|
||||
"Show channel name" = "Показувати назву каналу";
|
||||
"Sign In Required" = "Необхідно увійти в систему";
|
||||
"It can be changed later in settings. You can use your own locations too." = "Пізніше це можна змінити в налаштуваннях. Ви також можете використовувати власні локації.";
|
||||
"System controls buttons" = "Кнопки керування системою";
|
||||
"That's nice to hear. It is fun to deliver apps other people want to use. You can consider donating to the project or help by contributing to new features development." = "Приємно це чути. Створювати додатки, якими хочуть користуватися інші люди, дуже приємно. Ви можете розглянути можливість пожертвувати кошти на проект або допомогти, взявши участь у розробці нових функцій.";
|
||||
"This cannot be reverted. You might need to switch between views or restart the app to see changes." = "Це не можна буде скасувати. Можливо, вам доведеться переключитися між режимами перегляду або перезапустити програму, щоб побачити зміни.";
|
||||
"That's nice to hear. It is fun to deliver apps other people want to use. You can consider donating to the project or help by contributing to new features development." = "Приємно це чути. Створювати застосунки, якими хочуть користуватися інші люди, дуже приємно. Ви можете розглянути можливість пожертвувати кошти на проєкт або допомогти, взявши участь у розробці нових функцій.";
|
||||
"This cannot be reverted. You might need to switch between views or restart the app to see changes." = "Це не можна буде скасувати. Можливо, вам доведеться перемкнутися між режимами перегляду або перезапустити застосунок, щоб побачити зміни.";
|
||||
"Keep last played video in the queue after restart" = "Залишати останнє проглянуте відео в черзі після перезапуску";
|
||||
"Could not load streams" = "Не вдалося загрузити трансляції";
|
||||
"Could not open video" = "Не вдалося відкрити відео";
|
||||
@@ -430,7 +430,7 @@
|
||||
"Could not load video" = "Не вдалося завантажити відео";
|
||||
"No locations available at the moment" = "Зараз немає доступних API (локацій)";
|
||||
"Could not refresh Playlists" = "Не вдалося поновити плейлисти";
|
||||
"If you want this app to be available in your language, join translation project." = "Ви можете змінити або створити свій переклад на сторінці проекту.";
|
||||
"If you want this app to be available in your language, join translation project." = "Ви можете змінити або створити свій переклад на сторінці проєкту.";
|
||||
"No documents" = "Немає документів";
|
||||
"Are you sure you want to remove this document?" = "Ви впевнені, що бажаєте видалити цей документ?";
|
||||
"Recent Documents" = "Нещодавні документи";
|
||||
@@ -502,3 +502,68 @@
|
||||
"Shorts" = "Shorts";
|
||||
"Verified" = "Перевірений";
|
||||
"Channel" = "Канал";
|
||||
"Open expanded" = "Відкрито розширено";
|
||||
"Mark channel feed as unwatched" = "Позначити стрiчку каналу не переглянутою";
|
||||
"Mark channel feed as watched" = "Позначити стрiчку каналу переглянутою";
|
||||
"Short videos: visible" = "Короткi вiдео: виднi";
|
||||
"Player Bar" = "Панель плеєра";
|
||||
"Short videos: hidden" = "Короткi вiдео: схованi";
|
||||
"Play all unwatched" = "Дивитися всi не переглянутi";
|
||||
"Double tap gesture" = "Жест подвійного дотику";
|
||||
"Tap and hold channel thumbnail to open context menu with more actions" = "Натисніть і утримуйте мініатюру каналу, щоб відкрити контекстне меню з додатковими діями";
|
||||
"Always show controls buttons" = "Завжди показувати кнопки керування";
|
||||
"Single tap gesture" = "Жест одним дотиком";
|
||||
"Maximum width expanded" = "Максимальна ширина збільшена";
|
||||
"Clear all" = "Зачистити все";
|
||||
"Right click channel thumbnail to open context menu with more actions" = "Клацніть правою кнопкою миші на мініатюрі каналу, щоб відкрити контекстне меню з іншими діями";
|
||||
"Show unwatched feed badges" = "Показати бейджики непроглянутих стрічок";
|
||||
"Seeking" = "У пошуках";
|
||||
"Gesture: fowards" = "Жест: вперед";
|
||||
"Controls Buttons" = "Кнопки керування";
|
||||
"System controls" = "Керування системою";
|
||||
"Controls button: backwards" = "Кнопка керування: назад";
|
||||
"Controls button: forwards" = "Кнопка керування: вперед";
|
||||
"Gesture: backwards" = "Жест: назад";
|
||||
"Gesture settings control skipping interval for double tap gesture on left/right side of the player. Changing system controls settings requires restart." = "Налаштування жестів визначають інтервал пропуску подвійного дотику до плеєра зліва/справа. Зміна налаштувань управління системою вимагає перезапуску.";
|
||||
"Hide player" = "Приховати плеєр";
|
||||
"Gesture settings control skipping interval for double click on left/right side of the player. Changing system controls settings requires restart." = "Налаштування жестів визначають інтервал пропуску подвійного клацання зліва/справа на плеєрі. Зміна налаштувань системних елементів керування потребує перезапуску.";
|
||||
"Gesture settings control skipping interval for remote arrow buttons (for 2nd generation Siri Remote or newer). Changing system controls settings requires restart." = "Налаштування жестів керують інтервалом пропуску кнопок зі стрілками пульта дистанційного керування (для пульта дистанційного керування Siri Remote 2-го покоління або новіших). Зміна налаштувань системних елементів керування потребує перезапуску.";
|
||||
"Actions Buttons" = "Кнопки дій";
|
||||
"Play next item" = "Відтворити наступний елемент";
|
||||
"Lock orientation" = "Зафіксувати орієнтацію";
|
||||
"Music Mode" = "Музичний режим";
|
||||
"Close video" = "Закрити відео";
|
||||
"Total size: %@" = "Загальний розмір: %@";
|
||||
"Open channels with description expanded" = "Відкрити канали з розширеним описом";
|
||||
"Cache" = "Кеш";
|
||||
"Subscribe/Unsubscribe" = "Підписатися/відписатися";
|
||||
"Show cache status" = "Показати стан кешу";
|
||||
"Maximum feed items" = "Максимальна кількість в стрічці";
|
||||
"Are you sure you want to clear cache?" = "Ви впевнені, що хочете очистити кеш?";
|
||||
"Show Next in Queue" = "Показати наступного в черзі";
|
||||
"Show toggle watch status button" = "Показати перемикач переглянутого";
|
||||
"Next in Queue" = "Наступний у черзі";
|
||||
"List" = "Список";
|
||||
"Cells" = "Комірки";
|
||||
"Toggle size" = "Розмір перемикача";
|
||||
"Toggle player" = "Переключити плеєр";
|
||||
"Do nothing" = "Нічого не робити";
|
||||
"Feed" = "Стрічка";
|
||||
"Open channel" = "Відкрити канал";
|
||||
"Inspector" = "Інспектор";
|
||||
"Open video description expanded" = "Відкрити опис відео розширено";
|
||||
"Mark all as unwatched" = "Позначити всі не переклянутими";
|
||||
"Mark all as watched" = "Позначити всі переглянутими";
|
||||
"Queue - shuffled" = "Черга - перемішана";
|
||||
"Playback Settings" = "Налаштування відтворення";
|
||||
"Replay" = "Повтор";
|
||||
"Fullscreen" = "Повний екран";
|
||||
"Lock" = "Замок";
|
||||
"Description" = "Опис";
|
||||
"Loop one" = "Цикл один";
|
||||
"Autoplay next" = "Автовідтворення далі";
|
||||
"Stream" = "Потік";
|
||||
"Enter account credentials to connect..." = "Введіть облікові дані для з'єднання...";
|
||||
"Seek" = "Шукати";
|
||||
"Show scroll to top button in comments" = "Показати кнопку прокрутки вгору в коментарях";
|
||||
"Enter location address to connect..." = "Введіть адресу розташування для з'єднання...";
|
||||
|
||||
@@ -690,8 +690,6 @@
|
||||
37A362C229537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A362C129537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift */; };
|
||||
37A362C329537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A362C129537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift */; };
|
||||
37A362C429537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A362C129537FED00BDF328 /* PlaybackSettingsPresentationDetents+Backport.swift */; };
|
||||
37A5DBC4285DFF5400CA4DD1 /* SwiftUIPager in Frameworks */ = {isa = PBXBuildFile; productRef = 37A5DBC3285DFF5400CA4DD1 /* SwiftUIPager */; };
|
||||
37A5DBC6285E06B100CA4DD1 /* SwiftUIPager in Frameworks */ = {isa = PBXBuildFile; productRef = 37A5DBC5285E06B100CA4DD1 /* SwiftUIPager */; };
|
||||
37A5DBC8285E371400CA4DD1 /* ControlBackgroundModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A5DBC7285E371400CA4DD1 /* ControlBackgroundModifier.swift */; };
|
||||
37A5DBC9285E371400CA4DD1 /* ControlBackgroundModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A5DBC7285E371400CA4DD1 /* ControlBackgroundModifier.swift */; };
|
||||
37A5DBCA285E371400CA4DD1 /* ControlBackgroundModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A5DBC7285E371400CA4DD1 /* ControlBackgroundModifier.swift */; };
|
||||
@@ -922,7 +920,6 @@
|
||||
37E80F3C287B107F00561799 /* VideoDetailsOverlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E80F3B287B107F00561799 /* VideoDetailsOverlay.swift */; };
|
||||
37E80F3D287B107F00561799 /* VideoDetailsOverlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E80F3B287B107F00561799 /* VideoDetailsOverlay.swift */; };
|
||||
37E80F40287B472300561799 /* ScrollContentBackground+Backport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E80F3F287B472300561799 /* ScrollContentBackground+Backport.swift */; };
|
||||
37E80F43287B7AAF00561799 /* SwiftUIPager in Frameworks */ = {isa = PBXBuildFile; productRef = 37E80F42287B7AAF00561799 /* SwiftUIPager */; };
|
||||
37E80F45287B7AC000561799 /* ControlsBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 372CFD14285F2E2A00B0B54B /* ControlsBar.swift */; };
|
||||
37E80F46287B7AEC00561799 /* PlayerQueueView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37CC3F4B270CFE1700608308 /* PlayerQueueView.swift */; };
|
||||
37E8B0EC27B326C00024006F /* TimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37E8B0EB27B326C00024006F /* TimelineView.swift */; };
|
||||
@@ -1580,7 +1577,6 @@
|
||||
37BD07C72698B27B003EBB87 /* Introspect in Frameworks */,
|
||||
3736A202286BB72300C9E5EE /* libfribidi.xcframework in Frameworks */,
|
||||
37FB284D2722099E00A57617 /* SDWebImageWebPCoder in Frameworks */,
|
||||
37A5DBC4285DFF5400CA4DD1 /* SwiftUIPager in Frameworks */,
|
||||
3736A208286BB72300C9E5EE /* libcrypto.xcframework in Frameworks */,
|
||||
37CF8B8428535E4F00B71E37 /* SDWebImage in Frameworks */,
|
||||
3736A20E286BB72300C9E5EE /* libass.xcframework in Frameworks */,
|
||||
@@ -1622,7 +1618,6 @@
|
||||
370F4FCA27CC16CB001B35DC /* libXau.6.dylib in Frameworks */,
|
||||
370F4FD527CC16CB001B35DC /* libfontconfig.1.dylib in Frameworks */,
|
||||
375B8AB728B583BD00397B31 /* KeychainAccess in Frameworks */,
|
||||
37A5DBC6285E06B100CA4DD1 /* SwiftUIPager in Frameworks */,
|
||||
370F4FCE27CC16CB001B35DC /* libswresample.4.3.100.dylib in Frameworks */,
|
||||
370F4FDA27CC16CB001B35DC /* libmpv.dylib in Frameworks */,
|
||||
370F4FD827CC16CB001B35DC /* libcrypto.3.dylib in Frameworks */,
|
||||
@@ -1691,7 +1686,6 @@
|
||||
3772003A27E8EEBE00CB2475 /* CoreMedia.framework in Frameworks */,
|
||||
372915E42687E33E00F5A35B /* Defaults in Frameworks */,
|
||||
3772003B27E8EEC800CB2475 /* libbz2.tbd in Frameworks */,
|
||||
37E80F43287B7AAF00561799 /* SwiftUIPager in Frameworks */,
|
||||
37BADCA9269A570B009BE4FB /* Alamofire in Frameworks */,
|
||||
37D4B19D2671817900C925CA /* SwiftyJSON in Frameworks */,
|
||||
3797757D268922D100DD52A8 /* Siesta in Frameworks */,
|
||||
@@ -2599,7 +2593,6 @@
|
||||
37FB285527220D9000A57617 /* SDWebImagePINPlugin */,
|
||||
3765917B27237D21009F956E /* PINCache */,
|
||||
37CF8B8328535E4F00B71E37 /* SDWebImage */,
|
||||
37A5DBC3285DFF5400CA4DD1 /* SwiftUIPager */,
|
||||
372AA40F286D067B0000B1DC /* Repeat */,
|
||||
37EE6DC428A305AD00BFD632 /* Reachability */,
|
||||
3799AC0828B03CED001376F9 /* ActiveLabel */,
|
||||
@@ -2639,7 +2632,6 @@
|
||||
3703206727D2BB45007A0CB8 /* Defaults */,
|
||||
3703206927D2BB49007A0CB8 /* Alamofire */,
|
||||
37CF8B8528535E5A00B71E37 /* SDWebImage */,
|
||||
37A5DBC5285E06B100CA4DD1 /* SwiftUIPager */,
|
||||
372AA413286D06A10000B1DC /* Repeat */,
|
||||
375B8AB628B583BD00397B31 /* KeychainAccess */,
|
||||
3797104A28D3D18800D5F53C /* SDWebImageSwiftUI */,
|
||||
@@ -2718,7 +2710,6 @@
|
||||
3765917D27237D2A009F956E /* PINCache */,
|
||||
37CF8B8728535E6300B71E37 /* SDWebImage */,
|
||||
372AA411286D06950000B1DC /* Repeat */,
|
||||
37E80F42287B7AAF00561799 /* SwiftUIPager */,
|
||||
3732BFCF28B83763009F3F4D /* KeychainAccess */,
|
||||
3797104C28D3D19100D5F53C /* SDWebImageSwiftUI */,
|
||||
377F9F75294403880043F856 /* Cache */,
|
||||
@@ -2830,7 +2821,6 @@
|
||||
37FB285227220D8400A57617 /* XCRemoteSwiftPackageReference "SDWebImagePINPlugin" */,
|
||||
3765917827237D07009F956E /* XCRemoteSwiftPackageReference "PINCache" */,
|
||||
37CF8B8228535E4F00B71E37 /* XCRemoteSwiftPackageReference "SDWebImage" */,
|
||||
37A5DBC2285DFF5400CA4DD1 /* XCRemoteSwiftPackageReference "SwiftUIPager" */,
|
||||
372AA40E286D067B0000B1DC /* XCRemoteSwiftPackageReference "Repeat" */,
|
||||
37EE6DC328A305AD00BFD632 /* XCRemoteSwiftPackageReference "Reachability" */,
|
||||
3799AC0728B03CEC001376F9 /* XCRemoteSwiftPackageReference "ActiveLabel.swift" */,
|
||||
@@ -3972,7 +3962,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = "Open in Yattee/Open in Yattee.entitlements";
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_FILE = "Open in Yattee/Info.plist";
|
||||
INFOPLIST_KEY_CFBundleDisplayName = "Open in Yattee";
|
||||
@@ -3983,7 +3973,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.app.Open-in-Yattee";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
@@ -4003,7 +3993,7 @@
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 78Z5H3M6RJ;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_FILE = "Open in Yattee/Info.plist";
|
||||
@@ -4015,7 +4005,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@executable_path/../../Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.app.Open-in-Yattee";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
@@ -4034,11 +4024,11 @@
|
||||
buildSettings = {
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "net.arekf.Shared-Tests";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = auto;
|
||||
@@ -4054,11 +4044,11 @@
|
||||
buildSettings = {
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "net.arekf.Shared-Tests";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = auto;
|
||||
@@ -4214,7 +4204,7 @@
|
||||
CODE_SIGN_ENTITLEMENTS = "iOS/Yattee (iOS).entitlements";
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"DEBUG=1",
|
||||
@@ -4238,7 +4228,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = (
|
||||
"-lstdc++",
|
||||
"-Wl,-no_compact_unwind",
|
||||
@@ -4267,7 +4257,7 @@
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 78Z5H3M6RJ;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = "GLES_SILENCE_DEPRECATION=1";
|
||||
@@ -4288,7 +4278,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = (
|
||||
"-lstdc++",
|
||||
"-Wl,-no_compact_unwind",
|
||||
@@ -4319,7 +4309,7 @@
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
ENABLE_APP_SANDBOX = YES;
|
||||
ENABLE_HARDENED_RUNTIME = YES;
|
||||
@@ -4338,7 +4328,7 @@
|
||||
"$(PROJECT_DIR)/Vendor/mpv/macOS/lib",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = "-Wl,-no_compact_unwind";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = stream.yattee.app;
|
||||
PRODUCT_NAME = Yattee;
|
||||
@@ -4361,7 +4351,7 @@
|
||||
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "3rd Party Mac Developer Application";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
"DEVELOPMENT_TEAM[sdk=macosx*]" = 78Z5H3M6RJ;
|
||||
ENABLE_APP_SANDBOX = YES;
|
||||
@@ -4381,7 +4371,7 @@
|
||||
"$(PROJECT_DIR)/Vendor/mpv/macOS/lib",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 11.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = "-Wl,-no_compact_unwind";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = stream.yattee.app;
|
||||
PRODUCT_NAME = Yattee;
|
||||
@@ -4399,7 +4389,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -4407,7 +4397,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.Tests-iOS";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
@@ -4423,7 +4413,7 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 15.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -4431,7 +4421,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.Tests-iOS";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = iphoneos;
|
||||
@@ -4449,7 +4439,7 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -4458,7 +4448,7 @@
|
||||
"@loader_path/../Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.Tests-macOS";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
@@ -4474,7 +4464,7 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEAD_CODE_STRIPPING = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
@@ -4483,7 +4473,7 @@
|
||||
"@loader_path/../Frameworks",
|
||||
);
|
||||
MACOSX_DEPLOYMENT_TARGET = 12.0;
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "stream.yattee.Tests-macOS";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
@@ -4500,7 +4490,7 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
CODE_SIGN_IDENTITY = "Apple Development";
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEVELOPMENT_ASSET_PATHS = "";
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
@@ -4516,7 +4506,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = (
|
||||
"-Wl,-no_compact_unwind",
|
||||
"-lstdc++",
|
||||
@@ -4540,7 +4530,7 @@
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "iPhone Distribution";
|
||||
CODE_SIGN_STYLE = Manual;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
DEVELOPMENT_ASSET_PATHS = "";
|
||||
"DEVELOPMENT_TEAM[sdk=appletvos*]" = 78Z5H3M6RJ;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
@@ -4557,7 +4547,7 @@
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
LIBRARY_SEARCH_PATHS = "$(inherited)";
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
OTHER_LDFLAGS = (
|
||||
"-Wl,-no_compact_unwind",
|
||||
"-lstdc++",
|
||||
@@ -4581,14 +4571,14 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = stream.yattee.YatteeUITests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
@@ -4605,14 +4595,14 @@
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
CODE_SIGN_STYLE = Automatic;
|
||||
CURRENT_PROJECT_VERSION = 142;
|
||||
CURRENT_PROJECT_VERSION = 148;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
"@loader_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.4.3;
|
||||
MARKETING_VERSION = 1.4.4;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = stream.yattee.YatteeUITests;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = appletvos;
|
||||
@@ -4855,14 +4845,6 @@
|
||||
kind = branch;
|
||||
};
|
||||
};
|
||||
37A5DBC2285DFF5400CA4DD1 /* XCRemoteSwiftPackageReference "SwiftUIPager" */ = {
|
||||
isa = XCRemoteSwiftPackageReference;
|
||||
repositoryURL = "https://github.com/fermoya/SwiftUIPager.git";
|
||||
requirement = {
|
||||
kind = upToNextMajorVersion;
|
||||
minimumVersion = 2.0.0;
|
||||
};
|
||||
};
|
||||
37BADCA32699FB72009BE4FB /* XCRemoteSwiftPackageReference "Alamofire" */ = {
|
||||
isa = XCRemoteSwiftPackageReference;
|
||||
repositoryURL = "https://github.com/Alamofire/Alamofire.git";
|
||||
@@ -5112,16 +5094,6 @@
|
||||
package = 3799AC0728B03CEC001376F9 /* XCRemoteSwiftPackageReference "ActiveLabel.swift" */;
|
||||
productName = ActiveLabel;
|
||||
};
|
||||
37A5DBC3285DFF5400CA4DD1 /* SwiftUIPager */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 37A5DBC2285DFF5400CA4DD1 /* XCRemoteSwiftPackageReference "SwiftUIPager" */;
|
||||
productName = SwiftUIPager;
|
||||
};
|
||||
37A5DBC5285E06B100CA4DD1 /* SwiftUIPager */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 37A5DBC2285DFF5400CA4DD1 /* XCRemoteSwiftPackageReference "SwiftUIPager" */;
|
||||
productName = SwiftUIPager;
|
||||
};
|
||||
37BADCA42699FB72009BE4FB /* Alamofire */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 37BADCA32699FB72009BE4FB /* XCRemoteSwiftPackageReference "Alamofire" */;
|
||||
@@ -5167,11 +5139,6 @@
|
||||
package = 37D4B19B2671817900C925CA /* XCRemoteSwiftPackageReference "SwiftyJSON" */;
|
||||
productName = SwiftyJSON;
|
||||
};
|
||||
37E80F42287B7AAF00561799 /* SwiftUIPager */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 37A5DBC2285DFF5400CA4DD1 /* XCRemoteSwiftPackageReference "SwiftUIPager" */;
|
||||
productName = SwiftUIPager;
|
||||
};
|
||||
37EE6DC428A305AD00BFD632 /* Reachability */ = {
|
||||
isa = XCSwiftPackageProductDependency;
|
||||
package = 37EE6DC328A305AD00BFD632 /* XCRemoteSwiftPackageReference "Reachability" */;
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
"location" : "https://github.com/SDWebImage/SDWebImage",
|
||||
"state" : {
|
||||
"branch" : "master",
|
||||
"revision" : "a549e9992293e5be2b3fab2df110ad5ac61f6661"
|
||||
"revision" : "09f0fdd1890b7c9420109bc7b45dcee91b66b7de"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -113,8 +113,8 @@
|
||||
"kind" : "remoteSourceControl",
|
||||
"location" : "https://github.com/SDWebImage/SDWebImageSwiftUI.git",
|
||||
"state" : {
|
||||
"revision" : "61fefe9c284fd41ddef77d02749e88f00c305196",
|
||||
"version" : "2.2.2"
|
||||
"revision" : "e837c37d45449fbd3b4745c10c5b5274e73edead",
|
||||
"version" : "2.2.3"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -162,15 +162,6 @@
|
||||
"version" : "0.2.3"
|
||||
}
|
||||
},
|
||||
{
|
||||
"identity" : "swiftuipager",
|
||||
"kind" : "remoteSourceControl",
|
||||
"location" : "https://github.com/fermoya/SwiftUIPager.git",
|
||||
"state" : {
|
||||
"revision" : "4ddc04c801aac143090bb14cf26603a3bf9c74cb",
|
||||
"version" : "2.5.0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"identity" : "swiftyjson",
|
||||
"kind" : "remoteSourceControl",
|
||||
|
||||
Reference in New Issue
Block a user