InputThemeSettings.deserialize constructor
InputThemeSettings.deserialize(
- BinaryReader reader
Deserialize.
Implementation
factory InputThemeSettings.deserialize(BinaryReader reader) {
// Read [InputThemeSettings] fields.
final flags = reader.readInt32();
final messageColorsAnimated = (flags & 4) != 0;
final baseTheme = reader.readObject() as BaseThemeBase;
final accentColor = reader.readInt32();
final hasOutboxAccentColorField = (flags & 8) != 0;
final outboxAccentColor =
hasOutboxAccentColorField ? reader.readInt32() : null;
final hasMessageColorsField = (flags & 1) != 0;
final messageColors =
hasMessageColorsField ? reader.readVectorInt32() : null;
final hasWallpaperField = (flags & 2) != 0;
final wallpaper =
hasWallpaperField ? reader.readObject() as InputWallPaperBase : null;
final hasWallpaperSettingsField = (flags & 2) != 0;
final wallpaperSettings = hasWallpaperSettingsField
? reader.readObject() as WallPaperSettingsBase
: null;
// Construct [InputThemeSettings] object.
final returnValue = InputThemeSettings(
messageColorsAnimated: messageColorsAnimated,
baseTheme: baseTheme,
accentColor: accentColor,
outboxAccentColor: outboxAccentColor,
messageColors: messageColors,
wallpaper: wallpaper,
wallpaperSettings: wallpaperSettings,
);
// Now return the deserialized [InputThemeSettings].
return returnValue;
}