This commit is contained in:
2025-12-28 12:35:05 +08:00
parent aba56ac340
commit b1459901d0
4 changed files with 0 additions and 176 deletions
-3
View File
@@ -265,9 +265,6 @@ namespace Ink_Canvas
Activated += Window_Activated;
Deactivated += Window_Deactivated;
// 为浮动栏按钮添加触摸事件支持
AddTouchSupportToFloatingBarButtons();
// 为滑块控件添加触摸事件支持
AddTouchSupportToSliders();
@@ -3928,154 +3928,6 @@ namespace Ink_Canvas
#endregion
#region
/// <summary>
/// 为浮动栏按钮添加触摸和手写笔事件支持,让触摸和手写笔点击直接调用对应的鼠标点击方法
/// </summary>
private void AddTouchSupportToFloatingBarButtons()
{
// 为主要的浮动栏按钮添加触摸和手写笔事件支持
if (SymbolIconSelect != null)
{
SymbolIconSelect.TouchDown += (s, e) => SymbolIconSelect_MouseUp(s, null);
SymbolIconSelect.StylusDown += (s, e) => SymbolIconSelect_MouseUp(s, null);
}
if (SymbolIconUndo != null)
{
SymbolIconUndo.TouchDown += (s, e) => SymbolIconUndo_MouseUp(s, null);
SymbolIconUndo.StylusDown += (s, e) => SymbolIconUndo_MouseUp(s, null);
}
if (SymbolIconRedo != null)
{
SymbolIconRedo.TouchDown += (s, e) => SymbolIconRedo_MouseUp(s, null);
SymbolIconRedo.StylusDown += (s, e) => SymbolIconRedo_MouseUp(s, null);
}
if (SymbolIconDelete != null)
{
SymbolIconDelete.TouchDown += (s, e) => SymbolIconDelete_MouseUp(s, null);
SymbolIconDelete.StylusDown += (s, e) => SymbolIconDelete_MouseUp(s, null);
}
if (ToolsFloatingBarBtn != null)
{
ToolsFloatingBarBtn.TouchDown += (s, e) => SymbolIconTools_MouseUp(s, null);
ToolsFloatingBarBtn.StylusDown += (s, e) => SymbolIconTools_MouseUp(s, null);
}
if (RandomDrawPanel != null)
{
RandomDrawPanel.TouchDown += (s, e) => SymbolIconRand_MouseUp(s, null);
RandomDrawPanel.StylusDown += (s, e) => SymbolIconRand_MouseUp(s, null);
}
if (SingleDrawPanel != null)
{
SingleDrawPanel.TouchDown += (s, e) => SymbolIconRandOne_MouseUp(s, null);
SingleDrawPanel.StylusDown += (s, e) => SymbolIconRandOne_MouseUp(s, null);
}
// 注意:Screenshot和Settings按钮在XAML中没有直接的Name属性,需要通过其他方式绑定
// 这些按钮的事件处理已经在XAML中通过MouseUp绑定
if (BorderFloatingBarMoveControls != null)
{
BorderFloatingBarMoveControls.TouchDown += (s, e) => SymbolIconEmoji_MouseUp(s, null);
BorderFloatingBarMoveControls.StylusDown += (s, e) => SymbolIconEmoji_MouseUp(s, null);
}
// 白板模式下的按钮不添加触摸事件支持,保持原有的鼠标事件处理
// 为快捷调色盘按钮添加触摸和手写笔事件支持
if (QuickColorWhite != null)
{
QuickColorWhite.TouchDown += (s, e) => QuickColorWhite_Click(s, null);
QuickColorWhite.StylusDown += (s, e) => QuickColorWhite_Click(s, null);
}
if (QuickColorOrange != null)
{
QuickColorOrange.TouchDown += (s, e) => QuickColorOrange_Click(s, null);
QuickColorOrange.StylusDown += (s, e) => QuickColorOrange_Click(s, null);
}
if (QuickColorYellow != null)
{
QuickColorYellow.TouchDown += (s, e) => QuickColorYellow_Click(s, null);
QuickColorYellow.StylusDown += (s, e) => QuickColorYellow_Click(s, null);
}
if (QuickColorBlack != null)
{
QuickColorBlack.TouchDown += (s, e) => QuickColorBlack_Click(s, null);
QuickColorBlack.StylusDown += (s, e) => QuickColorBlack_Click(s, null);
}
if (QuickColorBlue != null)
{
QuickColorBlue.TouchDown += (s, e) => QuickColorBlue_Click(s, null);
QuickColorBlue.StylusDown += (s, e) => QuickColorBlue_Click(s, null);
}
if (QuickColorRed != null)
{
QuickColorRed.TouchDown += (s, e) => QuickColorRed_Click(s, null);
QuickColorRed.StylusDown += (s, e) => QuickColorRed_Click(s, null);
}
if (QuickColorGreen != null)
{
QuickColorGreen.TouchDown += (s, e) => QuickColorGreen_Click(s, null);
QuickColorGreen.StylusDown += (s, e) => QuickColorGreen_Click(s, null);
}
if (QuickColorPurple != null)
{
QuickColorPurple.TouchDown += (s, e) => QuickColorPurple_Click(s, null);
QuickColorPurple.StylusDown += (s, e) => QuickColorPurple_Click(s, null);
}
// 单行快捷调色盘
if (QuickColorWhiteSingle != null)
{
QuickColorWhiteSingle.TouchDown += (s, e) => QuickColorWhite_Click(s, null);
QuickColorWhiteSingle.StylusDown += (s, e) => QuickColorWhite_Click(s, null);
}
if (QuickColorOrangeSingle != null)
{
QuickColorOrangeSingle.TouchDown += (s, e) => QuickColorOrange_Click(s, null);
QuickColorOrangeSingle.StylusDown += (s, e) => QuickColorOrange_Click(s, null);
}
if (QuickColorYellowSingle != null)
{
QuickColorYellowSingle.TouchDown += (s, e) => QuickColorYellow_Click(s, null);
QuickColorYellowSingle.StylusDown += (s, e) => QuickColorYellow_Click(s, null);
}
if (QuickColorBlackSingle != null)
{
QuickColorBlackSingle.TouchDown += (s, e) => QuickColorBlack_Click(s, null);
QuickColorBlackSingle.StylusDown += (s, e) => QuickColorBlack_Click(s, null);
}
if (QuickColorRedSingle != null)
{
QuickColorRedSingle.TouchDown += (s, e) => QuickColorRed_Click(s, null);
QuickColorRedSingle.StylusDown += (s, e) => QuickColorRed_Click(s, null);
}
if (QuickColorGreenSingle != null)
{
QuickColorGreenSingle.TouchDown += (s, e) => QuickColorGreen_Click(s, null);
QuickColorGreenSingle.StylusDown += (s, e) => QuickColorGreen_Click(s, null);
}
}
/// <summary>
/// 强制禁用所有双指手势功能(当多指书写模式启用时)
/// </summary>
@@ -4103,7 +3955,5 @@ namespace Ink_Canvas
BoardToggleSwitchEnableTwoFingerRotation.IsOn = false;
}
#endregion
}
}
@@ -1817,18 +1817,6 @@ namespace Ink_Canvas
private void inkCanvas_MouseDown(object sender, MouseButtonEventArgs e)
{
// 检查鼠标点击是否发生在浮动栏区域,如果是则允许事件传播到浮动栏按钮
var mousePoint = e.GetPosition(this);
var floatingBarBounds = ViewboxFloatingBar.TransformToAncestor(this).TransformBounds(
new Rect(0, 0, ViewboxFloatingBar.ActualWidth, ViewboxFloatingBar.ActualHeight));
// 如果鼠标点击发生在浮动栏区域,不阻止事件传播,让浮动栏按钮能够接收鼠标事件
if (floatingBarBounds.Contains(mousePoint))
{
// 不设置 ViewboxFloatingBar.IsHitTestVisible = false,让浮动栏按钮能够接收鼠标事件
return;
}
inkCanvas.CaptureMouse();
ViewboxFloatingBar.IsHitTestVisible = false;
BlackboardUIGridForInkReplay.IsHitTestVisible = false;
@@ -211,17 +211,6 @@ namespace Ink_Canvas
private void MainWindow_TouchDown(object sender, TouchEventArgs e)
{
// 检查触摸是否发生在浮动栏区域,如果是则允许事件传播到浮动栏按钮
var touchPoint = e.GetTouchPoint(this);
var floatingBarBounds = ViewboxFloatingBar.TransformToAncestor(this).TransformBounds(
new Rect(0, 0, ViewboxFloatingBar.ActualWidth, ViewboxFloatingBar.ActualHeight));
// 如果触摸发生在浮动栏区域,不阻止事件传播,让浮动栏按钮能够接收触摸事件
if (floatingBarBounds.Contains(touchPoint.Position))
{
// 不设置 ViewboxFloatingBar.IsHitTestVisible = false,让浮动栏按钮能够接收触摸事件
return;
}
if (inkCanvas.EditingMode == InkCanvasEditingMode.EraseByPoint
|| inkCanvas.EditingMode == InkCanvasEditingMode.EraseByStroke