feat: restore legacy modal and drag behavior

This commit is contained in:
2026-07-16 01:33:48 +09:00
parent 83398044c6
commit d7ec571343
30 changed files with 3597 additions and 321 deletions

View File

@@ -14,7 +14,7 @@ public sealed class LegacyPlayoutWebContractTests
Path.Combine(WebRoot, "playout-ui.js"));
[Fact]
public void ShellExposesOriginalPlayoutBackgroundAndFadeControls()
public void ShellExposesBackgroundControlsButKeepsOriginalHiddenFadeStateInert()
{
foreach (var id in new[]
{
@@ -40,10 +40,11 @@ public sealed class LegacyPlayoutWebContractTests
var fadeMarkup = ExtractElement(Markup, "playout-fade-duration", "</select>");
Assert.Equal(20, CountOccurrences(fadeMarkup, "<option value="));
Assert.Contains(
"class=\"fade-control\" for=\"playout-fade-duration\">DissolveTime</label>",
"class=\"fade-control\" for=\"playout-fade-duration\" hidden",
Markup,
StringComparison.Ordinal);
Assert.DoesNotContain(" hidden", fadeMarkup, StringComparison.Ordinal);
Assert.Contains("hidden aria-hidden=\"true\" tabindex=\"-1\"", fadeMarkup,
StringComparison.Ordinal);
for (var index = 0; index < 20; index++)
{
Assert.Contains(
@@ -65,8 +66,7 @@ public sealed class LegacyPlayoutWebContractTests
"next-playout",
"take-out",
"choose-background",
"toggle-background",
"set-fade-duration"
"toggle-background"
})
{
Assert.Contains($"\"{intent}\"", Script, StringComparison.Ordinal);
@@ -82,6 +82,14 @@ public sealed class LegacyPlayoutWebContractTests
Assert.Contains("post(\"take-in\", {})", Script, StringComparison.Ordinal);
Assert.Contains("post(\"next-playout\", {})", Script, StringComparison.Ordinal);
Assert.Contains("post(\"take-out\", {})", Script, StringComparison.Ordinal);
Assert.DoesNotContain("post(\"set-fade-duration\"", Script,
StringComparison.Ordinal);
Assert.DoesNotContain("fadeDuration.addEventListener", Script,
StringComparison.Ordinal);
Assert.Contains("fadeDuration.disabled = true;", Script,
StringComparison.Ordinal);
Assert.Contains("fadeDuration.value = String(playout.fadeDuration);", Script,
StringComparison.Ordinal);
}
[Fact]
@@ -92,7 +100,11 @@ public sealed class LegacyPlayoutWebContractTests
Assert.Contains("event.key === \"F3\"", Script, StringComparison.Ordinal);
Assert.Contains("event.key === \"F8\"", Script, StringComparison.Ordinal);
Assert.Contains("event.key === \"Escape\"", Script, StringComparison.Ordinal);
Assert.Contains("event.defaultPrevented || event.repeat || hasOpenDialog()", Script,
Assert.Contains("if (event.defaultPrevented) return;", Script,
StringComparison.Ordinal);
Assert.Contains("if (hasOpenDialog())", Script,
StringComparison.Ordinal);
Assert.Contains("if (legacyShortcut) event.preventDefault();", Script,
StringComparison.Ordinal);
}