fix(app): 修复 4 个 Flutter 交互问题
1. 首页数据不刷新 — JournalRepository 添加 onJournalChanged Stream 变更通知,HomeBloc 订阅后自动刷新 2. 画笔再次点击不弹出面板 — 添加 ToolReactivated 事件, 工具栏检测已激活工具时发出重新激活信号 3. 钢笔铅笔效果一样 — 调整 perfect_freehand 参数 (pen: size 10/smooth 0.65, pencil: size 3/smooth 0.35) 4. 橡皮擦不生效 — ActiveStrokePainter 橡皮擦模式绘制 半透明灰色反馈,笔画完成后 setState 触发 Layer 1 重绘 5. 贴纸文字无法缩放 — DraggableElement 用 Scale 手势 替换 Pan 手势,支持双指缩放和旋转
This commit is contained in:
@@ -53,6 +53,16 @@ class ActiveStrokePainter extends CustomPainter {
|
||||
|
||||
final path = buildStrokePath(outlinePoints);
|
||||
|
||||
// 橡皮擦实时反馈:绘制半透明灰色,让用户看到擦除范围
|
||||
// 实际擦除在笔画完成后的合成图中通过 BlendMode.dstOut 执行
|
||||
if (brushType == BrushType.eraser) {
|
||||
canvas.drawPath(path, Paint()
|
||||
..color = const Color(0x40808080) // 25% 灰色
|
||||
..style = PaintingStyle.fill
|
||||
..isAntiAlias = true);
|
||||
return;
|
||||
}
|
||||
|
||||
// 构造临时 Stroke 用于获取 Paint
|
||||
final stroke = Stroke(
|
||||
id: '__active__',
|
||||
|
||||
Reference in New Issue
Block a user