From 61e1529c834f11404fe06b70dc340d524288680d Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 28 Jul 2023 13:30:15 -0400 Subject: [PATCH 1/2] [camera_web] Adopt code excerpts in README Updates the README to use a compiled excerpt source for its example of creating an `Image`. Part of https://github.com/flutter/flutter/issues/102679 --- packages/camera/camera_web/CHANGELOG.md | 4 ++++ packages/camera/camera_web/README.md | 6 +++-- .../example/lib/readme_excerpts.dart | 22 +++++++++++++++++++ .../camera/camera_web/example/pubspec.yaml | 7 +++--- packages/camera/camera_web/pubspec.yaml | 2 +- script/configs/temp_exclude_excerpt.yaml | 1 - 6 files changed, 34 insertions(+), 8 deletions(-) create mode 100644 packages/camera/camera_web/example/lib/readme_excerpts.dart diff --git a/packages/camera/camera_web/CHANGELOG.md b/packages/camera/camera_web/CHANGELOG.md index 1d736b0ac54..85bd2cdad04 100644 --- a/packages/camera/camera_web/CHANGELOG.md +++ b/packages/camera/camera_web/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.3.1+5 + +* Updates README to improve example of `Image` creation. + ## 0.3.1+4 * Removes obsolete null checks on non-nullable values. diff --git a/packages/camera/camera_web/README.md b/packages/camera/camera_web/README.md index e77e6786d8c..6ebf24e9bb5 100644 --- a/packages/camera/camera_web/README.md +++ b/packages/camera/camera_web/README.md @@ -80,11 +80,13 @@ URL pointing to a location within the browser (blob) and can be displayed using See the example below: + ```dart +final Image image; if (kIsWeb) { - Image.network(capturedImage.path); + image = Image.network(capturedImage.path); } else { - Image.file(File(capturedImage.path)); + image = Image.file(File(capturedImage.path)); } ``` diff --git a/packages/camera/camera_web/example/lib/readme_excerpts.dart b/packages/camera/camera_web/example/lib/readme_excerpts.dart new file mode 100644 index 00000000000..e423e5f55da --- /dev/null +++ b/packages/camera/camera_web/example/lib/readme_excerpts.dart @@ -0,0 +1,22 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:io'; + +import 'package:camera_platform_interface/camera_platform_interface.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/widgets.dart'; + +/// Demonstrates using an XFile result as an [Image] source, for the README. +Image getImageFromResultExample(XFile capturedImage) { + // #docregion ImageFromXFile + final Image image; + if (kIsWeb) { + image = Image.network(capturedImage.path); + } else { + image = Image.file(File(capturedImage.path)); + } + // #enddocregion ImageFromXFile + return image; +} diff --git a/packages/camera/camera_web/example/pubspec.yaml b/packages/camera/camera_web/example/pubspec.yaml index b7eda6a7a57..4222fdd574d 100644 --- a/packages/camera/camera_web/example/pubspec.yaml +++ b/packages/camera/camera_web/example/pubspec.yaml @@ -6,15 +6,14 @@ environment: flutter: ">=3.3.0" dependencies: + camera_platform_interface: ^2.1.0 + camera_web: + path: ../ flutter: sdk: flutter dev_dependencies: async: ^2.5.0 - camera_platform_interface: ^2.1.0 - camera_web: - path: ../ - cross_file: ^0.3.1 flutter_test: sdk: flutter integration_test: diff --git a/packages/camera/camera_web/pubspec.yaml b/packages/camera/camera_web/pubspec.yaml index 382444d3624..f7a1d716c74 100644 --- a/packages/camera/camera_web/pubspec.yaml +++ b/packages/camera/camera_web/pubspec.yaml @@ -2,7 +2,7 @@ name: camera_web description: A Flutter plugin for getting information about and controlling the camera on Web. repository: https://github.com/flutter/packages/tree/main/packages/camera/camera_web issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+camera%22 -version: 0.3.1+4 +version: 0.3.1+5 environment: sdk: ">=2.18.0 <4.0.0" diff --git a/script/configs/temp_exclude_excerpt.yaml b/script/configs/temp_exclude_excerpt.yaml index 2e2f1cc01ff..29f30388159 100644 --- a/script/configs/temp_exclude_excerpt.yaml +++ b/script/configs/temp_exclude_excerpt.yaml @@ -5,7 +5,6 @@ # TODO(stuartmorgan): Remove everything from this list. See # https://github.com/flutter/flutter/issues/102679 -- camera_web - cross_file - css_colors - espresso From 401c27cf8f5ba5278166ce48d5238f3571ea533c Mon Sep 17 00:00:00 2001 From: Stuart Morgan Date: Fri, 4 Aug 2023 13:15:41 -0400 Subject: [PATCH 2/2] Re-add dev dependency --- packages/camera/camera_web/example/pubspec.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/camera/camera_web/example/pubspec.yaml b/packages/camera/camera_web/example/pubspec.yaml index 4222fdd574d..b7ae55a2f8c 100644 --- a/packages/camera/camera_web/example/pubspec.yaml +++ b/packages/camera/camera_web/example/pubspec.yaml @@ -14,6 +14,7 @@ dependencies: dev_dependencies: async: ^2.5.0 + cross_file: ^0.3.1 flutter_test: sdk: flutter integration_test: