diff --git a/Directory.Core.Build.props b/Directory.Core.Build.props
index 90acdb61..4f24099a 100644
--- a/Directory.Core.Build.props
+++ b/Directory.Core.Build.props
@@ -11,7 +11,7 @@
true
- true
+ true
true
\ No newline at end of file
diff --git a/src/Consolonia.Core/Drawing/ConsoloniaRenderInterface.cs b/src/Consolonia.Core/Drawing/ConsoloniaRenderInterface.cs
index 7f03c62e..998dfb1e 100644
--- a/src/Consolonia.Core/Drawing/ConsoloniaRenderInterface.cs
+++ b/src/Consolonia.Core/Drawing/ConsoloniaRenderInterface.cs
@@ -90,14 +90,12 @@ public IWriteableBitmapImpl LoadWriteableBitmap(Stream stream)
throw new NotImplementedException();
}
- IBitmapImpl IPlatformRenderInterface.LoadBitmapToWidth(Stream stream, int width,
- BitmapInterpolationMode interpolationMode)
+ IBitmapImpl IPlatformRenderInterface.LoadBitmapToWidth(Stream stream, int width, BitmapInterpolationMode interpolationMode)
{
throw new NotImplementedException();
}
- IBitmapImpl IPlatformRenderInterface.LoadBitmapToHeight(Stream stream, int height,
- BitmapInterpolationMode interpolationMode)
+ IBitmapImpl IPlatformRenderInterface.LoadBitmapToHeight(Stream stream, int height, BitmapInterpolationMode interpolationMode)
{
throw new NotImplementedException();
}
@@ -107,7 +105,7 @@ IBitmapImpl IPlatformRenderInterface.ResizeBitmap(IBitmapImpl bitmapImpl, PixelS
{
throw new NotImplementedException();
}
-
+
public IBitmapImpl LoadBitmap(
PixelFormat format,
AlphaFormat alphaFormat,
@@ -119,11 +117,10 @@ public IBitmapImpl LoadBitmap(
throw new NotImplementedException();
}
- public IGlyphRunImpl CreateGlyphRun(IGlyphTypeface glyphTypeface, double fontRenderingEmSize,
- IReadOnlyList glyphInfos,
+ public IGlyphRunImpl CreateGlyphRun(IGlyphTypeface glyphTypeface, double fontRenderingEmSize, IReadOnlyList glyphInfos,
Point baselineOrigin)
{
- return new GlyphRunImpl(glyphTypeface, glyphInfos, baselineOrigin);
+ return new GlyphRunImpl(glyphTypeface,glyphInfos,baselineOrigin);
}
public IPlatformRenderInterfaceContext CreateBackendContext(IPlatformGraphicsContext graphicsApiContext)
diff --git a/src/Consolonia.Core/Drawing/DrawingContextImpl.cs b/src/Consolonia.Core/Drawing/DrawingContextImpl.cs
index eca569f5..17e18ac6 100644
--- a/src/Consolonia.Core/Drawing/DrawingContextImpl.cs
+++ b/src/Consolonia.Core/Drawing/DrawingContextImpl.cs
@@ -170,7 +170,6 @@ public void DrawGlyphRun(IBrush foreground, IGlyphRunImpl glyphRun)
ConsoloniaPlatform.RaiseNotSupported(17, glyphRun);
throw new InvalidProgramException();
}
-
if (glyphRun.FontRenderingEmSize.IsNearlyEqual(0)) return;
if (!glyphRun.FontRenderingEmSize.IsNearlyEqual(1))
{
@@ -196,9 +195,9 @@ public void PushClip(Rect clip)
public void PushClip(RoundedRect clip)
{
- if (clip.IsRounded)
+ if(clip.IsRounded)
ConsoloniaPlatform.RaiseNotSupported(2);
-
+
PushClip(clip.Rect);
}
@@ -352,7 +351,7 @@ void DrawPixelAndMoveHead(int count)
}
}
}
-
+
private void DrawStringInternal(IBrush foreground, string str, Point origin = new())
{
if (foreground is not FourBitColorBrush { Mode: PixelBackgroundMode.Colored } consoleColorBrush)
diff --git a/src/Consolonia.Core/Drawing/FourBitColorBrush.cs b/src/Consolonia.Core/Drawing/FourBitColorBrush.cs
index bd523b82..0a9d5242 100644
--- a/src/Consolonia.Core/Drawing/FourBitColorBrush.cs
+++ b/src/Consolonia.Core/Drawing/FourBitColorBrush.cs
@@ -43,19 +43,19 @@ public ConsoleColor Color
set => SetValue(ColorProperty, value);
}
- public double Opacity => 1;
- public ITransform Transform => null;
- public RelativePoint TransformOrigin => RelativePoint.TopLeft;
-
// ReSharper disable once UnusedMember.Global used by Avalonia
// ReSharper disable once UnusedParameter.Global
public IBrush ProvideValue(IServiceProvider _)
{
return this;
}
+
+ public double Opacity => 1;
+ public ITransform Transform => null;
+ public RelativePoint TransformOrigin => RelativePoint.TopLeft;
}
- public class FourBitBrushConverter : TypeConverter
+ public class FourBitBrushConverter : TypeConverter
{
public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType)
{
@@ -66,11 +66,15 @@ public override object ConvertFrom(
ITypeDescriptorContext context, CultureInfo culture, object value)
{
if (value is string s)
- return Enum.TryParse(s, out ConsoleColor result)
- ? result
+ {
+ return Enum.TryParse(s, out ConsoleColor result)
+ ? result
: null;
-
+ }
+
return null;
}
}
+
+
}
\ No newline at end of file
diff --git a/src/Consolonia.Core/Drawing/RenderTarget.cs b/src/Consolonia.Core/Drawing/RenderTarget.cs
index d4cacc4e..096edd7b 100644
--- a/src/Consolonia.Core/Drawing/RenderTarget.cs
+++ b/src/Consolonia.Core/Drawing/RenderTarget.cs
@@ -67,13 +67,6 @@ void IDrawingContextLayerImpl.Blit(IDrawingContextImpl context)
bool IDrawingContextLayerImpl.CanBlit => true;
- public IDrawingContextImpl CreateDrawingContext()
- {
- return new DrawingContextImpl(_consoleWindow, _bufferBuffer);
- }
-
- public bool IsCorrupted => false;
-
private void OnResized(Size size, WindowResizeReason reason)
{
@@ -117,7 +110,7 @@ private void RenderToDevice()
throw new InvalidOperationException("Caret is already shown");
caretPosition = new PixelBufferCoordinate(x, y);
}
-
+
/* todo: There is not IWindowImpl.Invalidate anymore.
if (!_consoleWindow.InvalidatedRects.Any(rect =>
rect.ContainsExclusive(new Point(x, y)))) continue;*/
@@ -228,5 +221,12 @@ public void Flush()
_stringBuilder.Clear();
}
}
+
+ public IDrawingContextImpl CreateDrawingContext()
+ {
+ return new DrawingContextImpl(_consoleWindow, _bufferBuffer);
+ }
+
+ public bool IsCorrupted => false;
}
}
\ No newline at end of file
diff --git a/src/Consolonia.Core/Infrastructure/ArrowsAndKeyboardNavigationHandler.cs b/src/Consolonia.Core/Infrastructure/ArrowsAndKeyboardNavigationHandler.cs
index 4beb2077..7cd82e27 100644
--- a/src/Consolonia.Core/Infrastructure/ArrowsAndKeyboardNavigationHandler.cs
+++ b/src/Consolonia.Core/Infrastructure/ArrowsAndKeyboardNavigationHandler.cs
@@ -10,11 +10,11 @@ namespace Consolonia.Core.Infrastructure
{
public class ArrowsAndKeyboardNavigationHandler : IKeyboardNavigationHandler
{
- private readonly IKeyboardNavigationHandler _keyboardNavigationHandler;
-
//todo: check XTFocus https://github.com/jinek/Consolonia/issues/105#issuecomment-2089015880
private IInputRoot _owner;
+ private readonly IKeyboardNavigationHandler _keyboardNavigationHandler;
+
public ArrowsAndKeyboardNavigationHandler(IKeyboardNavigationHandler keyboardNavigationHandler)
{
_keyboardNavigationHandler = keyboardNavigationHandler;
diff --git a/src/Consolonia.Core/Infrastructure/ConsoleWindow.cs b/src/Consolonia.Core/Infrastructure/ConsoleWindow.cs
index e5f9c148..7325cffe 100644
--- a/src/Consolonia.Core/Infrastructure/ConsoleWindow.cs
+++ b/src/Consolonia.Core/Infrastructure/ConsoleWindow.cs
@@ -31,8 +31,6 @@ public ConsoleWindow()
Console.FocusEvent += ConsoleOnFocusEvent;
}
- private IMouseDevice MouseDevice { get; }
-
public void Dispose()
{
Closed?.Invoke();
@@ -42,7 +40,7 @@ public void Dispose()
Console.FocusEvent -= ConsoleOnFocusEvent;
Console.Dispose();
}
-
+
public void SetInputRoot(IInputRoot inputRoot)
{
_inputRoot = inputRoot;
@@ -78,7 +76,7 @@ public void SetFrameThemeVariant(PlatformThemeVariant themeVariant)
{
//todo:
}
-
+
public Size ClientSize
{
get
@@ -106,6 +104,7 @@ public Size ClientSize
public Compositor Compositor { get; } = new(null);
public Action Closed { get; set; }
public Action LostFocus { get; set; }
+ private IMouseDevice MouseDevice { get; }
public WindowTransparencyLevel TransparencyLevel => WindowTransparencyLevel.None;
@@ -241,14 +240,6 @@ public void SetExtendClientAreaTitleBarHeightHint(double titleBarHeight)
// ReSharper disable once UnassignedGetOnlyAutoProperty todo: what is this property
public Thickness OffScreenMargin { get; }
- public object TryGetFeature(Type featureType)
- {
- if (featureType == typeof(ISystemNavigationManagerImpl))
- return null;
- if (featureType == typeof(ITextInputMethodImpl)) return null;
- throw new NotImplementedException("Consider this");
- }
-
private void ConsoleOnMouseEvent(RawPointerEventType type, Point point, Vector? wheelDelta,
RawInputModifiers modifiers)
{
@@ -342,5 +333,16 @@ await Dispatcher.UIThread.InvokeAsync(() =>
}, DispatcherPriority.Input);
}
}
+
+ public object TryGetFeature(Type featureType)
+ {
+ if (featureType == typeof(ISystemNavigationManagerImpl))
+ return null;
+ if (featureType == typeof(ITextInputMethodImpl))
+ {
+ return null;
+ }
+ throw new NotImplementedException("Consider this");
+ }
}
}
\ No newline at end of file
diff --git a/src/Consolonia.Core/Infrastructure/ConsoloniaPlatform.cs b/src/Consolonia.Core/Infrastructure/ConsoloniaPlatform.cs
index d35f111e..0026ec6b 100644
--- a/src/Consolonia.Core/Infrastructure/ConsoloniaPlatform.cs
+++ b/src/Consolonia.Core/Infrastructure/ConsoloniaPlatform.cs
@@ -41,7 +41,7 @@ public void Initialize()
.Bind().ToConstant(new UiThreadRenderTimer(120))
.Bind().ToConstant(new ManagedDispatcherImpl(null))
/*.Bind().ToConstant(new SleepLoopRenderTimer(120))*/
- /*SleepLoopRenderTimer : IRenderTimer*/
+ /*SleepLoopRenderTimer : IRenderTimer*/
/*.Bind().ToConstant(new RenderLoop()) todo: is internal now*/
.Bind().ToConstant(new PlatformHotkeyConfiguration(KeyModifiers.Control))
.Bind().ToConstant(new ConsoleKeyboardDevice())
diff --git a/src/Consolonia.Core/Infrastructure/ExceptionSink.cs b/src/Consolonia.Core/Infrastructure/ExceptionSink.cs
index 717fdf66..ba5bf7bb 100644
--- a/src/Consolonia.Core/Infrastructure/ExceptionSink.cs
+++ b/src/Consolonia.Core/Infrastructure/ExceptionSink.cs
@@ -16,7 +16,9 @@ public bool IsEnabled(LogEventLevel level, string area)
public void Log(LogEventLevel level, string area, object source, string messageTemplate)
{
Log(level, area, source, messageTemplate, Array.Empty