mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-11-29 11:25:38 +00:00
Don't display unsupported themes in Auto-Night settings
This commit is contained in:
parent
148d85bba3
commit
46ffac9bc6
@ -245,7 +245,7 @@ private enum ThemeAutoNightSettingsControllerEntry: ItemListNodeEntry {
|
|||||||
case let .themeHeader(theme, title):
|
case let .themeHeader(theme, title):
|
||||||
return ItemListSectionHeaderItem(theme: theme, text: title, sectionId: self.section)
|
return ItemListSectionHeaderItem(theme: theme, text: title, sectionId: self.section)
|
||||||
case let .themeItem(theme, strings, themes, currentTheme, themeSpecificAccentColors):
|
case let .themeItem(theme, strings, themes, currentTheme, themeSpecificAccentColors):
|
||||||
return ThemeSettingsThemeItem(context: arguments.context, theme: theme, strings: strings, sectionId: self.section, themes: themes, themeSpecificAccentColors: themeSpecificAccentColors, currentTheme: currentTheme, updatedTheme: { theme in
|
return ThemeSettingsThemeItem(context: arguments.context, theme: theme, strings: strings, sectionId: self.section, themes: themes, displayUnsupported: false, themeSpecificAccentColors: themeSpecificAccentColors, currentTheme: currentTheme, updatedTheme: { theme in
|
||||||
arguments.updateTheme(theme)
|
arguments.updateTheme(theme)
|
||||||
}, contextAction: nil)
|
}, contextAction: nil)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -317,7 +317,7 @@ private enum ThemeSettingsControllerEntry: ItemListNodeEntry {
|
|||||||
case let .themeListHeader(theme, text):
|
case let .themeListHeader(theme, text):
|
||||||
return ItemListSectionHeaderItem(theme: theme, text: text, sectionId: self.section)
|
return ItemListSectionHeaderItem(theme: theme, text: text, sectionId: self.section)
|
||||||
case let .themeItem(theme, strings, themes, currentTheme, themeSpecificAccentColors, _):
|
case let .themeItem(theme, strings, themes, currentTheme, themeSpecificAccentColors, _):
|
||||||
return ThemeSettingsThemeItem(context: arguments.context, theme: theme, strings: strings, sectionId: self.section, themes: themes, themeSpecificAccentColors: themeSpecificAccentColors, currentTheme: currentTheme, updatedTheme: { theme in
|
return ThemeSettingsThemeItem(context: arguments.context, theme: theme, strings: strings, sectionId: self.section, themes: themes, displayUnsupported: true, themeSpecificAccentColors: themeSpecificAccentColors, currentTheme: currentTheme, updatedTheme: { theme in
|
||||||
if case let .cloud(theme) = theme, theme.theme.file == nil {
|
if case let .cloud(theme) = theme, theme.theme.file == nil {
|
||||||
if theme.theme.isCreator {
|
if theme.theme.isCreator {
|
||||||
arguments.editTheme(theme)
|
arguments.editTheme(theme)
|
||||||
|
|||||||
@ -87,17 +87,19 @@ class ThemeSettingsThemeItem: ListViewItem, ItemListItem {
|
|||||||
let theme: PresentationTheme
|
let theme: PresentationTheme
|
||||||
let strings: PresentationStrings
|
let strings: PresentationStrings
|
||||||
let themes: [PresentationThemeReference]
|
let themes: [PresentationThemeReference]
|
||||||
|
let displayUnsupported: Bool
|
||||||
let themeSpecificAccentColors: [Int64: PresentationThemeAccentColor]
|
let themeSpecificAccentColors: [Int64: PresentationThemeAccentColor]
|
||||||
let currentTheme: PresentationThemeReference
|
let currentTheme: PresentationThemeReference
|
||||||
let updatedTheme: (PresentationThemeReference) -> Void
|
let updatedTheme: (PresentationThemeReference) -> Void
|
||||||
let contextAction: ((PresentationThemeReference, ASDisplayNode, ContextGesture?) -> Void)?
|
let contextAction: ((PresentationThemeReference, ASDisplayNode, ContextGesture?) -> Void)?
|
||||||
let tag: ItemListItemTag?
|
let tag: ItemListItemTag?
|
||||||
|
|
||||||
init(context: AccountContext, theme: PresentationTheme, strings: PresentationStrings, sectionId: ItemListSectionId, themes: [PresentationThemeReference], themeSpecificAccentColors: [Int64: PresentationThemeAccentColor], currentTheme: PresentationThemeReference, updatedTheme: @escaping (PresentationThemeReference) -> Void, contextAction: ((PresentationThemeReference, ASDisplayNode, ContextGesture?) -> Void)?, tag: ItemListItemTag? = nil) {
|
init(context: AccountContext, theme: PresentationTheme, strings: PresentationStrings, sectionId: ItemListSectionId, themes: [PresentationThemeReference], displayUnsupported: Bool, themeSpecificAccentColors: [Int64: PresentationThemeAccentColor], currentTheme: PresentationThemeReference, updatedTheme: @escaping (PresentationThemeReference) -> Void, contextAction: ((PresentationThemeReference, ASDisplayNode, ContextGesture?) -> Void)?, tag: ItemListItemTag? = nil) {
|
||||||
self.context = context
|
self.context = context
|
||||||
self.theme = theme
|
self.theme = theme
|
||||||
self.strings = strings
|
self.strings = strings
|
||||||
self.themes = themes
|
self.themes = themes
|
||||||
|
self.displayUnsupported = displayUnsupported
|
||||||
self.themeSpecificAccentColors = themeSpecificAccentColors
|
self.themeSpecificAccentColors = themeSpecificAccentColors
|
||||||
self.currentTheme = currentTheme
|
self.currentTheme = currentTheme
|
||||||
self.updatedTheme = updatedTheme
|
self.updatedTheme = updatedTheme
|
||||||
@ -389,6 +391,10 @@ class ThemeSettingsThemeItemNode: ListViewItemNode, ItemListItemNode {
|
|||||||
|
|
||||||
var i = 0
|
var i = 0
|
||||||
for theme in item.themes {
|
for theme in item.themes {
|
||||||
|
if !item.displayUnsupported, case let .cloud(theme) = theme, theme.theme.file == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
let imageNode: ThemeSettingsThemeItemIconNode
|
let imageNode: ThemeSettingsThemeItemIconNode
|
||||||
if strongSelf.nodes.count > i {
|
if strongSelf.nodes.count > i {
|
||||||
imageNode = strongSelf.nodes[i]
|
imageNode = strongSelf.nodes[i]
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user