@@ -28,6 +28,7 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
2828 @IBOutlet weak var imageSelect : UIImageView !
2929 @IBOutlet weak var imageStatus : UIImageView !
3030 @IBOutlet weak var imageFavorite : UIImageView !
31+ // @IBOutlet weak var imageFavoriteBackground: UIImageView!
3132 @IBOutlet weak var imageLocal : UIImageView !
3233 @IBOutlet weak var labelTitle : UILabel !
3334 @IBOutlet weak var labelInfo : UILabel !
@@ -37,29 +38,23 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
3738 @IBOutlet weak var buttonShared : UIButton !
3839 @IBOutlet weak var imageMore : UIImageView !
3940 @IBOutlet weak var buttonMore : UIButton !
40- @IBOutlet weak var progressView : UIProgressView !
4141 @IBOutlet weak var separator : UIView !
42- @IBOutlet weak var labelShared : UILabel !
4342 @IBOutlet weak var tag0 : UILabel !
4443 @IBOutlet weak var tag1 : UILabel !
4544
4645 @IBOutlet weak var imageItemLeftConstraint : NSLayoutConstraint !
4746 @IBOutlet weak var separatorHeightConstraint : NSLayoutConstraint !
48- @IBOutlet weak var subInfoTrailingConstraint : NSLayoutConstraint !
49- @IBOutlet weak var iPadLabelTitleTrailingConstraint : NSLayoutConstraint !
50- @IBOutlet weak var iPhoneLabelTitleTrailingConstraint : NSLayoutConstraint !
51-
52- private var ocId = " "
53- private var ocIdTransfer = " "
54- private var user = " "
47+ @IBOutlet weak var titleTrailingConstraint : NSLayoutConstraint !
48+
49+ var ocId = " "
50+ var ocIdTransfer = " "
51+ var user = " "
5552
5653 weak var listCellDelegate : NCListCellDelegate ?
57- var namedButtonMore = " "
5854
5955 var fileAvatarImageView : UIImageView ? {
6056 return imageShared
6157 }
62-
6358 var fileOcId : String ? {
6459 get { return ocId }
6560 set { ocId = newValue ?? " " }
@@ -88,14 +83,6 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
8883 get { return labelSubinfo }
8984 set { labelSubinfo = newValue }
9085 }
91- var fileProgressView : UIProgressView ? {
92- get { return progressView }
93- set { progressView = newValue }
94- }
95- var fileSelectImage : UIImageView ? {
96- get { return imageSelect }
97- set { imageSelect = newValue }
98- }
9986 var fileStatusImage : UIImageView ? {
10087 get { return imageStatus }
10188 set { imageStatus = newValue }
@@ -121,32 +108,30 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
121108 set { separator = newValue }
122109 }
123110
124- var fileSharedLabel : UILabel ? {
125- get { return labelShared }
126- set { labelShared = newValue }
111+ override var accessibilityIdentifier : String ? {
112+ get {
113+ super. accessibilityIdentifier
114+ }
115+ set {
116+ super. accessibilityIdentifier = newValue
117+
118+ if let newValue {
119+ buttonShared. accessibilityIdentifier = " \( newValue) /shareButton "
120+ }
121+ }
127122 }
128123
129124 override func awakeFromNib( ) {
130125 super. awakeFromNib ( )
131126 initCell ( )
132127 }
133-
134- func initCell( ) {
135-
136- imageItem. layer. cornerRadius = 6
137- imageItem. layer. masksToBounds = true
138- imageStatus. image = nil
139- imageFavorite. image = nil
140- imageFavoriteBackground. isHidden = true
141- imageLocal. image = nil
142- labelTitle. text = " "
143- labelInfo. text = " "
144- labelSubinfo. text = " "
145- imageShared. image = nil
146- imageMore. image = nil
147128
148- // use entire cell as accessibility element
149-
129+ override func prepareForReuse( ) {
130+ super. prepareForReuse ( )
131+ initCell ( )
132+ }
133+
134+ func initCell( ) {
150135 accessibilityHint = nil
151136 accessibilityLabel = nil
152137 accessibilityValue = nil
@@ -157,102 +142,64 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
157142 imageItem. layer. masksToBounds = true
158143 imageStatus. image = nil
159144 imageFavorite. image = nil
145+ // imageFavoriteBackground.isHidden = true
160146 imageLocal. image = nil
161147 labelTitle. text = " "
162148 labelInfo. text = " "
163149 labelSubinfo. text = " "
164150 imageShared. image = nil
165151 imageMore. image = nil
166152 separatorHeightConstraint. constant = 0.5
153+ tag0. text = " "
154+ tag1. text = " "
167155 titleInfoTrailingDefault ( )
168156
169157 let longPressedGesture = UILongPressGestureRecognizer ( target: self , action: #selector( longPress ( gestureRecognizer: ) ) )
170158 longPressedGesture. minimumPressDuration = 0.5
171159 longPressedGesture. delegate = self
172160 longPressedGesture. delaysTouchesBegan = true
173161 self . addGestureRecognizer ( longPressedGesture)
174-
175- separator. backgroundColor = . separator
176- separatorHeightConstraint. constant = 0.5
177- titleInfoTrailingDefault ( )
178-
179- labelTitle. textColor = . label
180- labelInfo. textColor = . systemGray
181- labelSubinfo. textColor = . systemGray
182- setButtonMore ( named: NCGlobal . shared. buttonMoreMore, image: NCImageCache . images. buttonMore)
183- imageMore. isHidden = false
184- buttonMore. isHidden = false
185- updateConstraintsForCurrentDevice ( )
186- }
187-
188- override func prepareForReuse( ) {
189- super. prepareForReuse ( )
190- initCell ( )
191162 }
192163
193164 override func snapshotView( afterScreenUpdates afterUpdates: Bool ) -> UIView ? {
194165 return nil
195166 }
196-
197- override func traitCollectionDidChange( _ previousTraitCollection: UITraitCollection ? ) {
198- super. traitCollectionDidChange ( previousTraitCollection)
199- updateConstraintsForCurrentDevice ( )
200- }
201167
202- func updateConstraintsForCurrentDevice( ) {
203- if labelShared? . isHidden == false {
204- iPhoneLabelTitleTrailingConstraint. isActive = false
205- iPadLabelTitleTrailingConstraint. isActive = true
206- } else {
207- iPhoneLabelTitleTrailingConstraint. isActive = true
208- iPadLabelTitleTrailingConstraint. isActive = false
209- }
210- // iPhoneLabelTitleTrailingConstraint.isActive = UIDevice.current.userInterfaceIdiom == .pad ? false : true
211- // iPadLabelTitleTrailingConstraint.isActive = UIDevice.current.userInterfaceIdiom == .pad ? true : false
212- }
213-
214168 @IBAction func touchUpInsideShare( _ sender: Any ) {
215169 listCellDelegate? . tapShareListItem ( with: ocId, ocIdTransfer: ocIdTransfer, sender: sender)
216170 }
217171
218172 @IBAction func touchUpInsideMore( _ sender: Any ) {
219- listCellDelegate? . tapMoreListItem ( with: ocId, ocIdTransfer: ocIdTransfer, namedButtonMore : namedButtonMore , image: imageItem. image, sender: sender)
173+ listCellDelegate? . tapMoreListItem ( with: ocId, ocIdTransfer: ocIdTransfer, image: imageItem. image, sender: sender)
220174 }
221175
222176 @objc func longPress( gestureRecognizer: UILongPressGestureRecognizer ) {
223- listCellDelegate? . longPressListItem ( with: ocId, ocIdTransfer: ocIdTransfer, namedButtonMore: namedButtonMore, gestureRecognizer: gestureRecognizer)
224- }
225-
226- @objc func longPressInsideMore( gestureRecognizer: UILongPressGestureRecognizer ) {
227- listCellDelegate? . longPressMoreListItem ( with: ocId, namedButtonMore: namedButtonMore, gestureRecognizer: gestureRecognizer)
177+ listCellDelegate? . longPressListItem ( with: ocId, ocIdTransfer: ocIdTransfer, gestureRecognizer: gestureRecognizer)
228178 }
229179
230180 fileprivate func setA11yActions( ) {
231- let moreName = namedButtonMore == NCGlobal . shared. buttonMoreStop ? " _cancel_ " : " _more_ "
232181 self . accessibilityCustomActions = [
233182 UIAccessibilityCustomAction (
234183 name: NSLocalizedString ( " _share_ " , comment: " " ) ,
235184 target: self ,
236- selector: #selector( touchUpInsideShare) ) ,
185+ selector: #selector( touchUpInsideShare ( _ : ) ) ) ,
237186 UIAccessibilityCustomAction (
238- name: NSLocalizedString ( moreName , comment: " " ) ,
187+ name: NSLocalizedString ( " _more_ " , comment: " " ) ,
239188 target: self ,
240- selector: #selector( touchUpInsideMore) )
189+ selector: #selector( touchUpInsideMore ( _ : ) ) )
241190 ]
242191 }
243192
244193 func titleInfoTrailingFull( ) {
245- subInfoTrailingConstraint . constant = 10
194+ titleTrailingConstraint . constant = 10
246195 }
247196
248197 func titleInfoTrailingDefault( ) {
249- subInfoTrailingConstraint . constant = 90
198+ titleTrailingConstraint . constant = 90
250199 }
251200
252- func setButtonMore( named: String , image: UIImage ) {
253- namedButtonMore = named
201+ func setButtonMore( image: UIImage ) {
254202 imageMore. image = image
255-
256203 setA11yActions ( )
257204 }
258205
@@ -266,68 +213,58 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
266213 buttonShared. isHidden = status
267214 }
268215
269- func hideSeparator( _ status: Bool ) {
270- separator. isHidden = status
271- }
272-
273- func selectMode( _ status: Bool ) {
274- if status {
216+ func selected( _ status: Bool , isEditMode: Bool ) {
217+ // E2EE - remove encrypt folder selection
218+ if let metadata = NCManageDatabase . shared. getMetadataFromOcId ( ocId) , metadata. e2eEncrypted {
219+ imageSelect. isHidden = true
220+ } else {
221+ imageSelect. isHidden = isEditMode ? false : true
222+ }
223+ // guard let metadata = NCManageDatabase.shared.getMetadataFromOcId(ocId), !metadata.e2eEncrypted else {
224+ //// guard let metadata = NCManageDatabase.shared.getMetadataFromOcId(ocId), !metadata.e2eEncrypted else {
225+ // backgroundView = nil
226+ // separator.isHidden = false
227+ // imageSelect.isHidden = true
228+ // return
229+ // }
230+ if isEditMode {
275231 imageItemLeftConstraint. constant = 45
276- imageSelect. isHidden = false
232+ // imageSelect.isHidden = false
233+ imageShared. isHidden = true
277234 imageMore. isHidden = true
278235 buttonShared. isHidden = true
279236 buttonMore. isHidden = true
280237 accessibilityCustomActions = nil
281238 } else {
282239 imageItemLeftConstraint. constant = 10
283- imageSelect. isHidden = true
240+ // imageSelect.isHidden = true
241+ imageShared. isHidden = false
284242 imageMore. isHidden = false
285243 buttonShared. isHidden = false
286244 buttonMore. isHidden = false
287245 backgroundView = nil
288246 setA11yActions ( )
289247 }
290- }
291-
292- func selected( _ status: Bool , isEditMode: Bool ) {
293- // NMC-1190 - iOS - Files - Deleting files while files are still uploading won't delete properly : to fix this issue remove check for !metadata.isInTransfer in below line
294- guard let metadata = NCManageDatabase . shared. getMetadataFromOcId ( ocId) , !metadata. isInTransfer, !metadata. e2eEncrypted else {
295- // guard let metadata = NCManageDatabase.shared.getMetadataFromOcId(ocId), !metadata.e2eEncrypted else {
296- backgroundView = nil
297- separator. isHidden = false
298- imageSelect. isHidden = true
299-
300- return
301- }
302-
303248 if status {
304- var blurEffect : UIVisualEffect ?
305249 var blurEffectView : UIView ?
306- if traitCollection. userInterfaceStyle == . dark {
307- blurEffect = UIBlurEffect ( style: . dark)
308- blurEffectView = UIVisualEffectView ( effect: blurEffect)
309- blurEffectView? . backgroundColor = . black
310- } else {
311- blurEffect = UIBlurEffect ( style: . extraLight)
312- blurEffectView = UIVisualEffectView ( effect: blurEffect)
313- blurEffectView? . backgroundColor = . lightGray
314- }
250+ blurEffectView = UIVisualEffectView ( effect: UIBlurEffect ( style: . systemMaterial) )
251+ blurEffectView? . backgroundColor = . lightGray
315252 blurEffectView? . frame = self . bounds
316253 blurEffectView? . autoresizingMask = [ . flexibleWidth, . flexibleHeight]
317- imageSelect. image = NCImageCache . images . checkedYes
254+ imageSelect. image = NCImageCache . shared . getImageCheckedYes ( )
318255 backgroundView = blurEffectView
319- imageSelect. image = NCImageCache . images. checkedYes
320256 separator. isHidden = true
321257 } else {
322- imageSelect. image = NCImageCache . images . checkedNo
258+ imageSelect. image = NCImageCache . shared . getImageCheckedNo ( )
323259 backgroundView = nil
324260 separator. isHidden = false
325261 }
262+
326263 }
327264
328265 func writeInfoDateSize( date: NSDate , size: Int64 ) {
329- labelInfo. text = NCUtility ( ) . getRelativeDateTitle ( date as Date ) + " · " + NCUtilityFileSystem ( ) . transformedSize ( size )
330- labelSubinfo. text = " "
266+ labelInfo. text = NCUtility ( ) . getRelativeDateTitle ( date as Date )
267+ labelSubinfo. text = NCUtilityFileSystem ( ) . transformedSize ( size )
331268 }
332269
333270 func setAccessibility( label: String , value: String ) {
@@ -386,7 +323,7 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
386323 }
387324
388325 }
389-
326+
390327 override func layoutSubviews( ) {
391328 super. layoutSubviews ( )
392329 // Keep the shadow path in sync with current bounds
@@ -401,9 +338,8 @@ class NCListCell: UICollectionViewCell, UIGestureRecognizerDelegate, NCCellProto
401338
402339protocol NCListCellDelegate : AnyObject {
403340 func tapShareListItem( with ocId: String , ocIdTransfer: String , sender: Any )
404- func tapMoreListItem( with ocId: String , ocIdTransfer: String , namedButtonMore: String , image: UIImage ? , sender: Any )
405- func longPressMoreListItem( with ocId: String , namedButtonMore: String , gestureRecognizer: UILongPressGestureRecognizer )
406- func longPressListItem( with ocId: String , ocIdTransfer: String , namedButtonMore: String , gestureRecognizer: UILongPressGestureRecognizer )
341+ func tapMoreListItem( with ocId: String , ocIdTransfer: String , image: UIImage ? , sender: Any )
342+ func longPressListItem( with ocId: String , ocIdTransfer: String , gestureRecognizer: UILongPressGestureRecognizer )
407343}
408344
409345// MARK: - List Layout
0 commit comments