diff --git a/flutter/jujuba_svg/lib/core/jujuba_widget.dart b/flutter/jujuba_svg/lib/core/jujuba_widget.dart index 1054ca9a..be9de717 100644 --- a/flutter/jujuba_svg/lib/core/jujuba_widget.dart +++ b/flutter/jujuba_svg/lib/core/jujuba_widget.dart @@ -1,3 +1,5 @@ +import 'dart:async'; + import 'package:flutter/material.dart'; import 'package:jujuba_svg/core/commander/jujuba_commander.dart'; import 'package:jujuba_svg/core/constants.dart'; @@ -87,6 +89,8 @@ class JujubaSVGWidget extends StatefulWidget { class _JujubaWebViewState extends State { late final WebViewController _controller; + StreamSubscription? _streamSubscription = null; + _JujubaWebViewState(); @override @@ -116,7 +120,7 @@ class _JujubaWebViewState extends State { await _controller.loadHtmlString(completeHtml); - widget.commander.stream.listen( + _streamSubscription = widget.commander.stream.listen( (jsCommand) => _runJavascript(jsCommand), ); } @@ -159,4 +163,11 @@ class _JujubaWebViewState extends State { controller: _controller, ); } + + @override + void dispose() { + _streamSubscription?.cancel(); + + super.dispose(); + } } diff --git a/flutter/jujuba_svg/pubspec.yaml b/flutter/jujuba_svg/pubspec.yaml index 86ff2154..f56f6ea7 100644 --- a/flutter/jujuba_svg/pubspec.yaml +++ b/flutter/jujuba_svg/pubspec.yaml @@ -2,7 +2,7 @@ name: jujuba_svg description: "JujubaSVG is a Flutter library provided by CodandoTV to make SVG manipulation easy and reactive." homepage: "https://github.com/CodandoTV/jujubaSVG?tab=readme-ov-file" -version: 1.1.0 +version: 1.1.1 environment: sdk: ^3.5.0