Browse Source

remote widget sizing mode.

pull/1975/head
Dan Walmsley 8 years ago
parent
commit
fc3458fac0
  1. 12
      src/Avalonia.Controls/Remote/RemoteWidget.cs

12
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
{

Loading…
Cancel
Save