Skip to content

Commit

Permalink
Merge branch 'develop' of https://github.com/LinwoodDev/Butterfly int…
Browse files Browse the repository at this point in the history
…o develop
  • Loading branch information
CodeDoctorDE committed Dec 2, 2024
2 parents 35d10bd + 8521a65 commit 44257b3
Show file tree
Hide file tree
Showing 16 changed files with 282 additions and 206 deletions.
122 changes: 66 additions & 56 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
# Changelog

<!--ENTER CHANGELOG HERE-->

## 2.2.2 (2024-11-11)

<!--ENTER CHANGELOG HERE-->

## 2.2.2 (2024-11-11)

* Fix loading screen showing after error
* Fix packs dialog file system operations
* Downgrade pdfjs on web

This is a stable release, it includes all the changes from the 2.2.2 nightly releases.
Read more here: https://linwood.dev/butterfly/2.2.2

## 2.2.2-rc.1 (2024-11-04)

Read more here: https://linwood.dev/butterfly/2.2.2

## 2.2.2-rc.1 (2024-11-04)

* Add checksums to release assets ([#753](https://github.com/LinwoodDev/Butterfly/issues/753))
* Add documentation button to collapsed app bar
* Move eraser tool to property view
Expand All @@ -24,10 +24,10 @@ Read more here: https://linwood.dev/butterfly/2.2.2
* Remove cusor visibility on eraser, path eraser and label tool
* Remove label tool can be changed tool to allow context menu

Read more here: https://linwood.dev/butterfly/2.2.2-rc.1

## 2.2.2-rc.0 (2024-10-28)

Read more here: https://linwood.dev/butterfly/2.2.2-rc.1

## 2.2.2-rc.0 (2024-10-28)

* Add layer merging
* Add option to open context menus with right click on desktop or long press on mobile
* Add safe area to add dialog
Expand All @@ -46,15 +46,15 @@ Read more here: https://linwood.dev/butterfly/2.2.2-rc.1
* Upgrade networking stack for collaboration experiment
* Update flutter and agp

Read more here: https://linwood.dev/butterfly/2.2.2-rc.0

## 2.2.1 (2024-10-17)

Read more here: https://linwood.dev/butterfly/2.2.2-rc.0

## 2.2.1 (2024-10-17)

This is a stable release, it includes all the changes from the 2.2.1 nightly releases.
Read more here: https://linwood.dev/butterfly/2.2.1

## 2.2.1-rc.1 (2024-10-14)

Read more here: https://linwood.dev/butterfly/2.2.1

## 2.2.1-rc.1 (2024-10-14)

* Add bit mapping of buttons in pointer test
* Add autofocus to add dialog search bar
* Add transition when opening add dialog
Expand All @@ -67,10 +67,10 @@ Read more here: https://linwood.dev/butterfly/2.2.1
* Fix input button mapping not working on multiple button presses ([#748](https://github.com/LinwoodDev/Butterfly/issues/748))
* Fix app link in android

Read more here: https://linwood.dev/butterfly/2.2.1-rc.1

## 2.2.1-rc.0 (2024-09-30)

Read more here: https://linwood.dev/butterfly/2.2.1-rc.1

## 2.2.1-rc.0 (2024-09-30)

* Add convert to layer to collection dialog
* Readd option to select custom collection
* Update button in name dialog to context specific action
Expand All @@ -89,17 +89,20 @@ Read more here: https://linwood.dev/butterfly/2.2.1-rc.1
* Fix file name only supports latin characters ([#743](https://github.com/LinwoodDev/Butterfly/issues/743))
* Fix selection not updated when elements changed

Read more here: https://linwood.dev/butterfly/2.2.1-rc.0

## 2.2.0 (2024-09-28)

Read more here: https://linwood.dev/butterfly/2.2.1-rc.0

## 2.2.0 (2024-09-28)

* Fix importing keeps id

This is a stable release, it includes all the changes from the 2.2 nightly release.
Read more here: https://linwood.dev/butterfly/2.2

## 2.2.0-rc.3 (2024-09-26)

Read more here: https://linwood.dev/butterfly/2.2

<details>
<summary>2.2 Nightly Changelog</summary>

## 2.2.0-rc.3 (2024-09-26)

* Rebuild baking system to support multiple layers
* Add convert to layer to collection dialog
* Add convert to layer to general area context menu
Expand All @@ -109,10 +112,10 @@ Read more here: https://linwood.dev/butterfly/2.2
* Fix elements being modifyable in different layers
* Fix invisible layers setting being ignored

Read more here: https://linwood.dev/butterfly/2.2.0-rc.2

## 2.2.0-rc.1 (2024-09-23)

Read more here: https://linwood.dev/butterfly/2.2.0-rc.2

## 2.2.0-rc.1 (2024-09-23)

* Add icons to position personalization settings
* Update baking image rendering
* Change default sorting to modified descending
Expand All @@ -126,10 +129,10 @@ Read more here: https://linwood.dev/butterfly/2.2.0-rc.2
* Fix file not saved in certain cases
* Fix add button can be moved in the toolbar

Read more here: https://linwood.dev/butterfly/2.2.0-rc.1

## 2.2.0-rc.0 (2024-09-16)

Read more here: https://linwood.dev/butterfly/2.2.0-rc.1

## 2.2.0-rc.0 (2024-09-16)

* Refactor layer tool ([#728](https://github.com/LinwoodDev/Butterfly/issues/728))
* Renamed to collection tool
* Changed to action tool
Expand Down Expand Up @@ -160,10 +163,10 @@ Read more here: https://linwood.dev/butterfly/2.2.0-rc.1
* Update pdfjs on web
* Update to flutter 3.24.3

Read more here: https://linwood.dev/butterfly/2.2.0-rc.0

## 2.2.0-beta.3 (2024-09-09)

Read more here: https://linwood.dev/butterfly/2.2.0-rc.0

## 2.2.0-beta.3 (2024-09-09)

* Add full selection mode ([#684](https://github.com/LinwoodDev/Butterfly/issues/684))
* Save utilities states after restart
* Ignore invalid files with invalid syntax
Expand All @@ -174,21 +177,21 @@ Read more here: https://linwood.dev/butterfly/2.2.0-rc.0
* Fix web showing no templates on first start
* Fix templates and packs gets overriden on creation with same name

Read more here: https://linwood.dev/butterfly/2.2.0-beta.3

## 2.2.0-beta.2 (2024-08-27)

Read more here: https://linwood.dev/butterfly/2.2.0-beta.3

## 2.2.0-beta.2 (2024-08-27)

* Add wasm support for chromium based browsers
* Use date for default file name
* Fix unnamed files gets duplicated on save
* Upgrade to flutter 3.24
* Update internal component library
* Remove FLUTTER_VERSION file, use pubspec instead

Read more here: https://linwood.dev/butterfly/2.2.0-beta.2

## 2.2.0-beta.1 (2024-08-05)

Read more here: https://linwood.dev/butterfly/2.2.0-beta.2

## 2.2.0-beta.1 (2024-08-05)

* Add navigator position to position it to the right (useful for left handed users)
* Add option to change layer in select and area context menu
* Start adding multi file selection ([#713](https://github.com/LinwoodDev/Butterfly/issues/713))
Expand All @@ -198,10 +201,10 @@ Read more here: https://linwood.dev/butterfly/2.2.0-beta.2
* Refactor file system to include it as library
* Fix pinned properties view gets closed when switching tools

Read more here: https://linwood.dev/butterfly/2.2.0-beta.1

## 2.2.0-beta.0 (2024-06-25)

Read more here: https://linwood.dev/butterfly/2.2.0-beta.1

## 2.2.0-beta.0 (2024-06-25)

* Add erase elements property to eraser and patheraser ([#680](https://github.com/LinwoodDev/Butterfly/issues/680))
* Add shape element to normal eraser([#683](https://github.com/LinwoodDev/Butterfly/issues/683))
* Add lock layer ([#688](https://github.com/LinwoodDev/Butterfly/issues/688))
Expand All @@ -216,6 +219,8 @@ Read more here: https://linwood.dev/butterfly/2.2.0-beta.1

Read more here: https://linwood.dev/butterfly/2.2.0-beta.0

</details>

## 2.1.1 (2024-06-10)

Nothing changed from the nightly build to the stable release.
Expand Down Expand Up @@ -282,6 +287,9 @@ Nothing changed from the nightly build to the stable release.

See all changes since the last stable here: https://linwood.dev/butterfly/2.1

<details>
<summary>2.1 Nightly Changelog</summary>

## 2.1.0-rc.3 (2024-05-07)

* Add button to check for updates instead of automatically checking on opening the settings ([#691](https://github.com/LinwoodDev/Butterfly/issues/691))
Expand Down Expand Up @@ -462,6 +470,8 @@ Read more here: https://linwood.dev/butterfly/2.1.0-beta.1

Read more here: https://linwood.dev/butterfly/2.1.0-beta.0

</details>

## 2.0.3 (2024-02-19)

* Fix png export
Expand Down
4 changes: 4 additions & 0 deletions api/lib/src/models/tool.dart
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ enum ImportType { image, camera, svg, pdf, document, markdown, xopp }

enum SelectMode { rectangle, lasso }

enum LaserAnimation { fade, path }

@Freezed(equal: false)
sealed class Tool with _$Tool {
Tool._();
Expand Down Expand Up @@ -123,9 +125,11 @@ sealed class Tool with _$Tool {
@Default('') String name,
@Default('') String displayIcon,
@Default(5) double duration,
@Default(0.5) double hideDuration,
@Default(5) double strokeWidth,
@Default(0.4) double thinning,
@Default(BasicColors.red) int color,
@Default(LaserAnimation.fade) LaserAnimation animation,
}) = LaserTool;

factory Tool.shape({
Expand Down
30 changes: 27 additions & 3 deletions api/lib/src/models/tool.freezed.dart
Original file line number Diff line number Diff line change
Expand Up @@ -1560,9 +1560,11 @@ abstract class _$$LaserToolImplCopyWith<$Res> implements $ToolCopyWith<$Res> {
{String name,
String displayIcon,
double duration,
double hideDuration,
double strokeWidth,
double thinning,
int color});
int color,
LaserAnimation animation});
}

/// @nodoc
Expand All @@ -1581,9 +1583,11 @@ class __$$LaserToolImplCopyWithImpl<$Res>
Object? name = null,
Object? displayIcon = null,
Object? duration = null,
Object? hideDuration = null,
Object? strokeWidth = null,
Object? thinning = null,
Object? color = null,
Object? animation = null,
}) {
return _then(_$LaserToolImpl(
name: null == name
Expand All @@ -1598,6 +1602,10 @@ class __$$LaserToolImplCopyWithImpl<$Res>
? _value.duration
: duration // ignore: cast_nullable_to_non_nullable
as double,
hideDuration: null == hideDuration
? _value.hideDuration
: hideDuration // ignore: cast_nullable_to_non_nullable
as double,
strokeWidth: null == strokeWidth
? _value.strokeWidth
: strokeWidth // ignore: cast_nullable_to_non_nullable
Expand All @@ -1610,6 +1618,10 @@ class __$$LaserToolImplCopyWithImpl<$Res>
? _value.color
: color // ignore: cast_nullable_to_non_nullable
as int,
animation: null == animation
? _value.animation
: animation // ignore: cast_nullable_to_non_nullable
as LaserAnimation,
));
}
}
Expand All @@ -1621,9 +1633,11 @@ class _$LaserToolImpl extends LaserTool {
{this.name = '',
this.displayIcon = '',
this.duration = 5,
this.hideDuration = 0.5,
this.strokeWidth = 5,
this.thinning = 0.4,
this.color = BasicColors.red,
this.animation = LaserAnimation.fade,
final String? $type})
: $type = $type ?? 'laser',
super._();
Expand All @@ -1642,20 +1656,26 @@ class _$LaserToolImpl extends LaserTool {
final double duration;
@override
@JsonKey()
final double hideDuration;
@override
@JsonKey()
final double strokeWidth;
@override
@JsonKey()
final double thinning;
@override
@JsonKey()
final int color;
@override
@JsonKey()
final LaserAnimation animation;

@JsonKey(name: 'type')
final String $type;

@override
String toString() {
return 'Tool.laser(name: $name, displayIcon: $displayIcon, duration: $duration, strokeWidth: $strokeWidth, thinning: $thinning, color: $color)';
return 'Tool.laser(name: $name, displayIcon: $displayIcon, duration: $duration, hideDuration: $hideDuration, strokeWidth: $strokeWidth, thinning: $thinning, color: $color, animation: $animation)';
}

/// Create a copy of Tool
Expand All @@ -1679,9 +1699,11 @@ abstract class LaserTool extends Tool {
{final String name,
final String displayIcon,
final double duration,
final double hideDuration,
final double strokeWidth,
final double thinning,
final int color}) = _$LaserToolImpl;
final int color,
final LaserAnimation animation}) = _$LaserToolImpl;
LaserTool._() : super._();

factory LaserTool.fromJson(Map<String, dynamic> json) =
Expand All @@ -1692,9 +1714,11 @@ abstract class LaserTool extends Tool {
@override
String get displayIcon;
double get duration;
double get hideDuration;
double get strokeWidth;
double get thinning;
int get color;
LaserAnimation get animation;

/// Create a copy of Tool
/// with the given fields replaced by the non-null parameter values.
Expand Down
11 changes: 11 additions & 0 deletions api/lib/src/models/tool.g.dart

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 44257b3

Please sign in to comment.