[Libreoffice-commits] core.git: ios/experimental

jan Iversen jani at libreoffice.org
Tue Mar 21 16:59:58 UTC 2017


 ios/experimental/LibreOfficeLight/Default-568h at 2x.png                            |binary
 ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj     |   43 +++++++-
 ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift             |    2 
 ios/experimental/LibreOfficeLight/LibreOfficeLight/FileManagerController.swift   |   39 +++++--
 ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist                    |   51 +++++++++-
 ios/experimental/LibreOfficeLight/LibreOfficeLight/LibreOfficeLight.entitlements |   18 +++
 ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/LaunchScreen.xib     |    8 -
 ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard      |   31 +++---
 8 files changed, 152 insertions(+), 40 deletions(-)

New commits:
commit 46a71fa01a2268a0a6e02ed04ece3094153ab247
Author: jan Iversen <jani at libreoffice.org>
Date:   Tue Mar 14 09:08:00 2017 +0100

    ios LibreOfficeLight iCloud support
    
    Added iCloud document support to fileManager
    
    Change-Id: I7c8f78b6b148926398b170ee8a32d3c09413205f
    Reviewed-on: https://gerrit.libreoffice.org/35503
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: jan iversen <jani at libreoffice.org>

diff --git a/ios/experimental/LibreOfficeLight/Default-568h at 2x.png b/ios/experimental/LibreOfficeLight/Default-568h at 2x.png
new file mode 100644
index 000000000000..0891b7aabfcf
Binary files /dev/null and b/ios/experimental/LibreOfficeLight/Default-568h at 2x.png differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj b/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
index 82f9ed2c73a9..8cd983ccb6ec 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
@@ -8,6 +8,7 @@
 
 /* Begin PBXBuildFile section */
 		392ED9B31E5E4B03005C8435 /* ViewPrintManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 392ED9B21E5E4B03005C8435 /* ViewPrintManager.swift */; };
+		397275401E782CDC006ACDCC /* Default-568h at 2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 3972753F1E782CDC006ACDCC /* Default-568h at 2x.png */; };
 		397868D61E59A3EA007F9248 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 397868D81E59A3EA007F9248 /* LaunchScreen.xib */; };
 		397E08FE1E597BD8001374E0 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 397E08FD1E597BD8001374E0 /* AppDelegate.swift */; };
 		397E09031E597BD8001374E0 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 397E09011E597BD8001374E0 /* Main.storyboard */; };
@@ -53,6 +54,8 @@
 
 /* Begin PBXFileReference section */
 		392ED9B21E5E4B03005C8435 /* ViewPrintManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ViewPrintManager.swift; path = LibreOfficeLight/ViewPrintManager.swift; sourceTree = SOURCE_ROOT; };
+		397275391E77D9F1006ACDCC /* LibreOfficeLight.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = LibreOfficeLight.entitlements; sourceTree = "<group>"; };
+		3972753F1E782CDC006ACDCC /* Default-568h at 2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h at 2x.png"; sourceTree = "<group>"; };
 		397868D71E59A3EA007F9248 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/LaunchScreen.xib; sourceTree = "<group>"; };
 		397E08FA1E597BD8001374E0 /* LibreOfficeLight.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LibreOfficeLight.app; sourceTree = BUILT_PRODUCTS_DIR; };
 		397E08FD1E597BD8001374E0 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = AppDelegate.swift; path = LibreOfficeLight/AppDelegate.swift; sourceTree = SOURCE_ROOT; };
@@ -125,15 +128,24 @@
 			path = LibreOfficeLight;
 			sourceTree = SOURCE_ROOT;
 		};
+		3972753A1E77D9F7006ACDCC /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
 		397E08F11E597BD8001374E0 = {
 			isa = PBXGroup;
 			children = (
+				3972753F1E782CDC006ACDCC /* Default-568h at 2x.png */,
 				39B084E41E5F0B5200682A59 /* Resources */,
 				3911D89F1E5993600050D6BC /* Support files */,
 				397E08FC1E597BD8001374E0 /* LibreOfficeLight */,
 				397E09141E597BD8001374E0 /* LibreOfficeLightTests */,
 				397E091F1E597BD8001374E0 /* LibreOfficeLightUITests */,
 				397E08FB1E597BD8001374E0 /* Products */,
+				3972753A1E77D9F7006ACDCC /* Frameworks */,
 			);
 			sourceTree = "<group>";
 		};
@@ -150,6 +162,7 @@
 		397E08FC1E597BD8001374E0 /* LibreOfficeLight */ = {
 			isa = PBXGroup;
 			children = (
+				397275391E77D9F1006ACDCC /* LibreOfficeLight.entitlements */,
 				39A83A8E1E5F471D00D0C683 /* lokit.c */,
 				397E08FD1E597BD8001374E0 /* AppDelegate.swift */,
 				3992D8571E5B761700BEA987 /* ViewController.swift */,
@@ -268,8 +281,17 @@
 				TargetAttributes = {
 					397E08F91E597BD8001374E0 = {
 						CreatedOnToolsVersion = 8.2;
+						DevelopmentTeam = TM977DU7EF;
 						LastSwiftMigration = 0820;
 						ProvisioningStyle = Automatic;
+						SystemCapabilities = {
+							com.apple.Push = {
+								enabled = 0;
+							};
+							com.apple.iCloud = {
+								enabled = 1;
+							};
+						};
 					};
 					397E09101E597BD8001374E0 = {
 						CreatedOnToolsVersion = 8.2;
@@ -312,6 +334,7 @@
 				39B08BD71E5F0BB600682A59 /* rc in Resources */,
 				39B08B9E1E5F0BB600682A59 /* offapi.rdb in Resources */,
 				39B084E31E5F0A9600682A59 /* lo.xcconfig in Resources */,
+				397275401E782CDC006ACDCC /* Default-568h at 2x.png in Resources */,
 				397868D61E59A3EA007F9248 /* LaunchScreen.xib in Resources */,
 				39B08B9F1E5F0BB600682A59 /* oovbaapi.rdb in Resources */,
 				39B08B9D1E5F0BB600682A59 /* fundamentalrc in Resources */,
@@ -550,21 +573,25 @@
 			isa = XCBuildConfiguration;
 			baseConfigurationReference = 39B084E21E5F0A9600682A59 /* lo.xcconfig */;
 			buildSettings = {
+				ARCHS = "$(ARCHS_STANDARD)";
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CLANG_WARN_DOCUMENTATION_COMMENTS = NO;
 				CLANG_WARN_INFINITE_RECURSION = NO;
+				CODE_SIGN_ENTITLEMENTS = LibreOfficeLight/LibreOfficeLight.entitlements;
+				DEVELOPMENT_TEAM = TM977DU7EF;
 				ENABLE_TESTABILITY = NO;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "LibreOfficeLight/LibreOfficeLight-Prefix.pch";
 				GCC_SYMBOLS_PRIVATE_EXTERN = NO;
 				INFOPLIST_FILE = LibreOfficeLight/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
-				PRODUCT_BUNDLE_IDENTIFIER = LibreOfficeLight;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_OBJC_BRIDGING_HEADER = "LibreOfficeLight/lokit-Bridging-Header.h";
 				SWIFT_OPTIMIZATION_LEVEL = "-Onone";
 				SWIFT_VERSION = 3.0;
+				"VALID_ARCHS[sdk=*]" = arm64;
 			};
 			name = Debug;
 		};
@@ -572,21 +599,25 @@
 			isa = XCBuildConfiguration;
 			baseConfigurationReference = 39B084E21E5F0A9600682A59 /* lo.xcconfig */;
 			buildSettings = {
+				ARCHS = "$(ARCHS_STANDARD)";
 				ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
 				CLANG_ENABLE_MODULES = YES;
 				CLANG_WARN_DOCUMENTATION_COMMENTS = NO;
 				CLANG_WARN_INFINITE_RECURSION = NO;
+				CODE_SIGN_ENTITLEMENTS = LibreOfficeLight/LibreOfficeLight.entitlements;
 				COPY_PHASE_STRIP = YES;
+				DEVELOPMENT_TEAM = TM977DU7EF;
 				ENABLE_TESTABILITY = NO;
 				GCC_PRECOMPILE_PREFIX_HEADER = YES;
 				GCC_PREFIX_HEADER = "LibreOfficeLight/LibreOfficeLight-Prefix.pch";
 				INFOPLIST_FILE = LibreOfficeLight/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
 				ONLY_ACTIVE_ARCH = YES;
-				PRODUCT_BUNDLE_IDENTIFIER = LibreOfficeLight;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_OBJC_BRIDGING_HEADER = "LibreOfficeLight/lokit-Bridging-Header.h";
 				SWIFT_VERSION = 3.0;
+				"VALID_ARCHS[sdk=*]" = arm64;
 			};
 			name = Release;
 		};
@@ -598,7 +629,7 @@
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				INFOPLIST_FILE = LibreOfficeLightTests/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
-				PRODUCT_BUNDLE_IDENTIFIER = jani.libreofficeLight.LibreOfficeLightTests;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight.LibreOfficeLightTests;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_VERSION = 3.0;
 				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LibreOfficeLight.app/LibreOfficeLight";
@@ -613,7 +644,7 @@
 				BUNDLE_LOADER = "$(TEST_HOST)";
 				INFOPLIST_FILE = LibreOfficeLightTests/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
-				PRODUCT_BUNDLE_IDENTIFIER = jani.libreofficeLight.LibreOfficeLightTests;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight.LibreOfficeLightTests;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_VERSION = 3.0;
 				TEST_HOST = "$(BUILT_PRODUCTS_DIR)/LibreOfficeLight.app/LibreOfficeLight";
@@ -627,7 +658,7 @@
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				INFOPLIST_FILE = LibreOfficeLightUITests/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
-				PRODUCT_BUNDLE_IDENTIFIER = jani.libreofficeLight.LibreOfficeLightUITests;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight.LibreOfficeLightUITests;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_VERSION = 3.0;
 				TEST_TARGET_NAME = LibreOfficeLight;
@@ -641,7 +672,7 @@
 				ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
 				INFOPLIST_FILE = LibreOfficeLightUITests/Info.plist;
 				LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
-				PRODUCT_BUNDLE_IDENTIFIER = jani.libreofficeLight.LibreOfficeLightUITests;
+				PRODUCT_BUNDLE_IDENTIFIER = com.jani.Editors.LibreOfficeLight.LibreOfficeLightUITests;
 				PRODUCT_NAME = "$(TARGET_NAME)";
 				SWIFT_VERSION = 3.0;
 				TEST_TARGET_NAME = LibreOfficeLight;
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
index 3c09d88bd671..b100ed05875d 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
@@ -57,6 +57,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate
     {
         // Called as part of the transition from the background to the active state;
         // here you can undo many of the changes made on entering the background.
+        
+        //JIX add code to check iCloud again
     }
 
 
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/FileManagerController.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/FileManagerController.swift
index e5b1df3d1ac8..94f4106edf1a 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/FileManagerController.swift
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/FileManagerController.swift
@@ -25,10 +25,10 @@ private class FileStorage
     
     // make access to current dir independent of storage selection
     private var localDir  : URL
-    private var cloudDir  : URL
+    private var cloudDir  : URL?
     private var currentDir : URL {
         get {
-            return storageIsLocal ? localDir : cloudDir
+            return storageIsLocal ? localDir : cloudDir!
         }
         set(newDir) {
             if storageIsLocal {
@@ -50,7 +50,7 @@ private class FileStorage
     // Support functions
     func iCloudEnabled() -> Bool
     {
-        return baseCloudDocPath != nil
+        return filemgr.ubiquityIdentityToken != nil
     }
     
     
@@ -121,7 +121,7 @@ private class FileStorage
     func copyFile(_ name: String)
     {
         try! filemgr.copyItem(at: currentDir.appendingPathComponent(name),
-                              to: (storageIsLocal ? localDir : cloudDir).appendingPathComponent(name))
+                              to: (storageIsLocal ? cloudDir! : localDir).appendingPathComponent(name))
     }
     
     
@@ -129,7 +129,7 @@ private class FileStorage
     func moveFile(_ name: String)
     {
         try! filemgr.moveItem(at: currentDir.appendingPathComponent(name),
-                              to: (storageIsLocal ? localDir : cloudDir).appendingPathComponent(name))
+                              to: (storageIsLocal ? localDir : cloudDir!).appendingPathComponent(name))
         buildFileList()
     }
     
@@ -157,11 +157,11 @@ private class FileStorage
     init()
     {
         baseLocalDocPath = filemgr.urls(for: .documentDirectory, in: .userDomainMask)[0]
-        baseCloudDocPath = nil
         localDir         = baseLocalDocPath
         
-        // JIX, fix add support for iCloud
-        cloudDir         = baseLocalDocPath
+        let cloudUrl     = filemgr.url(forUbiquityContainerIdentifier: nil)
+        baseCloudDocPath = (cloudUrl == nil) ? nil : cloudUrl?.appendingPathComponent("Documents")
+        cloudDir         = baseCloudDocPath
         buildFileList()
     }
 }
@@ -175,7 +175,18 @@ class FileManagerController : UITableViewController, actionsControlDelegate
     private var fileData = FileStorage()
     private var selectedRow : IndexPath?
     
+    
+    
+    // selectStorage is only enabled when iCloud is active
+    @IBOutlet weak var buttonSelectStorage: UIBarButtonItem!
+    override func viewDidLoad()
+    {
+        super.viewDidLoad()
+        buttonSelectStorage.isEnabled = fileData.iCloudEnabled()
+    }
 
+    
+    
     // Toogle between local and cloud storage
     @IBAction func doSelectStorage(_ sender: UIBarButtonItem)
     {
@@ -192,6 +203,7 @@ class FileManagerController : UITableViewController, actionsControlDelegate
         vc.delegate = self
         vc.inFileSelect = (selectedRow != nil)
         vc.inSubDirectory = fileData.isSubDirectory()
+        vc.useCloud = fileData.iCloudEnabled()
     }
 
     
@@ -224,7 +236,11 @@ class FileManagerController : UITableViewController, actionsControlDelegate
     
     func actionUploadDownload()
     {
-        // JIX filemanager copy
+        if selectedRow != nil {
+            let currentCell = self.tableView.cellForRow(at: selectedRow!) as! FileManagerCell
+            fileData.copyFile(currentCell.fileName)
+            reloadData()
+        }
     }
     
     
@@ -330,6 +346,7 @@ class FileManagerActions : UITableViewController
     var delegate : actionsControlDelegate?
     var inSubDirectory : Bool = false
     var inFileSelect   : Bool = false
+    var useCloud       : Bool = false
     
     // Calling class might enable/disable each button
     @IBOutlet weak var buttonUploadDownload: UIButton!
@@ -359,7 +376,7 @@ class FileManagerActions : UITableViewController
     
     @IBAction func doUploadDownload(_ sender: UIButton)
     {
-        delegate?.actionDelete()
+        delegate?.actionUploadDownload()
         dismiss(animated: false)
     }
 
@@ -387,6 +404,6 @@ class FileManagerActions : UITableViewController
         buttonLevelUp.isEnabled = inSubDirectory
         buttonOpen.isEnabled = inFileSelect
         buttonDelete.isEnabled = inFileSelect
-        buttonUploadDownload.isEnabled = inFileSelect
+        buttonUploadDownload.isEnabled = (inFileSelect && useCloud)
     }
 }
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
index 6905cc67bbf7..a030ad44af3b 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
@@ -4,6 +4,21 @@
 <dict>
 	<key>CFBundleDevelopmentRegion</key>
 	<string>en</string>
+	<key>CFBundleDocumentTypes</key>
+	<array>
+		<dict>
+			<key>CFBundleTypeName</key>
+			<string>ODF-Document</string>
+			<key>LSHandlerRank</key>
+			<string>Owner</string>
+			<key>LSItemContentTypes</key>
+			<array>
+				<string>com.odf.doc</string>
+				<string>com.odf.calc</string>
+				<string>com.odf.impress</string>
+			</array>
+		</dict>
+	</array>
 	<key>CFBundleExecutable</key>
 	<string>$(EXECUTABLE_NAME)</string>
 	<key>CFBundleIdentifier</key>
@@ -15,13 +30,39 @@
 	<key>CFBundlePackageType</key>
 	<string>APPL</string>
 	<key>CFBundleShortVersionString</key>
-	<string>1.0</string>
+	<string>0.2</string>
 	<key>CFBundleSignature</key>
 	<string>????</string>
 	<key>CFBundleVersion</key>
-	<string>1</string>
+	<string>3</string>
+	<key>LSApplicationCategoryType</key>
+	<string>public.app-category.business</string>
+	<key>LSMultipleInstancesProhibited</key>
+	<true/>
 	<key>LSRequiresIPhoneOS</key>
 	<true/>
+	<key>LSSupportsOpeningDocumentsInPlace</key>
+	<true/>
+	<key>NSHighResolutionCapable</key>
+	<true/>
+	<key>NSHumanReadableCopyright</key>
+	<string>The Source Code Form is subject to the terms of the Mozilla Public
+License, v. 2.0. If a copy of the MPL was not distributed with this
+file, You can obtain one at http://mozilla.org/MPL/2.0/.</string>
+	<key>NSUbiquitousContainers</key>
+	<dict>
+		<key>iCloud.com.jani.Editors.LibreOfficeLight</key>
+		<dict>
+			<key>NSUbiquitousContainerIsDocumentScopePublic</key>
+			<true/>
+			<key>NSUbiquitousContainerName</key>
+			<string>LibreOffice</string>
+			<key>NSUbiquitousContainerSupportedFolderLevels</key>
+			<string>None</string>
+		</dict>
+	</dict>
+	<key>UIFileSharingEnabled</key>
+	<true/>
 	<key>UILaunchStoryboardName</key>
 	<string>LaunchScreen</string>
 	<key>UIMainStoryboardFile</key>
@@ -32,6 +73,12 @@
 	</array>
 	<key>UISupportedInterfaceOrientations</key>
 	<array>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+	</array>
+	<key>UISupportedInterfaceOrientations~ipad</key>
+	<array>
+		<string>UIInterfaceOrientationPortraitUpsideDown</string>
 		<string>UIInterfaceOrientationPortrait</string>
 		<string>UIInterfaceOrientationLandscapeLeft</string>
 		<string>UIInterfaceOrientationLandscapeRight</string>
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/LibreOfficeLight.entitlements b/ios/experimental/LibreOfficeLight/LibreOfficeLight/LibreOfficeLight.entitlements
new file mode 100644
index 000000000000..bb42bb6ead0b
--- /dev/null
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/LibreOfficeLight.entitlements
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>com.apple.developer.icloud-container-identifiers</key>
+	<array>
+		<string>iCloud.$(CFBundleIdentifier)</string>
+	</array>
+	<key>com.apple.developer.icloud-services</key>
+	<array>
+		<string>CloudDocuments</string>
+	</array>
+	<key>com.apple.developer.ubiquity-container-identifiers</key>
+	<array>
+		<string>iCloud.$(CFBundleIdentifier)</string>
+	</array>
+</dict>
+</plist>
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/LaunchScreen.xib b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/LaunchScreen.xib
index 55da64dac5a8..dc876d9b7181 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/LaunchScreen.xib
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/LaunchScreen.xib
@@ -54,7 +54,7 @@
                     </subviews>
                 </stackView>
                 <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="16" translatesAutoresizingMaskIntoConstraints="NO" id="n2g-DN-Rct">
-                    <rect key="frame" x="75" y="137" width="330" height="180.5"/>
+                    <rect key="frame" x="75" y="169" width="330" height="143"/>
                     <subviews>
                         <imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="intro" translatesAutoresizingMaskIntoConstraints="NO" id="iba-PG-iZB">
                             <rect key="frame" x="0.0" y="0.0" width="330" height="84"/>
@@ -65,12 +65,6 @@
                             <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
                             <nil key="highlightedColor"/>
                         </label>
-                        <label opaque="NO" clipsSubviews="YES" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Version 0.1" textAlignment="center" lineBreakMode="middleTruncation" baselineAdjustment="alignBaselines" minimumFontSize="18" translatesAutoresizingMaskIntoConstraints="NO" id="ZEw-zA-Ntv">
-                            <rect key="frame" x="0.0" y="159" width="330" height="21.5"/>
-                            <fontDescription key="fontDescription" type="boldSystem" pointSize="18"/>
-                            <color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
-                            <nil key="highlightedColor"/>
-                        </label>
                     </subviews>
                 </stackView>
             </subviews>
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
index 35fa0d50834e..d7589a64ea2d 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
@@ -58,7 +58,7 @@
                                 <rect key="frame" x="0.0" y="28" width="768" height="44"/>
                                 <autoresizingMask key="autoresizingMask"/>
                                 <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="kKu-xM-S1e" id="80i-6K-kty">
-                                    <rect key="frame" x="0.0" y="0.0" width="768" height="43"/>
+                                    <rect key="frame" x="0.0" y="0.0" width="768" height="43.5"/>
                                     <autoresizingMask key="autoresizingMask"/>
                                     <subviews>
                                         <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" fixedFrame="YES" text="fileEntry" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vlx-gc-YQQ">
@@ -111,6 +111,9 @@
                             </connections>
                         </barButtonItem>
                     </navigationItem>
+                    <connections>
+                        <outlet property="buttonSelectStorage" destination="aad-FF-63q" id="1zz-Vy-Wve"/>
+                    </connections>
                 </tableViewController>
                 <placeholder placeholderIdentifier="IBFirstResponder" id="HFd-ah-Xo4" userLabel="First Responder" sceneMemberID="firstResponder"/>
                 <exit id="iOm-U1-ALi" userLabel="Exit" sceneMemberID="exit"/>
@@ -132,7 +135,7 @@
                                         <rect key="frame" x="0.0" y="0.0" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="VuG-w2-cW6" id="8SA-cA-5eZ">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ZSm-By-dJs">
@@ -150,7 +153,7 @@
                                         <rect key="frame" x="0.0" y="30" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="L5l-rq-TxW" id="dmK-Lh-hje">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="IQ3-hK-KmM">
@@ -168,7 +171,7 @@
                                         <rect key="frame" x="0.0" y="60" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="gCu-Su-BAB" id="P2T-Nb-OqI">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="BSN-dd-e84">
@@ -186,7 +189,7 @@
                                         <rect key="frame" x="0.0" y="90" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="bzW-XI-AgR" id="z9x-qQ-lou">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="fNi-5u-PqA">
@@ -204,7 +207,7 @@
                                         <rect key="frame" x="0.0" y="120" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="b9s-rz-SjN" id="NVs-9k-H8m">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5Rk-LW-Ub9">
@@ -222,7 +225,7 @@
                                         <rect key="frame" x="0.0" y="150" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Va5-1U-paI" id="LW9-jL-3U7">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="type name" borderStyle="roundedRect" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="Lms-Tp-Xtt">
@@ -513,7 +516,7 @@
                                         <rect key="frame" x="0.0" y="0.0" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KLS-lN-QYa" id="dA0-Ji-bxj">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mCx-kB-iUI">
@@ -531,7 +534,7 @@
                                         <rect key="frame" x="0.0" y="30" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="VNE-JL-Lw0" id="EB2-HA-y79">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="myk-zs-md7">
@@ -549,7 +552,7 @@
                                         <rect key="frame" x="0.0" y="60" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="mPa-wa-TDO" id="jhW-pd-Qkl">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Iva-rO-9V3">
@@ -567,7 +570,7 @@
                                         <rect key="frame" x="0.0" y="90" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="XW7-H5-0ob" id="lJN-OL-mO8">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b90-ja-Wm0">
@@ -586,7 +589,7 @@
                                         <rect key="frame" x="0.0" y="120" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="fqs-uC-KiW" id="nT7-Ly-JW5">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ioJ-xc-RrS">
@@ -607,7 +610,7 @@
                                         <rect key="frame" x="0.0" y="150" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="GmK-gj-GYu" id="3OK-Zz-mqN">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="apE-3B-lUt">
@@ -626,7 +629,7 @@
                                         <rect key="frame" x="0.0" y="180" width="134" height="30"/>
                                         <autoresizingMask key="autoresizingMask"/>
                                         <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="1ly-sz-g0x" id="wVi-tX-eKD">
-                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29"/>
+                                            <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/>
                                             <autoresizingMask key="autoresizingMask"/>
                                             <subviews>
                                                 <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="516-b0-K4N">


More information about the Libreoffice-commits mailing list