modified each other mode has own side and offset

This commit is contained in:
2026-08-08 23:27:28 +05:00
parent 5ecc46f7a3
commit 2af494d2f6
7 changed files with 110 additions and 35 deletions
+11 -1
View File
@@ -17,13 +17,23 @@ public sealed partial class AppSettings : ObservableObject
[ObservableProperty]
private PopupPlacementMode _placementMode = PopupPlacementMode.AtCursor;
// Сторона и отступ хранятся отдельно для каждого режима: у курсора и у
// каретки удобны разные настройки, и переключение режима их не сбрасывает
[ObservableProperty]
private CursorCorner _cursorCorner = CursorCorner.BottomRight;
private AnchorSide _cursorSide = AnchorSide.BottomRight;
/// <summary>Отступ от курсора в единицах WPF.</summary>
[ObservableProperty]
private double _cursorOffset = 16;
[ObservableProperty]
private AnchorSide _caretSide = AnchorSide.BottomRight;
/// <summary>Отступ от каретки в единицах WPF.</summary>
[ObservableProperty]
private double _caretOffset = 16;
[ObservableProperty]
private ScreenPosition _screenPosition = ScreenPosition.BottomRight;
+6 -5
View File
@@ -21,13 +21,14 @@ public enum PopupPlacementMode
/// <summary>
/// С какой стороны от курсора или каретки показывать подсказку.
/// </summary>
public enum CursorCorner
public enum AnchorSide
{
BottomRight,
BottomLeft,
TopRight,
TopLeft,
TopRight,
Left,
Right,
BottomLeft,
BottomRight,
}
/// <summary>