Fix panel background colors coding fallback

This commit is contained in:
Ilya Laktyushin
2019-12-25 13:16:50 +03:00
parent f13301f7d0
commit 18d5ce777e

View File

@@ -1339,10 +1339,9 @@ extension PresentationThemeChatInputPanel: Codable {
public convenience init(from decoder: Decoder) throws { public convenience init(from decoder: Decoder) throws {
let values = try decoder.container(keyedBy: CodingKeys.self) let values = try decoder.container(keyedBy: CodingKeys.self)
let panelBackgroundColor = try decodeColor(values, .panelBg) let codingPath = decoder.codingPath.map { $0.stringValue }.joined(separator: ".")
let panelBackgroundColorNoWallpaper = try decodeColor(values, .panelBgNoWallpaper) self.init(panelBackgroundColor: try decodeColor(values, .panelBg),
self.init(panelBackgroundColor: panelBackgroundColor, panelBackgroundColorNoWallpaper: try decodeColor(values, .panelBg, decoder: decoder, fallbackKey: codingPath + ".panelBgNoWallpaper"),
panelBackgroundColorNoWallpaper: panelBackgroundColorNoWallpaper ?? panelBackgroundColor,
panelSeparatorColor: try decodeColor(values, .panelSeparator), panelSeparatorColor: try decodeColor(values, .panelSeparator),
panelControlAccentColor: try decodeColor(values, .panelControlAccent), panelControlAccentColor: try decodeColor(values, .panelControlAccent),
panelControlColor: try decodeColor(values, .panelControl), panelControlColor: try decodeColor(values, .panelControl),