Browse Source

Hide GetWindowState from avn.idl because it returns something random

pull/20915/head
Nikita Tsukanov 4 days ago
parent
commit
9a0fa6f25e
  1. 2
      native/Avalonia.Native/src/OSX/WindowImpl.h
  2. 4
      src/Avalonia.Native/WindowImpl.cs
  3. 1
      src/Avalonia.Native/avn.idl

2
native/Avalonia.Native/src/OSX/WindowImpl.h

@ -56,7 +56,7 @@ BEGIN_INTERFACE_MAP()
virtual HRESULT SetTitleBarColor(AvnColor color) override; virtual HRESULT SetTitleBarColor(AvnColor color) override;
virtual HRESULT GetWindowState (AvnWindowState*ret) override; virtual HRESULT GetWindowState (AvnWindowState*ret);
virtual HRESULT TakeFocusFromChildren () override; virtual HRESULT TakeFocusFromChildren () override;

4
src/Avalonia.Native/WindowImpl.cs

@ -20,6 +20,7 @@ namespace Avalonia.Native
private readonly ITopLevelNativeMenuExporter _nativeMenuExporter; private readonly ITopLevelNativeMenuExporter _nativeMenuExporter;
private bool _canResize = true; private bool _canResize = true;
private bool _canMaximize = true; private bool _canMaximize = true;
private WindowState _windowState;
private Controls.WindowDecorations _decorations = Controls.WindowDecorations.Full; private Controls.WindowDecorations _decorations = Controls.WindowDecorations.Full;
internal WindowImpl(IAvaloniaNativeFactory factory, AvaloniaNativePlatformOptions opts) : base(factory) internal WindowImpl(IAvaloniaNativeFactory factory, AvaloniaNativePlatformOptions opts) : base(factory)
@ -61,6 +62,7 @@ namespace Avalonia.Native
void IAvnWindowEvents.WindowStateChanged(AvnWindowState state) void IAvnWindowEvents.WindowStateChanged(AvnWindowState state)
{ {
_parent._windowState = (WindowState)state;
_parent.InvalidateExtendedMargins(); _parent.InvalidateExtendedMargins();
_parent.WindowStateChanged?.Invoke((WindowState)state); _parent.WindowStateChanged?.Invoke((WindowState)state);
@ -110,7 +112,7 @@ namespace Avalonia.Native
public WindowState WindowState public WindowState WindowState
{ {
get => (WindowState)_native.WindowState; get => _windowState;
set => _native.SetWindowState((AvnWindowState)value); set => _native.SetWindowState((AvnWindowState)value);
} }

1
src/Avalonia.Native/avn.idl

@ -798,7 +798,6 @@ interface IAvnWindow : IAvnWindowBase
HRESULT SetTitle(char* utf8Title); HRESULT SetTitle(char* utf8Title);
HRESULT SetTitleBarColor(AvnColor color); HRESULT SetTitleBarColor(AvnColor color);
HRESULT SetWindowState(AvnWindowState state); HRESULT SetWindowState(AvnWindowState state);
HRESULT GetWindowState(AvnWindowState*ret);
HRESULT TakeFocusFromChildren(); HRESULT TakeFocusFromChildren();
HRESULT SetExtendClientArea(bool enable); HRESULT SetExtendClientArea(bool enable);
HRESULT GetExtendTitleBarHeight(double*ret); HRESULT GetExtendTitleBarHeight(double*ret);

Loading…
Cancel
Save