mirror of
https://github.com/yattee/yattee.git
synced 2025-04-27 23:40:35 +05:30
Add setting to disable chapters and related, add info section in
player settings
This commit is contained in:
parent
04e56638ce
commit
4c707271c3
@ -263,6 +263,8 @@ extension Defaults.Keys {
|
|||||||
static let hideShorts = Key<Bool>("hideShorts", default: false)
|
static let hideShorts = Key<Bool>("hideShorts", default: false)
|
||||||
static let hideWatched = Key<Bool>("hideWatched", default: false)
|
static let hideWatched = Key<Bool>("hideWatched", default: false)
|
||||||
static let showInspector = Key<ShowInspectorSetting>("showInspector", default: .onlyLocal)
|
static let showInspector = Key<ShowInspectorSetting>("showInspector", default: .onlyLocal)
|
||||||
|
static let showChapters = Key<Bool>("showChapters", default: true)
|
||||||
|
static let showRelated = Key<Bool>("showRelated", default: true)
|
||||||
static let widgetsSettings = Key<[WidgetSettings]>("widgetsSettings", default: [])
|
static let widgetsSettings = Key<[WidgetSettings]>("widgetsSettings", default: [])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -184,6 +184,8 @@ struct VideoDetails: View {
|
|||||||
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
|
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
|
||||||
@Default(.playerSidebar) private var playerSidebar
|
@Default(.playerSidebar) private var playerSidebar
|
||||||
@Default(.showInspector) private var showInspector
|
@Default(.showInspector) private var showInspector
|
||||||
|
@Default(.showChapters) private var showChapters
|
||||||
|
@Default(.showRelated) private var showRelated
|
||||||
#if !os(tvOS)
|
#if !os(tvOS)
|
||||||
@Default(.showScrollToTopInComments) private var showScrollToTopInComments
|
@Default(.showScrollToTopInComments) private var showScrollToTopInComments
|
||||||
#endif
|
#endif
|
||||||
@ -309,29 +311,29 @@ struct VideoDetails: View {
|
|||||||
.padding(.horizontal)
|
.padding(.horizontal)
|
||||||
}
|
}
|
||||||
|
|
||||||
if player.videoBeingOpened.isNil,
|
if player.videoBeingOpened.isNil {
|
||||||
!video.isLocal,
|
if showChapters,
|
||||||
!video.chapters.isEmpty
|
!video.isLocal,
|
||||||
{
|
!video.chapters.isEmpty
|
||||||
Section(header: chaptersHeader) {
|
{
|
||||||
ChaptersView()
|
Section(header: chaptersHeader) {
|
||||||
|
ChaptersView()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if player.videoBeingOpened.isNil,
|
if showInspector == .always || video.isLocal {
|
||||||
video.isLocal || showInspector == .always
|
InspectorView(video: player.videoForDisplay)
|
||||||
{
|
.padding(.horizontal)
|
||||||
InspectorView(video: player.videoForDisplay)
|
}
|
||||||
.padding(.horizontal)
|
|
||||||
}
|
|
||||||
|
|
||||||
if player.videoBeingOpened.isNil,
|
if showRelated,
|
||||||
!sidebarQueue,
|
!sidebarQueue,
|
||||||
!(player.videoForDisplay?.related.isEmpty ?? true)
|
!(player.videoForDisplay?.related.isEmpty ?? true)
|
||||||
{
|
{
|
||||||
RelatedView()
|
RelatedView()
|
||||||
.padding(.horizontal)
|
.padding(.horizontal)
|
||||||
.padding(.top, 20)
|
.padding(.top, 20)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,6 +30,8 @@ struct PlayerSettings: View {
|
|||||||
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
|
@Default(.enableReturnYouTubeDislike) private var enableReturnYouTubeDislike
|
||||||
|
|
||||||
@Default(.showInspector) private var showInspector
|
@Default(.showInspector) private var showInspector
|
||||||
|
@Default(.showChapters) private var showChapters
|
||||||
|
@Default(.showRelated) private var showRelated
|
||||||
|
|
||||||
@ObservedObject private var accounts = AccountsModel.shared
|
@ObservedObject private var accounts = AccountsModel.shared
|
||||||
|
|
||||||
@ -73,8 +75,19 @@ struct PlayerSettings: View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if !os(tvOS)
|
#if !os(tvOS)
|
||||||
Section(header: SettingsHeader(text: "Inspector".localized())) {
|
Section(header: SettingsHeader(text: "Info".localized())) {
|
||||||
inspectorVisibilityPicker
|
expandVideoDescriptionToggle
|
||||||
|
showChaptersToggle
|
||||||
|
showRelatedToggle
|
||||||
|
#if os(macOS)
|
||||||
|
HStack {
|
||||||
|
Text("Inspector")
|
||||||
|
inspectorVisibilityPicker
|
||||||
|
}
|
||||||
|
.padding(.leading, 20)
|
||||||
|
#else
|
||||||
|
inspectorVisibilityPicker
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -96,9 +109,6 @@ struct PlayerSettings: View {
|
|||||||
showScrollToTopInCommentsToggle
|
showScrollToTopInCommentsToggle
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !os(tvOS)
|
|
||||||
expandVideoDescriptionToggle
|
|
||||||
#endif
|
|
||||||
returnYouTubeDislikeToggle
|
returnYouTubeDislikeToggle
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -240,15 +250,25 @@ struct PlayerSettings: View {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
private var inspectorVisibilityPicker: some View {
|
#if !os(tvOS)
|
||||||
Picker("Visibility", selection: $showInspector) {
|
private var inspectorVisibilityPicker: some View {
|
||||||
Text("Always").tag(ShowInspectorSetting.always)
|
Picker("Inspector", selection: $showInspector) {
|
||||||
Text("Only for local files and URLs").tag(ShowInspectorSetting.onlyLocal)
|
Text("Always").tag(ShowInspectorSetting.always)
|
||||||
|
Text("Only for local files and URLs").tag(ShowInspectorSetting.onlyLocal)
|
||||||
|
}
|
||||||
|
#if os(macOS)
|
||||||
|
.labelsHidden()
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#if os(macOS)
|
|
||||||
.labelsHidden()
|
private var showChaptersToggle: some View {
|
||||||
#endif
|
Toggle("Chapters", isOn: $showChapters)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private var showRelatedToggle: some View {
|
||||||
|
Toggle("Related", isOn: $showRelated)
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
struct PlayerSettings_Previews: PreviewProvider {
|
struct PlayerSettings_Previews: PreviewProvider {
|
||||||
|
@ -266,7 +266,7 @@ struct SettingsView: View {
|
|||||||
case .browsing:
|
case .browsing:
|
||||||
return 800
|
return 800
|
||||||
case .player:
|
case .player:
|
||||||
return 480
|
return 500
|
||||||
case .controls:
|
case .controls:
|
||||||
return 920
|
return 920
|
||||||
case .quality:
|
case .quality:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user