react-native-photo-video-editor 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.2.1
|
|
6
|
+
|
|
7
|
+
- Fix an iOS build failure in `TextEditorSheet`: its private stored property `editing` collided with `UIViewController.isEditing`, which is exported to Objective-C as `editing`, so the compiler treated it as an invalid override ("cannot override with a stored property" / "overriding property must be as accessible as its enclosing type"). The property is now `isEditingExisting`; the `editing:` initialiser label is unchanged, so call sites are unaffected.
|
|
8
|
+
|
|
5
9
|
## 0.2.0
|
|
6
10
|
|
|
7
11
|
- Fix video export placing text/sticker overlays at the wrong size and position on Android. Media3 composites an overlay texture 1:1 in pixels rather than stretching it to fill the frame, so the overlay bitmap's resolution cap shrank every layer toward the frame centre on sources above the cap (4K/1440p); 1080p and below were unaffected. The overlay canvas is now scaled back to the full frame via `OverlaySettings`, making preview and export match at any resolution. iOS was never affected (its `CALayer` scales to fit).
|
|
@@ -5,13 +5,13 @@ final class TextEditorSheet: UIViewController, UITextViewDelegate {
|
|
|
5
5
|
private let input = UITextView()
|
|
6
6
|
private let placeholder = UILabel()
|
|
7
7
|
private let initialText: String
|
|
8
|
-
private let
|
|
8
|
+
private let isEditingExisting: Bool
|
|
9
9
|
private let accent: UIColor
|
|
10
10
|
private let onSave: (String) -> Void
|
|
11
11
|
private var inputHeight: NSLayoutConstraint?
|
|
12
12
|
|
|
13
13
|
init(text: String, editing: Bool, accent: UIColor, onSave: @escaping (String) -> Void) {
|
|
14
|
-
initialText = text;
|
|
14
|
+
initialText = text; isEditingExisting = editing; self.accent = accent; self.onSave = onSave
|
|
15
15
|
super.init(nibName: nil, bundle: nil)
|
|
16
16
|
modalPresentationStyle = .overFullScreen
|
|
17
17
|
modalTransitionStyle = .crossDissolve
|
|
@@ -26,7 +26,7 @@ final class TextEditorSheet: UIViewController, UITextViewDelegate {
|
|
|
26
26
|
panel.layer.cornerRadius = 16
|
|
27
27
|
panel.isLayoutMarginsRelativeArrangement = true
|
|
28
28
|
panel.layoutMargins = UIEdgeInsets(top: 20, left: 20, bottom: 20, right: 20)
|
|
29
|
-
let title = UILabel(); title.text =
|
|
29
|
+
let title = UILabel(); title.text = isEditingExisting ? "Edit Text" : "Add Text"
|
|
30
30
|
title.textColor = .white; title.font = .systemFont(ofSize: 20, weight: .semibold)
|
|
31
31
|
panel.addArrangedSubview(title)
|
|
32
32
|
input.text = initialText; input.textColor = .white; input.tintColor = accent
|
|
@@ -50,7 +50,7 @@ final class TextEditorSheet: UIViewController, UITextViewDelegate {
|
|
|
50
50
|
let cancel = UIButton(type: .system); cancel.setTitle("Cancel", for: .normal); cancel.tintColor = .white
|
|
51
51
|
cancel.addAction(UIAction { [weak self] _ in self?.close() }, for: .touchUpInside)
|
|
52
52
|
let save = UIButton(type: .system)
|
|
53
|
-
save.setTitle(
|
|
53
|
+
save.setTitle(isEditingExisting ? "Done" : "Add", for: .normal); save.tintColor = .white
|
|
54
54
|
save.backgroundColor = accent; save.layer.cornerRadius = 12
|
|
55
55
|
save.addAction(UIAction { [weak self] _ in
|
|
56
56
|
guard let self, !self.input.text.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty else { return }
|
package/package.json
CHANGED