Browse Source

remote widget sizing mode.

Dan Walmsley 7 years ago
parent
commit
fc3458fac0
1 changed files with 10 additions and 2 deletions
  1. 10 2
      src/Avalonia.Controls/Remote/RemoteWidget.cs

+ 10 - 2
src/Avalonia.Controls/Remote/RemoteWidget.cs

@@ -11,11 +11,19 @@ namespace Avalonia.Controls.Remote
 {
     public class RemoteWidget : Control
     {
+        public enum SizingMode
+        {
+            Local,
+            Remote
+        }
+
         private readonly IAvaloniaRemoteTransportConnection _connection;
         private FrameMessage _lastFrame;
         private WriteableBitmap _bitmap;
         public RemoteWidget(IAvaloniaRemoteTransportConnection connection)
         {
+            Mode = SizingMode.Local;
+
             _connection = connection;
             _connection.OnMessage += (t, msg) => Dispatcher.UIThread.Post(() => OnMessage(msg));
             _connection.Send(new ClientSupportedPixelFormatsMessage
@@ -28,7 +36,7 @@ namespace Avalonia.Controls.Remote
             });
         }
 
-        public bool PreviewerMode { get; set; }
+        public SizingMode Mode { get; set; }
 
         private void OnMessage(object msg)
         {
@@ -46,7 +54,7 @@ namespace Avalonia.Controls.Remote
 
         protected override void ArrangeCore(Rect finalRect)
         {
-            if (!PreviewerMode)
+            if (Mode == SizingMode.Local)
             {
                 _connection.Send(new ClientViewportAllocatedMessage
                 {