Fix: derive IsBackground from Type on layout load (legacy rows healed)
This commit is contained in:
@@ -598,11 +598,12 @@ public class LayoutStore : IDisposable
|
||||
while (reader.Read())
|
||||
{
|
||||
var sceneId = reader.GetString(1);
|
||||
var type = Enum.Parse<SourceType>(reader.GetString(3));
|
||||
var source = new Source
|
||||
{
|
||||
Id = reader.GetString(0),
|
||||
AssetId = reader.IsDBNull(2) ? null : reader.GetString(2),
|
||||
Type = Enum.Parse<SourceType>(reader.GetString(3)),
|
||||
Type = type,
|
||||
Name = reader.GetString(4),
|
||||
IsEnabled = reader.GetInt32(5) != 0,
|
||||
X = reader.GetDouble(6),
|
||||
@@ -613,7 +614,10 @@ public class LayoutStore : IDisposable
|
||||
MonitorIndex = reader.IsDBNull(11) ? null : reader.GetInt32(11),
|
||||
ClipShape = Enum.TryParse<ClipShape>(reader.GetString(12), out var clip) ? clip : ClipShape.Traditional,
|
||||
IsMirrored = reader.GetInt32(13) != 0,
|
||||
IsBackground = reader.GetInt32(14) != 0,
|
||||
// Rows saved before the Type setter derived the flag carry
|
||||
// IsBackground=0; derive from Type, keeping the persisted bit
|
||||
// for legacy DisplayCapture backdrops.
|
||||
IsBackground = type == SourceType.Background || reader.GetInt32(14) != 0,
|
||||
CaptureKey = reader.IsDBNull(15) ? null : reader.GetString(15),
|
||||
ShowDesktop = reader.GetInt32(16) != 0,
|
||||
ChatFontSize = reader.IsDBNull(17) ? 16 : reader.GetDouble(17),
|
||||
|
||||
Reference in New Issue
Block a user