Browse Source

MediaEditCell: Add hamburger button for cells on playlist content edit

Edgar Fouillet 5 years ago
parent
commit
d6d5c84ac8

+ 10 - 6
SharedSources/MediaEditCell.xib

@@ -1,11 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14490.70" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
-    <device id="retina4_7" orientation="portrait">
-        <adaptation id="fullscreen"/>
-    </device>
+<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="14868" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
+    <device id="retina4_7" orientation="portrait" appearance="light"/>
     <dependencies>
         <deployment identifier="iOS"/>
-        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14490.49"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14824"/>
         <capability name="Safe area layout guides" minToolsVersion="9.0"/>
         <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
     </dependencies>
@@ -41,7 +39,7 @@
                             </variation>
                         </imageView>
                         <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" alignment="top" spacing="5" translatesAutoresizingMaskIntoConstraints="NO" id="ZiN-xT-sWh">
-                            <rect key="frame" x="140" y="11.5" width="211" height="39"/>
+                            <rect key="frame" x="122" y="11.5" width="229" height="39"/>
                             <subviews>
                                 <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="22f-7o-NGo">
                                     <rect key="frame" x="0.0" y="0.0" width="42" height="20.5"/>
@@ -68,6 +66,10 @@
                                 </stackView>
                             </subviews>
                         </stackView>
+                        <imageView hidden="YES" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="list" translatesAutoresizingMaskIntoConstraints="NO" id="dR4-mi-lDQ">
+                            <rect key="frame" x="351" y="19" width="0.0" height="24"/>
+                            <color key="tintColor" systemColor="secondaryLabelColor" red="0.23529411759999999" green="0.23529411759999999" blue="0.26274509800000001" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
+                        </imageView>
                     </subviews>
                 </stackView>
             </subviews>
@@ -82,6 +84,7 @@
                 <outlet property="AudioAspectRatio" destination="0S0-Dm-pFV" id="fup-hh-pq5"/>
                 <outlet property="VideoAspectRatio" destination="o2R-2I-WPK" id="hQw-An-wIt"/>
                 <outlet property="checkboxImageView" destination="RHG-II-xmF" id="F6Y-7m-fPb"/>
+                <outlet property="dragImage" destination="dR4-mi-lDQ" id="562-Hu-qy4"/>
                 <outlet property="sizeLabel" destination="ZKc-bz-v5I" id="wmF-9r-Gew"/>
                 <outlet property="thumbnailImageView" destination="W4f-6Y-az7" id="qx7-8D-QJK"/>
                 <outlet property="timeLabel" destination="eSL-7g-tbd" id="qOK-gw-8qT"/>
@@ -92,5 +95,6 @@
     </objects>
     <resources>
         <image name="checkboxEmpty" width="22" height="22"/>
+        <image name="list" width="24" height="24"/>
     </resources>
 </document>

+ 3 - 0
Sources/EditController.swift

@@ -301,6 +301,9 @@ extension EditController: UICollectionViewDataSource {
             cell.media = model.anyfiles[indexPath.row]
             cell.isChecked = selectedCellIndexPaths.contains(indexPath)
             cell.isAccessibilityElement = true
+            if let collectionModel = model as? CollectionModel, collectionModel.mediaCollection is VLCMLPlaylist {
+                cell.dragImage.isHidden = false
+            }
             return cell
         } else {
             assertionFailure("We couldn't dequeue a reusable cell, the cell might not be registered or is not a MediaEditCell")

+ 2 - 0
Sources/MediaEditCell.swift

@@ -19,6 +19,7 @@ class MediaEditCell: BaseCollectionViewCell {
     @IBOutlet weak var titleLabel: UILabel!
     @IBOutlet weak var timeLabel: UILabel!
     @IBOutlet weak var sizeLabel: UILabel!
+    @IBOutlet weak var dragImage: UIImageView!
     @IBOutlet weak var VideoAspectRatio: NSLayoutConstraint!
     @IBOutlet weak var AudioAspectRatio: NSLayoutConstraint!
 
@@ -57,6 +58,7 @@ class MediaEditCell: BaseCollectionViewCell {
         titleLabel.textColor = PresentationTheme.current.colors.cellTextColor
         timeLabel.textColor = PresentationTheme.current.colors.cellDetailTextColor
         sizeLabel.textColor = PresentationTheme.current.colors.cellTextColor
+        dragImage.tintColor = PresentationTheme.current.colors.cellDetailTextColor
     }
 
     func updateForMovie(movie: VLCMLMedia) {

+ 26 - 0
vlc-ios/Images.xcassets/MediaController/Edit/list.imageset/Contents.json

@@ -0,0 +1,26 @@
+{
+  "images" : [
+    {
+      "idiom" : "universal",
+      "filename" : "list.png",
+      "scale" : "1x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "list@2x.png",
+      "scale" : "2x"
+    },
+    {
+      "idiom" : "universal",
+      "filename" : "list@3x.png",
+      "scale" : "3x"
+    }
+  ],
+  "info" : {
+    "version" : 1,
+    "author" : "xcode"
+  },
+  "properties" : {
+    "template-rendering-intent" : "template"
+  }
+}

BIN
vlc-ios/Images.xcassets/MediaController/Edit/list.imageset/list.png


BIN
vlc-ios/Images.xcassets/MediaController/Edit/list.imageset/list@2x.png


BIN
vlc-ios/Images.xcassets/MediaController/Edit/list.imageset/list@3x.png