fix deprecations
This commit is contained in:
@@ -92,7 +92,7 @@ class _RenderCallbacksExampleState extends State<RenderCallbacksExample> {
|
|||||||
width: 350,
|
width: 350,
|
||||||
height: 400,
|
height: 400,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.black.withOpacity(0.8),
|
color: Colors.black.withValues(alpha: 0.8),
|
||||||
borderRadius: BorderRadius.circular(8),
|
borderRadius: BorderRadius.circular(8),
|
||||||
border: Border.all(color: Colors.grey),
|
border: Border.all(color: Colors.grey),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -64,7 +64,9 @@ class DotGridBackground extends CanvasBackground {
|
|||||||
_program = p;
|
_program = p;
|
||||||
// Request a repaint when shader becomes available
|
// Request a repaint when shader becomes available
|
||||||
try {
|
try {
|
||||||
RendererBinding.instance.renderView.markNeedsPaint();
|
for (final renderView in RendererBinding.instance.renderViews) {
|
||||||
|
renderView.markNeedsPaint();
|
||||||
|
}
|
||||||
} catch (_) {}
|
} catch (_) {}
|
||||||
}).catchError((_) {
|
}).catchError((_) {
|
||||||
// keep _program null; we'll fallback to CPU/simple paint
|
// keep _program null; we'll fallback to CPU/simple paint
|
||||||
@@ -124,10 +126,10 @@ class DotGridBackground extends CanvasBackground {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void set4c(Color c) {
|
void set4c(Color c) {
|
||||||
shader.setFloat(i++, c.red / 255.0);
|
shader.setFloat(i++, c.r);
|
||||||
shader.setFloat(i++, c.green / 255.0);
|
shader.setFloat(i++, c.g);
|
||||||
shader.setFloat(i++, c.blue / 255.0);
|
shader.setFloat(i++, c.b);
|
||||||
shader.setFloat(i++, c.opacity);
|
shader.setFloat(i++, c.a);
|
||||||
}
|
}
|
||||||
|
|
||||||
set2(originXPx, originYPx);
|
set2(originXPx, originYPx);
|
||||||
|
|||||||
+12
-12
@@ -1,7 +1,7 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/rendering.dart';
|
import 'package:flutter/rendering.dart';
|
||||||
import 'package:flutter/services.dart'; // added for LogicalKeyboardKey
|
import 'package:flutter/services.dart'; // HardwareKeyboard, LogicalKeyboardKey
|
||||||
import 'package:flutter/gestures.dart'; // added for PointerScrollEvent
|
import 'package:flutter/gestures.dart'; // PointerScrollEvent
|
||||||
import '../utils/offset_extensions.dart';
|
import '../utils/offset_extensions.dart';
|
||||||
|
|
||||||
import '../utils/styles.dart';
|
import '../utils/styles.dart';
|
||||||
@@ -47,7 +47,7 @@ class _LazyCanvasState extends State<LazyCanvas> with TickerProviderStateMixin<L
|
|||||||
behavior: HitTestBehavior.translucent, // ensure scroll signals are captured even on empty space
|
behavior: HitTestBehavior.translucent, // ensure scroll signals are captured even on empty space
|
||||||
onPointerSignal: (event) {
|
onPointerSignal: (event) {
|
||||||
if (event is PointerScrollEvent) {
|
if (event is PointerScrollEvent) {
|
||||||
final pressed = RawKeyboard.instance.keysPressed;
|
final pressed = HardwareKeyboard.instance.logicalKeysPressed;
|
||||||
if (pressed.contains(LogicalKeyboardKey.controlLeft) || pressed.contains(LogicalKeyboardKey.controlRight)) {
|
if (pressed.contains(LogicalKeyboardKey.controlLeft) || pressed.contains(LogicalKeyboardKey.controlRight)) {
|
||||||
// Typical mouse wheel up gives negative dy on many platforms; invert if needed
|
// Typical mouse wheel up gives negative dy on many platforms; invert if needed
|
||||||
final delta = (-event.scrollDelta.dy) * 0.0015; // sensitivity
|
final delta = (-event.scrollDelta.dy) * 0.0015; // sensitivity
|
||||||
@@ -177,11 +177,11 @@ class _CanvasRenderBox extends RenderBox
|
|||||||
Function onChildSizeChange;
|
Function onChildSizeChange;
|
||||||
|
|
||||||
_CanvasRenderBox({
|
_CanvasRenderBox({
|
||||||
required childrenIds,
|
required List<CanvasChildId> childrenIds,
|
||||||
required ssPositions,
|
required List<Offset> ssPositions,
|
||||||
required scale,
|
required double scale,
|
||||||
required gridSpaceOffset,
|
required Offset gridSpaceOffset,
|
||||||
required canvasBackground,
|
required CanvasBackground canvasBackground,
|
||||||
required this.onCanvasSizeChange,
|
required this.onCanvasSizeChange,
|
||||||
required this.onChildSizeChange,
|
required this.onChildSizeChange,
|
||||||
}) : assert(childrenIds.length == ssPositions.length),
|
}) : assert(childrenIds.length == ssPositions.length),
|
||||||
@@ -282,8 +282,8 @@ class _CanvasRenderBox extends RenderBox
|
|||||||
|
|
||||||
// Apply transformation using pushTransform for proper coordinate handling
|
// Apply transformation using pushTransform for proper coordinate handling
|
||||||
final transform = Matrix4.identity()
|
final transform = Matrix4.identity()
|
||||||
..translate(drawAt.dx, drawAt.dy)
|
..translateByDouble(drawAt.dx, drawAt.dy, 0.0, 1.0)
|
||||||
..scale(childParentData.scale, childParentData.scale);
|
..scaleByDouble(childParentData.scale, childParentData.scale, 1.0, 1.0);
|
||||||
|
|
||||||
// Note: initially I was using context.canvas.translate and context.canvas.scale
|
// Note: initially I was using context.canvas.translate and context.canvas.scale
|
||||||
// but that doesn't work with say using a SingleChildScrollView inside a child
|
// but that doesn't work with say using a SingleChildScrollView inside a child
|
||||||
@@ -319,8 +319,8 @@ class _CanvasRenderBox extends RenderBox
|
|||||||
} else {
|
} else {
|
||||||
// same paint transform for hit testing when scaled
|
// same paint transform for hit testing when scaled
|
||||||
final Matrix4 transform = Matrix4.identity()
|
final Matrix4 transform = Matrix4.identity()
|
||||||
..translate(childParentData.offset.dx, childParentData.offset.dy)
|
..translateByDouble(childParentData.offset.dx, childParentData.offset.dy, 0.0, 1.0)
|
||||||
..scale(childParentData.scale, childParentData.scale);
|
..scaleByDouble(childParentData.scale, childParentData.scale, 1.0, 1.0);
|
||||||
|
|
||||||
isHit = result.addWithPaintTransform(
|
isHit = result.addWithPaintTransform(
|
||||||
transform: transform,
|
transform: transform,
|
||||||
|
|||||||
Reference in New Issue
Block a user