/// <inheritdoc cref="IInput.SizeChanged" /> private void HostInputOnSizeChanged(object sender, ISizeEventArgs args) { Size Sanitize(Size size) { if (size.Width < 1 || size.Height < 1) { size = new Size(1, 1); } return(size); } var hostSize = Sanitize(HostInput.Size); if (HostSize != hostSize) { ResizeHost(hostSize); } var bufferSize = Sanitize(args.NewSize); if (BufferSize != bufferSize) { ResizeBuffers(bufferSize); } }
private void HostInputOnSizeChanged(object sender, ISizeEventArgs args) { Size Sanitize(Size size) { // to avoid issues for drivers that do not allow an empty buffer if (size.Width < 1 || size.Height < 1) { size = new Size(1, 1); } return(size); } Size updatedHostSize = Sanitize(HostInput.Size); if (HostSize != updatedHostSize) { ResizeHost(updatedHostSize); } Size updatedBufferSize = Sanitize(args.UpdatedSize); if (BufferSize != updatedBufferSize) { ResizeBuffers(updatedBufferSize); } }
/// <inheritdoc cref="IInput.SizeChanged" /> private void HostInputOnSizeChanged(object sender, ISizeEventArgs args) { var size = args.NewSize; // sanity check if (size.Width < 1 || size.Height < 1) { size = new Size(1, 1); } ResizeBuffers(size); ResizeViewport(size); }
private static void InputOnSizeChanged(object sender, ISizeEventArgs args) { Console.WriteLine($"{nameof(IInput.SizeChanged)} {args.UpdatedSize}"); }
/// <inheritdoc cref="IInput.SizeChanged"/> protected virtual void InputOnSizeChanged(object sender, ISizeEventArgs args) { }
private static void Window_Resized(object sender, ISizeEventArgs e) { }
protected override void InputOnSizeChanged(object sender, ISizeEventArgs args) { base.InputOnSizeChanged(sender, args); Resize(RenderHost, args.NewSize, ResizeHost); }
protected virtual void OnResize(ISizeEventArgs e) => Resized?.Invoke(this, e);
protected abstract void HandleResize(ISizeEventArgs e);