ui(properties): geometry for every placeable layer, and no fake opacity on a blur
Two holes in the blur's property panel, both of which also affected other layers: - X/Y/W/H were gated on IsWebcamSelected, so a blur (or an image, chat box or alert zone) had no numeric position or size at all — only dragging. The block is generic: it always edited SelectedElement's own values, so the gate was the only thing excluding them. - Opacity showed for a blur, but the compositor's blur reads BlurAmount — the slider would have moved a number that changes nothing in the output. Hidden for blur layers. Blur panel is now: Box | Circle, strength, and the shared geometry fields.
This commit is contained in:
@@ -314,6 +314,7 @@
|
|||||||
<!-- Opacity + mirror/shape (draggable elements: image, webcam) -->
|
<!-- Opacity + mirror/shape (draggable elements: image, webcam) -->
|
||||||
<StackPanel Visibility="{Binding SelectedElement.IsDraggable, Converter={StaticResource BoolToVis}}" Margin="0,0,0,8">
|
<StackPanel Visibility="{Binding SelectedElement.IsDraggable, Converter={StaticResource BoolToVis}}" Margin="0,0,0,8">
|
||||||
<StackPanel Visibility="{Binding SelectedElement.IsChatBox, Converter={StaticResource InverseBoolToVis}}">
|
<StackPanel Visibility="{Binding SelectedElement.IsChatBox, Converter={StaticResource InverseBoolToVis}}">
|
||||||
|
<StackPanel Visibility="{Binding SelectedElement.IsBlur, Converter={StaticResource InverseBoolToVis}}">
|
||||||
<TextBlock Text="Opacity" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11" Margin="0,0,0,2"/>
|
<TextBlock Text="Opacity" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11" Margin="0,0,0,2"/>
|
||||||
<DockPanel Margin="0,0,0,6">
|
<DockPanel Margin="0,0,0,6">
|
||||||
<TextBlock x:Name="OpacityValueText" Text="100%" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11"
|
<TextBlock x:Name="OpacityValueText" Text="100%" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11"
|
||||||
@@ -322,6 +323,7 @@
|
|||||||
Value="{Binding SelectedElement.Opacity, Mode=TwoWay}"
|
Value="{Binding SelectedElement.Opacity, Mode=TwoWay}"
|
||||||
ValueChanged="OpacitySlider_ValueChanged" VerticalAlignment="Center"/>
|
ValueChanged="OpacitySlider_ValueChanged" VerticalAlignment="Center"/>
|
||||||
</DockPanel>
|
</DockPanel>
|
||||||
|
</StackPanel>
|
||||||
</StackPanel>
|
</StackPanel>
|
||||||
<!-- TASK 59: the shape is a CHOICE (Rect | Circle) under a
|
<!-- TASK 59: the shape is a CHOICE (Rect | Circle) under a
|
||||||
"Shape" title, with Rect selected by default — the circle
|
"Shape" title, with Rect selected by default — the circle
|
||||||
@@ -383,7 +385,7 @@
|
|||||||
IsWebcamSelected (the same condition as the mirror/shape row
|
IsWebcamSelected (the same condition as the mirror/shape row
|
||||||
above) so the webcam's border/background section stays the
|
above) so the webcam's border/background section stays the
|
||||||
one panel bound to SelectedElement.IsWebcam. -->
|
one panel bound to SelectedElement.IsWebcam. -->
|
||||||
<StackPanel Visibility="{Binding IsWebcamSelected, Converter={StaticResource BoolToVis}}" Margin="0,0,0,8">
|
<StackPanel Visibility="{Binding SelectedElement.IsDraggable, Converter={StaticResource BoolToVis}}" Margin="0,0,0,8">
|
||||||
<TextBlock Text="Geometry" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11" FontWeight="SemiBold" Margin="0,8,0,4"/>
|
<TextBlock Text="Geometry" Foreground="{StaticResource Brush.OnSurfaceVariant}" FontSize="11" FontWeight="SemiBold" Margin="0,8,0,4"/>
|
||||||
<!-- TASK 61: the four fields share ONE fixed width — wide enough
|
<!-- TASK 61: the four fields share ONE fixed width — wide enough
|
||||||
for the largest geometry value (1920, plus a typed sign) and
|
for the largest geometry value (1920, plus a typed sign) and
|
||||||
|
|||||||
Reference in New Issue
Block a user