@@ -8,7 +8,7 @@ import AVKit
88
99@objc ( RNTrimmerView)
1010class RNTrimmerView : RCTView , ICGVideoTrimmerDelegate {
11-
11+
1212 var trimmerView : ICGVideoTrimmerView ?
1313 var asset : AVAsset !
1414 var rect : CGRect = CGRect . zero
@@ -18,18 +18,19 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
1818 var onTrackerMove : RCTBubblingEventBlock ?
1919 var _minLength : CGFloat ? = nil
2020 var _maxLength : CGFloat ? = nil
21+ var _thumbWidth : CGFloat ? = nil
2122 var _trackerColor : UIColor = UIColor . clear
22-
23+
2324 var source : NSString ? {
2425 set {
2526 setSource ( source: newValue)
2627 }
2728 get {
28-
29+
2930 return nil
3031 }
3132 }
32-
33+
3334 var height : NSNumber ? {
3435 set {
3536 self . rect. size. height = RCTConvert . cgFloat ( newValue)
@@ -39,7 +40,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
3940 return nil
4041 }
4142 }
42-
43+
4344 var width : NSNumber ? {
4445 set {
4546 self . rect. size. width = RCTConvert . cgFloat ( newValue)
@@ -49,7 +50,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
4950 return nil
5051 }
5152 }
52-
53+
5354 var themeColor : NSString ? {
5455 set {
5556 if newValue != nil {
@@ -62,7 +63,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
6263 return nil
6364 }
6465 }
65-
66+
6667 var maxLength : NSNumber ? {
6768 set {
6869 if newValue != nil {
@@ -74,7 +75,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
7475 return nil
7576 }
7677 }
77-
78+
7879 var minLength : NSNumber ? {
7980 set {
8081 if newValue != nil {
@@ -86,7 +87,19 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
8687 return nil
8788 }
8889 }
89-
90+
91+ var thumbWidth : NSNumber ? {
92+ set {
93+ if newValue != nil {
94+ self . _thumbWidth = RCTConvert . cgFloat ( newValue!)
95+ self . updateView ( )
96+ }
97+ }
98+ get {
99+ return nil
100+ }
101+ }
102+
90103 var currentTime : NSNumber ? {
91104 set {
92105 print ( " CHANGED: [TrimmerView]: currentTime: \( newValue) " )
@@ -100,7 +113,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
100113 return nil
101114 }
102115 }
103-
116+
104117 var trackerColor : NSString ? {
105118 set {
106119 if newValue == nil {
@@ -120,7 +133,7 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
120133 return nil
121134 }
122135 }
123-
136+
124137 func updateView( ) {
125138 self . frame = rect
126139 if trimmerView != nil {
@@ -135,16 +148,16 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
135148 // Timer.scheduledTimer(timeInterval: 0.5, target: self, selector: #selector(self.updateTrimmer), userInfo: nil, repeats: false)
136149 }
137150 }
138-
151+
139152 func updateTrimmer( ) {
140153 self . trimmerView!. resetSubviews ( )
141154 }
142-
155+
143156 func setSource( source: NSString ? ) {
144157 if source != nil {
145158 let pathToSource = NSURL ( string: source! as String )
146159 self . asset = AVURLAsset ( url: pathToSource as! URL , options: nil )
147-
160+
148161 trimmerView = ICGVideoTrimmerView ( frame: rect, asset: self . asset)
149162 trimmerView!. showsRulerView = false
150163 trimmerView!. hideTracker ( false )
@@ -154,27 +167,27 @@ class RNTrimmerView: RCTView, ICGVideoTrimmerDelegate {
154167 self . updateView ( )
155168 }
156169 }
157-
170+
158171 init ( frame: CGRect , bridge: RCTBridge ) {
159172 super. init ( frame: frame)
160173 self . bridge = bridge
161174 }
162-
175+
163176 required init ? ( coder aDecoder: NSCoder ) {
164177 fatalError ( " init(coder:) has not been implemented " )
165178 }
166-
179+
167180 func onTrimmerPositionChange( startTime: CGFloat , endTime: CGFloat ) {
168181 if self . onChange != nil {
169182 let event = [ " startTime " : startTime, " endTime " : endTime]
170183 self . onChange!( event)
171184 }
172185 }
173-
186+
174187 func trimmerView( _ trimmerView: ICGVideoTrimmerView , didChangeLeftPosition startTime: CGFloat , rightPosition endTime: CGFloat ) {
175188 onTrimmerPositionChange ( startTime: startTime, endTime: endTime)
176189 }
177-
190+
178191 public func trimmerView( _ trimmerView: ICGVideoTrimmerView , currentPosition currentTime: CGFloat ) {
179192 print ( " current " , currentTime)
180193 if onTrackerMove == nil {
0 commit comments