dev/null |binary ios/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj | 8 ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift | 56 + ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/Contents.json | 23 ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/Contents.json | 23 ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift | 161 +---- ios/LibreOfficeLight/LibreOfficeLight/PropertiesController.swift | 2 ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard | 297 ++-------- ios/LibreOfficeLight/LibreOfficeLight/lokit-Bridging-Header.h | 4 9 files changed, 159 insertions(+), 415 deletions(-)
New commits: commit 4bfa790236b9c0d70c28101858547c616e75e9e4 Author: jan Iversen <j...@libreoffice.org> Date: Sun Oct 29 09:12:07 2017 +0100 iOS documentation and minor corrections Started on documentating all classes, to make it easier for others to understand the code. Change-Id: I5b463f7ae23fb6316dc3f1418d73222360083bdc diff --git a/ios/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj b/ios/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj index e22cf317feb6..986ce57cc1b2 100644 --- a/ios/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj +++ b/ios/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj @@ -22,7 +22,6 @@ 397E09031E597BD8001374E0 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 397E09011E597BD8001374E0 /* Main.storyboard */; }; 397E09081E597BD8001374E0 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 397E09071E597BD8001374E0 /* Assets.xcassets */; }; 3992D85A1E5B762A00BEA987 /* DocumentController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D8591E5B762A00BEA987 /* DocumentController.swift */; }; - 3992D85D1E5B764A00BEA987 /* SideMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D85B1E5B764A00BEA987 /* SideMenu.swift */; }; 399648471E5B87DC00E73E83 /* ViewProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399648461E5B87DC00E73E83 /* ViewProperties.swift */; }; 39B08B9D1E5F0BB600682A59 /* fundamentalrc in Resources */ = {isa = PBXBuildFile; fileRef = 39B084E51E5F0BB400682A59 /* fundamentalrc */; }; 39B08B9E1E5F0BB600682A59 /* offapi.rdb in Resources */ = {isa = PBXBuildFile; fileRef = 39B084E61E5F0BB400682A59 /* offapi.rdb */; }; @@ -31,6 +30,7 @@ 39B08BD91E5F0BB600682A59 /* services.rdb in Resources */ = {isa = PBXBuildFile; fileRef = 39B085241E5F0BB400682A59 /* services.rdb */; }; 39B091CD1E5F0BB800682A59 /* udkapi.rdb in Resources */ = {isa = PBXBuildFile; fileRef = 39B08B9B1E5F0BB600682A59 /* udkapi.rdb */; }; 39B091CE1E5F0BB800682A59 /* unorc in Resources */ = {isa = PBXBuildFile; fileRef = 39B08B9C1E5F0BB600682A59 /* unorc */; }; + 39EF4E2F1FA500C9001914AC /* PropertiesController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39EF4E2E1FA500C9001914AC /* PropertiesController.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -52,7 +52,6 @@ 397E09021E597BD8001374E0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = en; path = en.lproj/Main.storyboard; sourceTree = "<group>"; }; 397E09071E597BD8001374E0 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = LibreOfficeLight/Assets.xcassets; sourceTree = SOURCE_ROOT; }; 3992D8591E5B762A00BEA987 /* DocumentController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = DocumentController.swift; path = LibreOfficeLight/DocumentController.swift; sourceTree = SOURCE_ROOT; }; - 3992D85B1E5B764A00BEA987 /* SideMenu.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SideMenu.swift; path = LibreOfficeLight/SideMenu.swift; sourceTree = SOURCE_ROOT; }; 399648461E5B87DC00E73E83 /* ViewProperties.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ViewProperties.swift; path = LibreOfficeLight/ViewProperties.swift; sourceTree = SOURCE_ROOT; }; 39ACF4181F8A317600DA7334 /* loApp.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = loApp.xcconfig; path = ../../../../../../../Users/jani/lo_ios/workdir/ios/loApp.xcconfig; sourceTree = "<group>"; }; 39B084E51E5F0BB400682A59 /* fundamentalrc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = fundamentalrc; path = ../generated/resources/fundamentalrc; sourceTree = SOURCE_ROOT; }; @@ -63,6 +62,7 @@ 39B08B9B1E5F0BB600682A59 /* udkapi.rdb */ = {isa = PBXFileReference; lastKnownFileType = file; name = udkapi.rdb; path = ../generated/resources/udkapi.rdb; sourceTree = SOURCE_ROOT; }; 39B08B9C1E5F0BB600682A59 /* unorc */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = unorc; path = ../generated/resources/unorc; sourceTree = SOURCE_ROOT; }; 39B092501E5F3DEA00682A59 /* LibreOfficeLight-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "LibreOfficeLight-Prefix.pch"; sourceTree = "<group>"; }; + 39EF4E2E1FA500C9001914AC /* PropertiesController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PropertiesController.swift; sourceTree = "<group>"; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -127,8 +127,8 @@ children = ( 39503A6F1F94C4AC00F19C78 /* lokit-Bridging-Header.h */, 397E08FD1E597BD8001374E0 /* AppDelegate.swift */, - 3992D85B1E5B764A00BEA987 /* SideMenu.swift */, 3992D8591E5B762A00BEA987 /* DocumentController.swift */, + 39EF4E2E1FA500C9001914AC /* PropertiesController.swift */, 392ED9B21E5E4B03005C8435 /* ViewPrintManager.swift */, 399648461E5B87DC00E73E83 /* ViewProperties.swift */, 397E09011E597BD8001374E0 /* Main.storyboard */, @@ -253,10 +253,10 @@ buildActionMask = 2147483647; files = ( 392ED9B31E5E4B03005C8435 /* ViewPrintManager.swift in Sources */, - 3992D85D1E5B764A00BEA987 /* SideMenu.swift in Sources */, 399648471E5B87DC00E73E83 /* ViewProperties.swift in Sources */, 3992D85A1E5B762A00BEA987 /* DocumentController.swift in Sources */, 397E08FE1E597BD8001374E0 /* AppDelegate.swift in Sources */, + 39EF4E2F1FA500C9001914AC /* PropertiesController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift b/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift index dd6ee4183a80..12e596bc030d 100644 --- a/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift +++ b/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift @@ -10,6 +10,8 @@ import Foundation +// AppDelegate is a Delegate class that receives calls from the iOS +// kernel, and theirby allows stop/start/sleep of the application @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { @@ -17,15 +19,20 @@ class AppDelegate: UIResponder, UIApplicationDelegate - // MARK: - AppDelegate functions - + // sent when clicking on a OO document in another app + // allowing this app to handle the document. + // remark if the app is not started it will be started first func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool { // called when started from another Application. + // Jan to be done return true } + + // this function is called when the app is first started (loaded from EEProm) + // it initializes the LO system and prepares for a normal run func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Get version info @@ -40,53 +47,60 @@ class AppDelegate: UIResponder, UIApplicationDelegate //FIX BridgeLOkit_Init(Bundle.main.bundlePath) //FIX BridgeLOkit_open("jan"); //FIX BridgeLOkit_ClientCommand("jan"); - - // Override point for customization after application launch. return true } + // Sent when the application is about to move from active to inactive state. + // This can occur for certain types of temporary interruptions + // (such as an incoming phone call or SMS message) + // or when the user quits the application and it begins the transition to the background state. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. func applicationWillResignActive(_ application: UIApplication) { - // Sent when the application is about to move from active to inactive state. - // This can occur for certain types of temporary interruptions - // (such as an incoming phone call or SMS message) - // or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. - // Games should use this method to pause the game. + // NOT used in this App } + // Sent when the application enters background (hipernating) + // Use this method to release shared resources, save user data, invalidate timers, + // and store enough application state information to restore your application to its current state + // in case it is terminated later. + // If your application supports background execution, + // this method is called instead of applicationWillTerminate: when the user quits. func applicationDidEnterBackground(_ application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, - // and store enough application state information to restore your application to its current state - // in case it is terminated later. - // If your application supports background execution, - // this method is called instead of applicationWillTerminate: when the user quits. + // Jan to do done (scale down LO) } + // Sent before the application reenters foreground (hipernating -> active) + // Restart timers, tasks as well as graphic rendering func applicationWillEnterForeground(_ application: UIApplication) { + // Jan to be done (reactivate LO) } + // Sent after the application reenters foreground (hipernating -> active) + // Restart timers, tasks as well as graphic rendering func applicationDidBecomeActive(_ application: UIApplication) { + // NOT used in this App } + // Sent when the application is about to terminate. Save data if appropriate. + // See also applicationDidEnterBackground:. + // Saves changes in the application's managed object context before the application terminates. func applicationWillTerminate(_ application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. - // See also applicationDidEnterBackground:. - // Saves changes in the application's managed object context before the application terminates. + // Jan to be done (terminate LO) } } diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/Contents.json b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/Contents.json deleted file mode 100644 index cd69f7f90c00..000000000000 --- a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x", - "filename" : "iCloudDrive.png" - }, - { - "idiom" : "universal", - "scale" : "2x", - "filename" : "iclouddr...@2x.png" - }, - { - "idiom" : "universal", - "scale" : "3x", - "filename" : "iclouddr...@3x.png" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iCloudDrive.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iCloudDrive.png deleted file mode 100644 index d213949b467f..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iCloudDrive.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@2x.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@2x.png deleted file mode 100644 index ba486fbbe6ae..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@2x.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@3x.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@3x.png deleted file mode 100644 index 28c41597cf0f..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iCloudDrive.imageset/iclouddr...@3x.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/Contents.json b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/Contents.json deleted file mode 100644 index 2d0a29db946a..000000000000 --- a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/Contents.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x", - "filename" : "iPhone.png" - }, - { - "idiom" : "universal", - "scale" : "2x", - "filename" : "iph...@2x.png" - }, - { - "idiom" : "universal", - "scale" : "3x", - "filename" : "iph...@3x.png" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iPhone.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iPhone.png deleted file mode 100644 index defe533b489a..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iPhone.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@2x.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@2x.png deleted file mode 100644 index da7dcbff0dc4..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@2x.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@3x.png b/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@3x.png deleted file mode 100644 index 1c827c89af6f..000000000000 Binary files a/ios/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/iPhone.imageset/iph...@3x.png and /dev/null differ diff --git a/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift b/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift index c8c374ade570..1ef7d80c792f 100755 --- a/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift +++ b/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift @@ -7,17 +7,16 @@ // import UIKit -class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewControllerDelegate -{ - var currentDocumentName : String? - var currentCloudUrl : URL? - var currentStorageLocal : Bool = true - - +// DocumentController is the main viewer in the app, it displayes the selected +// documents and holds a top entry to view the properties as well as a normal +// menu to handle global actions +// It is a delegate class to recieve Menu events as well as file handling events +class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewControllerDelegate +{ // Show sidemenu (part of documentcontroller) - @IBAction func doMenu(_ sender: UIBarButtonItem) + @IBAction func doProperties(_ sender: UIBarButtonItem) { if (sender.tag == 99) { sender.tag = 0; @@ -39,20 +38,24 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewC sender.isEnabled = false sender.tag = 99 - let sidebar : SidebarController = self.storyboard!.instantiateViewController(withIdentifier: "SidebarController") as! SidebarController - view.addSubview(sidebar.view) - addChildViewController(sidebar) - sidebar.view.layoutIfNeeded() + let properties : PropertiesController = self.storyboard!.instantiateViewController(withIdentifier: "PropertiesController") as! PropertiesController + view.addSubview(properties.view) + addChildViewController(properties) + properties.view.layoutIfNeeded() - sidebar.view.frame=CGRect(x: 0 - UIScreen.main.bounds.size.width, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height); + properties.view.frame=CGRect(x: 0 - UIScreen.main.bounds.size.width, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height); UIView.animate(withDuration: 0.3, animations: { () -> Void in - sidebar.view.frame=CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height); + properties.view.frame=CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height); sender.isEnabled = true }, completion:nil) } + + // var currentDocumentName : String? + + internal func documentBrowser(_ controller: UIDocumentBrowserViewController, didRequestDocumentCreationWithHandler importHandler: @escaping (URL?, UIDocumentBrowserViewController.ImportMode) -> Void) { @@ -95,13 +98,6 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewC - func actionName(_ name : String) - { - currentDocumentName = name - } - - - func actionMenuSelected(_ tag : Int) { switch tag @@ -120,15 +116,6 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewC print("menu Save to be done") case 3: // Save as... - let vc = storyboard?.instantiateViewController(withIdentifier: "setNameAction") as! setNameAction - vc.modalPresentationStyle = .popover - vc.delegate = self - let popover = vc.popoverPresentationController! - popover.delegate = self as? UIPopoverPresentationControllerDelegate - popover.permittedArrowDirections = .up - popover.sourceView = janTest - popover.sourceRect = janTest.bounds - present(vc, animated: true, completion: nil) print("menu Save as... to be done") case 4: // Save as PDF... @@ -168,7 +155,6 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewC protocol MenuDelegate { func actionMenuSelected(_ tag : Int) - func actionName(_ name : String) } @@ -207,44 +193,3 @@ class DocumentActions: UITableViewController } - -class setNameAction: UIViewController -{ - // Pointer to callback class - var delegate : MenuDelegate? - var didEdit : Bool = false - - // reference to new name - @IBOutlet weak var editText: UITextField! - - - // continue "save as..." with new name - @IBAction func actionOK(_ sender: UIButton) - { - dismiss(animated: false) - if didEdit && editText.text != "" { - delegate?.actionName(editText.text!) - } - } - - - @IBAction func actionStartEdit(_ sender: UITextField) - { - if !didEdit { - sender.text = "" - didEdit = true - } - } - - @IBAction func actionCancel(_ sender: UIButton) - { - dismiss(animated: false) - } - - - override func viewDidLoad() - { - super.viewDidLoad() - } -} - diff --git a/ios/LibreOfficeLight/LibreOfficeLight/SideMenu.swift b/ios/LibreOfficeLight/LibreOfficeLight/PropertiesController.swift similarity index 97% rename from ios/LibreOfficeLight/LibreOfficeLight/SideMenu.swift rename to ios/LibreOfficeLight/LibreOfficeLight/PropertiesController.swift index ad3b1b8221cc..04ebaf78d670 100755 --- a/ios/LibreOfficeLight/LibreOfficeLight/SideMenu.swift +++ b/ios/LibreOfficeLight/LibreOfficeLight/PropertiesController.swift @@ -8,7 +8,7 @@ import UIKit -class SidebarController: UIViewController +class PropertiesController: UIViewController { // Temp. functions @IBAction func doStyle1(_ sender: UIButton) diff --git a/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard b/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard index 51bf66cbbb53..25d77018d279 100755 --- a/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard +++ b/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard @@ -33,9 +33,9 @@ </view> <toolbarItems/> <navigationItem key="navigationItem" title="Document" id="5c6-32-T4J"> - <barButtonItem key="leftBarButtonItem" image="menu" id="fdq-Uw-536" userLabel="Button Side Menu"> + <barButtonItem key="leftBarButtonItem" image="menu" id="fdq-Uw-536" userLabel="Button Properties"> <connections> - <action selector="doMenu:" destination="vXZ-lx-hvc" id="mHw-Uf-vh2"/> + <action selector="doProperties:" destination="vXZ-lx-hvc" id="mHw-Uf-vh2"/> </connections> </barButtonItem> <barButtonItem key="rightBarButtonItem" systemItem="action" id="BNq-ol-ZVK"> @@ -81,7 +81,7 @@ <navigationItem key="navigationItem" title="Print Manager" id="2Z5-ad-smF"> <barButtonItem key="leftBarButtonItem" image="menu" id="KpY-Uq-nOk"> <connections> - <action selector="doMenu:" destination="ay1-ce-WHs" id="abP-LB-4yO"/> + <action selector="doProperties:" destination="ay1-ce-WHs" id="abP-LB-4yO"/> </connections> </barButtonItem> </navigationItem> @@ -267,7 +267,7 @@ <navigationItem key="navigationItem" title="Properties" id="9nH-at-6AF"> <barButtonItem key="leftBarButtonItem" image="menu" id="wYo-zq-cqh"> <connections> - <action selector="doMenu:" destination="h7c-B7-pKT" id="Yls-8o-msb"/> + <action selector="doProporties:" destination="h7c-B7-pKT" id="Yls-8o-msb"/> </connections> </barButtonItem> <barButtonItem key="rightBarButtonItem" systemItem="trash" id="25I-J4-o11"> @@ -347,7 +347,7 @@ <accessibility key="accessibilityConfiguration"> <bool key="isElement" value="NO"/> </accessibility> - <state key="normal" title="Save as..."/> + <state key="normal" title="Save copy..."/> <connections> <action selector="actionMenuSelect:" destination="IER-X5-Ax8" eventType="touchUpInside" id="0gI-or-ji4"/> </connections> diff --git a/ios/LibreOfficeLight/LibreOfficeLight/lokit-Bridging-Header.h b/ios/LibreOfficeLight/LibreOfficeLight/lokit-Bridging-Header.h index 2eaf8fed39a6..0ddc877b0233 100644 --- a/ios/LibreOfficeLight/LibreOfficeLight/lokit-Bridging-Header.h +++ b/ios/LibreOfficeLight/LibreOfficeLight/lokit-Bridging-Header.h @@ -6,4 +6,8 @@ // file, You can obtain one at http://mozilla.org/MPL/2.0/. // + + +// LibreOfficeKit is a prelink of all used LO libraries, generated +// as its own xCode project. #import "../LibreOfficeKit/LibreOfficeKit/LibreOfficeKit.h" commit cfcdad938b2ca0fb9a4059530180bc1c7d1424bd Author: jan Iversen <j...@libreoffice.org> Date: Sat Oct 28 19:55:54 2017 +0200 iOS, use UIDocumentPickerViewController UIDocumentPickerViewController is new in iOS 11.0 and provides much more flexibility. Change-Id: Idd44ab57e8ddbf707327e8a66c5dae2a05ee172c diff --git a/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift b/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift index bb44f98d1ec3..dd6ee4183a80 100644 --- a/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift +++ b/ios/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift @@ -9,8 +9,6 @@ import UIKit import Foundation -var isCloudEnabled : Bool = false - @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate @@ -74,16 +72,12 @@ class AppDelegate: UIResponder, UIApplicationDelegate func applicationWillEnterForeground(_ application: UIApplication) { - // test if iCloud is still enabled - isCloudEnabled = (FileManager.default.ubiquityIdentityToken != nil) } func applicationDidBecomeActive(_ application: UIApplication) { - // test if iCloud is still enabled - isCloudEnabled = (FileManager.default.ubiquityIdentityToken != nil) } diff --git a/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift b/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift index 82b3613cc789..c8c374ade570 100755 --- a/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift +++ b/ios/LibreOfficeLight/LibreOfficeLight/DocumentController.swift @@ -7,29 +7,13 @@ // import UIKit - - -class DocumentController: UIViewController, MenuDelegate, UIDocumentPickerDelegate +class DocumentController: UIViewController, MenuDelegate, UIDocumentBrowserViewControllerDelegate { var currentDocumentName : String? var currentCloudUrl : URL? var currentStorageLocal : Bool = true - public func documentPicker(_ controller: UIDocumentPickerViewController, didPickDocumentAt url: URL) - { - currentCloudUrl = url - currentDocumentName = url.lastPathComponent - } - - func documentPickerWasCancelled(_ controller: UIDocumentPickerViewController) - { - currentCloudUrl = nil - currentDocumentName = nil - } - - - @IBOutlet weak var janTest: UILabel! // Show sidemenu (part of documentcontroller) @@ -60,7 +44,6 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentPickerDelega addChildViewController(sidebar) sidebar.view.layoutIfNeeded() - sidebar.view.frame=CGRect(x: 0 - UIScreen.main.bounds.size.width, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height); UIView.animate(withDuration: 0.3, animations: { () -> Void in @@ -70,18 +53,33 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentPickerDelega } - @IBOutlet weak var buttonSelectStorage: UIBarButtonItem! + internal func documentBrowser(_ controller: UIDocumentBrowserViewController, + didRequestDocumentCreationWithHandler importHandler: @escaping (URL?, UIDocumentBrowserViewController.ImportMode) -> Void) + { + // Asks the delegate to create a new document. + } + + internal func documentBrowser(_ controller: UIDocumentBrowserViewController, + didImportDocumentAt sourceURL: URL, + toDestinationURL destinationURL: URL) + { + // Tells the delegate that a document has been successfully imported. + } + internal func documentBrowser(_ controller: UIDocumentBrowserViewController, + failedToImportDocumentAt documentURL: URL, + error: Error?) + { + // Tells the delegate that the document browser failed to import the specified document. + } - @IBAction func doSelectStorage(_ sender: UIBarButtonItem) + internal func documentBrowser(_ controller: UIDocumentBrowserViewController, + didPickDocumentURLs documentURLs: [URL]) { - if isCloudEnabled { - currentStorageLocal = !currentStorageLocal - sender.image = currentStorageLocal ? #imageLiteral(resourceName: "iCloudDrive") : #imageLiteral(resourceName: "iPhone") - } - self.presentedViewController?.dismiss(animated: true, completion: nil) + // Tells the delegate that the user has selected one or more documents. } + @IBOutlet weak var janTest: UILabel! // Last stop before displaying popover override func prepare(for segue: UIStoryboardSegue, sender: Any?) @@ -108,19 +106,20 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentPickerDelega { switch tag { - case 1: // New - print("menu New to be done") - - case 2: // Open... - let openMenu = UIDocumentPickerViewController(documentTypes: ["public.content"], in: .open) + case 1: // Open... + // let openMenu = UIDocumentPickerViewController(documentTypes: ["public.data"], in: .open) + let openMenu = UIDocumentBrowserViewController() + //penMenu.allowsDocumentCreation = true + // UIDocumentBrowserViewController.ImportMode = UIDocumentBrowserViewController.ImportMode.none // copy, move + //openMenu.InterfaceStyle = UIDocumentPickerViewController.dark openMenu.delegate = self self.present(openMenu, animated: true, completion: nil) print("menu Open... to be done") - case 3: // Save + case 2: // Save print("menu Save to be done") - case 4: // Save as... + case 3: // Save as... let vc = storyboard?.instantiateViewController(withIdentifier: "setNameAction") as! setNameAction vc.modalPresentationStyle = .popover vc.delegate = self @@ -132,21 +131,12 @@ class DocumentController: UIViewController, MenuDelegate, UIDocumentPickerDelega present(vc, animated: true, completion: nil) print("menu Save as... to be done") - case 5: // Save as PDF... + case 4: // Save as PDF... print("menu Save as PDF... to be done") - case 6: // Print... + case 5: // Print... print("menu Print... to be done") - case 7: // Copy... - print("menu Copy... to be done") - - case 8: // Move... - print("menu Move... to be done") - - case 9: // Delete... - print("menu Delete... to be done") - default: // should not happen print("unknown menu" + String(tag)) } diff --git a/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard b/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard index aa0295e021c5..51bf66cbbb53 100755 --- a/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard +++ b/ios/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard @@ -4,10 +4,8 @@ <adaptation id="fullscreen"/> </device> <dependencies> - <deployment identifier="iOS"/> <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13174"/> <capability name="Constraints to layout margins" minToolsVersion="6.0"/> - <capability name="Navigation items with more than one left or right bar item" minToolsVersion="7.0"/> <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> </dependencies> <scenes> @@ -35,18 +33,11 @@ </view> <toolbarItems/> <navigationItem key="navigationItem" title="Document" id="5c6-32-T4J"> - <leftBarButtonItems> - <barButtonItem image="menu" id="fdq-Uw-536" userLabel="Button Side Menu"> - <connections> - <action selector="doMenu:" destination="vXZ-lx-hvc" id="mHw-Uf-vh2"/> - </connections> - </barButtonItem> - <barButtonItem image="iPhone" id="BNN-MQ-25d" userLabel="Button Select Storage"> - <connections> - <action selector="doSelectStorage:" destination="vXZ-lx-hvc" id="77L-yW-vcR"/> - </connections> - </barButtonItem> - </leftBarButtonItems> + <barButtonItem key="leftBarButtonItem" image="menu" id="fdq-Uw-536" userLabel="Button Side Menu"> + <connections> + <action selector="doMenu:" destination="vXZ-lx-hvc" id="mHw-Uf-vh2"/> + </connections> + </barButtonItem> <barButtonItem key="rightBarButtonItem" systemItem="action" id="BNq-ol-ZVK"> <connections> <segue destination="IER-X5-Ax8" kind="popoverPresentation" identifier="showActions" popoverAnchorBarButtonItem="BNq-ol-ZVK" id="xmZ-1A-ZrW"> @@ -57,7 +48,6 @@ </navigationItem> <simulatedToolbarMetrics key="simulatedBottomBarMetrics"/> <connections> - <outlet property="buttonSelectStorage" destination="BNN-MQ-25d" id="c5F-NA-mbv"/> <outlet property="janTest" destination="D1P-q2-3PT" id="ERV-pa-Fs9"/> </connections> </viewController> @@ -65,62 +55,6 @@ </objects> <point key="canvasLocation" x="1231" y="304"/> </scene> - <!--Create document name--> - <scene sceneID="M2W-AJ-QxD"> - <objects> - <viewController storyboardIdentifier="setNameAction" autoresizesArchivedViewToFullSize="NO" title="Create document name" automaticallyAdjustsScrollViewInsets="NO" id="99b-cf-b84" customClass="setNameAction" customModule="LibreOfficeLight" customModuleProvider="target" sceneMemberID="viewController"> - <layoutGuides> - <viewControllerLayoutGuide type="top" id="SMN-Rx-xIG"/> - <viewControllerLayoutGuide type="bottom" id="oj2-7U-Jur"/> - </layoutGuides> - <view key="view" contentMode="scaleToFill" id="eHg-qn-AKi"> - <rect key="frame" x="0.0" y="0.0" width="180" height="100"/> - <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> - <subviews> - <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" text="type name" borderStyle="roundedRect" textAlignment="natural" clearsOnBeginEditing="YES" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="P46-5S-7HA"> - <rect key="frame" x="16" y="8" width="152" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <nil key="textColor"/> - <fontDescription key="fontDescription" type="system" pointSize="14"/> - <textInputTraits key="textInputTraits"/> - <connections> - <action selector="actionStartEdit:" destination="99b-cf-b84" eventType="editingDidBegin" id="JIn-Jc-Lru"/> - </connections> - </textField> - <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="FBJ-A5-eSe" userLabel="Button Cancel"> - <rect key="frame" x="16" y="50" width="78" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <state key="normal" title="Cancel"/> - <connections> - <action selector="actionCancel:" destination="99b-cf-b84" eventType="touchUpInside" id="CIT-41-DsP"/> - </connections> - </button> - <button opaque="NO" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5gp-5e-vgs" userLabel="Button Ok"> - <rect key="frame" x="118" y="50" width="50" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <state key="normal" title="OK"/> - <connections> - <action selector="actionOK:" destination="99b-cf-b84" eventType="touchUpInside" id="qsc-rv-dcu"/> - </connections> - </button> - </subviews> - <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> - </view> - <extendedEdge key="edgesForExtendedLayout"/> - <value key="contentSizeForViewInPopover" type="size" width="240" height="80"/> - <nil key="simulatedStatusBarMetrics"/> - <nil key="simulatedTopBarMetrics"/> - <nil key="simulatedBottomBarMetrics"/> - <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/> - <size key="freeformSize" width="180" height="100"/> - <connections> - <outlet property="editText" destination="P46-5S-7HA" id="Qit-pG-Yi1"/> - </connections> - </viewController> - <placeholder placeholderIdentifier="IBFirstResponder" id="p1z-28-W1j" userLabel="First Responder" sceneMemberID="firstResponder"/> - </objects> - <point key="canvasLocation" x="2020" y="305"/> - </scene> <!--Print Manager--> <scene sceneID="viJ-XJ-htc"> <objects> @@ -195,114 +129,112 @@ <rect key="frame" x="0.0" y="0.0" width="768" height="1024"/> <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> <subviews> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="K3a-CQ-sBC"> - <rect key="frame" x="20" y="359" width="72" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="g5y-SJ-jU1"> + <rect key="frame" x="20" y="84" width="69" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="Rg4-bW-MQk"/> + <constraint firstAttribute="height" constant="45" id="GiU-Zv-tSK"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style6" image="document"> + <state key="normal" title="Style1" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle6:" destination="E9y-3m-fEc" eventType="touchUpInside" id="t58-52-FY4"/> + <action selector="doStyle1:" destination="E9y-3m-fEc" eventType="touchUpInside" id="Tvz-2x-oik"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hk4-yl-lM9"> - <rect key="frame" x="20" y="304" width="72" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YTV-Y5-L8R"> + <rect key="frame" x="20" y="139" width="71" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="hty-y5-gVo"/> + <constraint firstAttribute="height" constant="45" id="6Nn-8E-Eun"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style5" image="document"> + <state key="normal" title="Style2" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle5:" destination="E9y-3m-fEc" eventType="touchUpInside" id="o3m-zn-dyf"/> + <action selector="doStyle2:" destination="E9y-3m-fEc" eventType="touchUpInside" id="u7L-s5-vmD"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CBj-V3-BKJ"> - <rect key="frame" x="20" y="249" width="72" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eZV-Rh-hCf"> + <rect key="frame" x="20" y="194" width="72" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="wOH-9b-B8P"/> + <constraint firstAttribute="height" constant="45" id="aVx-Vb-bZq"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style4" image="document"> + <state key="normal" title="Style3" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle4:" destination="E9y-3m-fEc" eventType="touchUpInside" id="x4U-Gg-ylt"/> + <action selector="doStyle3:" destination="E9y-3m-fEc" eventType="touchUpInside" id="t2Q-iq-Exh"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eZV-Rh-hCf"> - <rect key="frame" x="20" y="194" width="72" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CBj-V3-BKJ"> + <rect key="frame" x="20" y="249" width="72" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="N7I-YK-5uo"/> + <constraint firstAttribute="height" constant="45" id="RLA-17-w0s"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style3" image="document"> + <state key="normal" title="Style4" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle3:" destination="E9y-3m-fEc" eventType="touchUpInside" id="t2Q-iq-Exh"/> + <action selector="doStyle4:" destination="E9y-3m-fEc" eventType="touchUpInside" id="x4U-Gg-ylt"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="YTV-Y5-L8R"> - <rect key="frame" x="20" y="139" width="71" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Hk4-yl-lM9"> + <rect key="frame" x="20" y="304" width="72" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="4H0-0k-rm5"/> + <constraint firstAttribute="height" constant="45" id="AEu-v6-MfG"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style2" image="document"> + <state key="normal" title="Style5" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle2:" destination="E9y-3m-fEc" eventType="touchUpInside" id="u7L-s5-vmD"/> + <action selector="doStyle5:" destination="E9y-3m-fEc" eventType="touchUpInside" id="o3m-zn-dyf"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5Mv-7b-xjF"> - <rect key="frame" x="20" y="414" width="70" height="45"/> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="K3a-CQ-sBC"> + <rect key="frame" x="20" y="359" width="72" height="45"/> <constraints> - <constraint firstAttribute="height" constant="45" id="Fyt-Iq-YWv"/> + <constraint firstAttribute="height" constant="45" id="fyO-4v-nFF"/> </constraints> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style7" image="document"> + <state key="normal" title="Style6" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle7:" destination="E9y-3m-fEc" eventType="touchUpInside" id="cNb-al-UOa"/> + <action selector="doStyle6:" destination="E9y-3m-fEc" eventType="touchUpInside" id="t58-52-FY4"/> </connections> </button> - <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="g5y-SJ-jU1"> - <rect key="frame" x="20" y="84" width="69" height="45"/> - <constraints> - <constraint firstAttribute="height" constant="45" id="v75-o1-ii6"/> - </constraints> + <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="5Mv-7b-xjF"> + <rect key="frame" x="20" y="414" width="70" height="45"/> <inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/> - <state key="normal" title="Style1" image="document"> + <state key="normal" title="Style7" image="document"> <color key="titleColor" cocoaTouchSystemColor="darkTextColor"/> </state> <connections> - <action selector="doStyle1:" destination="E9y-3m-fEc" eventType="touchUpInside" id="Tvz-2x-oik"/> + <action selector="doStyle7:" destination="E9y-3m-fEc" eventType="touchUpInside" id="cNb-al-UOa"/> </connections> </button> </subviews> <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> <constraints> - <constraint firstItem="Hk4-yl-lM9" firstAttribute="top" secondItem="CBj-V3-BKJ" secondAttribute="bottom" constant="10" id="3aD-it-Msw"/> - <constraint firstItem="Hk4-yl-lM9" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="4zN-qk-gCk"/> - <constraint firstItem="g5y-SJ-jU1" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="JxJ-kA-qwz"/> - <constraint firstItem="eZV-Rh-hCf" firstAttribute="top" secondItem="YTV-Y5-L8R" secondAttribute="bottom" constant="10" id="PLr-1M-6Jv"/> - <constraint firstItem="YTV-Y5-L8R" firstAttribute="top" secondItem="g5y-SJ-jU1" secondAttribute="bottom" constant="10" id="Ws8-TE-V6O"/> - <constraint firstItem="CBj-V3-BKJ" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="XWf-mb-RwF"/> - <constraint firstItem="eZV-Rh-hCf" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="akz-vF-hHv"/> - <constraint firstItem="K3a-CQ-sBC" firstAttribute="top" secondItem="Hk4-yl-lM9" secondAttribute="bottom" constant="10" id="bIw-3k-voG"/> - <constraint firstItem="YTV-Y5-L8R" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="dto-y0-1aX"/> - <constraint firstItem="CBj-V3-BKJ" firstAttribute="top" secondItem="eZV-Rh-hCf" secondAttribute="bottom" constant="10" id="hEC-J7-NxJ"/> - <constraint firstItem="5Mv-7b-xjF" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="k0M-cK-qBw"/> - <constraint firstItem="g5y-SJ-jU1" firstAttribute="top" secondItem="qJv-1E-iEi" secondAttribute="bottom" constant="64" id="nSZ-rC-b7a"/> - <constraint firstItem="K3a-CQ-sBC" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="njx-0E-3hs"/> - <constraint firstItem="5Mv-7b-xjF" firstAttribute="top" secondItem="K3a-CQ-sBC" secondAttribute="bottom" constant="10" id="sPb-nU-SoB"/> + <constraint firstItem="eZV-Rh-hCf" firstAttribute="top" secondItem="YTV-Y5-L8R" secondAttribute="bottom" constant="10" id="8MW-wy-3mP"/> + <constraint firstItem="YTV-Y5-L8R" firstAttribute="leading" secondItem="g5y-SJ-jU1" secondAttribute="leading" id="GdK-zW-XUW"/> + <constraint firstItem="syI-80-ufe" firstAttribute="top" secondItem="5Mv-7b-xjF" secondAttribute="bottom" constant="565" id="H6C-1e-7UE"/> + <constraint firstItem="5Mv-7b-xjF" firstAttribute="leading" secondItem="e1u-sT-aSe" secondAttribute="leadingMargin" id="NnF-fS-TRc"/> + <constraint firstItem="CBj-V3-BKJ" firstAttribute="leading" secondItem="eZV-Rh-hCf" secondAttribute="leading" id="Nts-Pq-gbT"/> + <constraint firstItem="Hk4-yl-lM9" firstAttribute="top" secondItem="CBj-V3-BKJ" secondAttribute="bottom" constant="10" id="Qjz-bp-Zdz"/> + <constraint firstItem="CBj-V3-BKJ" firstAttribute="top" secondItem="eZV-Rh-hCf" secondAttribute="bottom" constant="10" id="TqY-lf-jld"/> + <constraint firstItem="Hk4-yl-lM9" firstAttribute="leading" secondItem="CBj-V3-BKJ" secondAttribute="leading" id="X9n-Bn-V0R"/> + <constraint firstItem="eZV-Rh-hCf" firstAttribute="leading" secondItem="YTV-Y5-L8R" secondAttribute="leading" id="XFl-0W-rjg"/> + <constraint firstItem="K3a-CQ-sBC" firstAttribute="top" secondItem="Hk4-yl-lM9" secondAttribute="bottom" constant="10" id="guC-5D-obv"/> + <constraint firstItem="K3a-CQ-sBC" firstAttribute="leading" secondItem="Hk4-yl-lM9" secondAttribute="leading" id="jpn-3d-FRp"/> + <constraint firstItem="5Mv-7b-xjF" firstAttribute="top" secondItem="K3a-CQ-sBC" secondAttribute="bottom" constant="10" id="ozy-Rl-tAb"/> + <constraint firstItem="5Mv-7b-xjF" firstAttribute="leading" secondItem="K3a-CQ-sBC" secondAttribute="leading" id="sHO-T6-sUz"/> + <constraint firstItem="YTV-Y5-L8R" firstAttribute="top" secondItem="g5y-SJ-jU1" secondAttribute="bottom" constant="10" id="v9r-Th-jAf"/> + <constraint firstItem="g5y-SJ-jU1" firstAttribute="top" secondItem="qJv-1E-iEi" secondAttribute="bottom" constant="64" id="wPY-qL-9aw"/> </constraints> </view> </viewController> @@ -354,41 +286,20 @@ <objects> <tableViewController autoresizesArchivedViewToFullSize="NO" title="Document Actions" automaticallyAdjustsScrollViewInsets="NO" modalTransitionStyle="crossDissolve" modalPresentationStyle="overCurrentContext" clearsSelectionOnViewWillAppear="NO" id="IER-X5-Ax8" customClass="DocumentActions" customModule="LibreOfficeLight" customModuleProvider="target" sceneMemberID="viewController"> <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="plain" separatorStyle="default" rowHeight="30" sectionHeaderHeight="28" sectionFooterHeight="28" id="RqF-IL-YJc"> - <rect key="frame" x="0.0" y="0.0" width="134" height="270"/> + <rect key="frame" x="0.0" y="0.0" width="134" height="150"/> <autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxX="YES" flexibleMinY="YES" flexibleMaxY="YES"/> <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> <sections> <tableViewSection id="iZc-fF-wRk"> <cells> - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="KLS-lN-QYa"> - <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.5"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <button opaque="NO" tag="1" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="mCx-kB-iUI"> - <rect key="frame" x="8" y="0.0" width="118" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <accessibility key="accessibilityConfiguration"> - <bool key="isElement" value="NO"/> - </accessibility> - <state key="normal" title="New"/> - <connections> - <action selector="actionMenuSelect:" destination="IER-X5-Ax8" eventType="touchUpInside" id="0gI-or-ji1"/> - </connections> - </button> - </subviews> - </tableViewCellContentView> - </tableViewCell> <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="VNE-JL-Lw0"> - <rect key="frame" x="0.0" y="30" width="134" height="30"/> + <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="VNE-JL-Lw0" id="EB2-HA-y79"> <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> <autoresizingMask key="autoresizingMask"/> <subviews> - <button opaque="NO" tag="2" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="myk-zs-md7"> + <button opaque="NO" tag="1" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="myk-zs-md7"> <rect key="frame" x="8" y="0.0" width="118" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <accessibility key="accessibilityConfiguration"> @@ -403,13 +314,13 @@ </tableViewCellContentView> </tableViewCell> <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="XW7-H5-0ob"> - <rect key="frame" x="0.0" y="60" width="134" height="30"/> + <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="XW7-H5-0ob" id="lJN-OL-mO8"> <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> <autoresizingMask key="autoresizingMask"/> <subviews> - <button opaque="NO" tag="3" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b90-ja-Wm0"> + <button opaque="NO" tag="2" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="b90-ja-Wm0"> <rect key="frame" x="8" y="0.0" width="118" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <accessibility key="accessibilityConfiguration" identifier="actionSave"> @@ -424,13 +335,13 @@ </tableViewCellContentView> </tableViewCell> <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="AN7-6j-wO7"> - <rect key="frame" x="0.0" y="90" width="134" height="30"/> + <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="AN7-6j-wO7" id="kl1-nQ-aIu"> <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> <autoresizingMask key="autoresizingMask"/> <subviews> - <button opaque="NO" tag="4" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6vH-aM-aYe"> + <button opaque="NO" tag="3" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="6vH-aM-aYe"> <rect key="frame" x="8" y="0.0" width="118" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <accessibility key="accessibilityConfiguration"> @@ -445,13 +356,13 @@ </tableViewCellContentView> </tableViewCell> <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="GmK-gj-GYu"> - <rect key="frame" x="0.0" y="120" width="134" height="30"/> + <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="GmK-gj-GYu" id="3OK-Zz-mqN"> <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> <autoresizingMask key="autoresizingMask"/> <subviews> - <button opaque="NO" tag="5" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="apE-3B-lUt" userLabel="Button Save As PDF"> + <button opaque="NO" tag="4" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="apE-3B-lUt" userLabel="Button Save As PDF"> <rect key="frame" x="8" y="0.0" width="118" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <accessibility key="accessibilityConfiguration" identifier="actionSaveAsPDF"> @@ -466,13 +377,13 @@ </tableViewCellContentView> </tableViewCell> <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="diN-3v-tgm"> - <rect key="frame" x="0.0" y="150" width="134" height="30"/> + <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="diN-3v-tgm" id="24s-fs-4cw"> <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> <autoresizingMask key="autoresizingMask"/> <subviews> - <button opaque="NO" tag="6" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tvH-WR-c61" userLabel="Button Print"> + <button opaque="NO" tag="5" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="tvH-WR-c61" userLabel="Button Print"> <rect key="frame" x="8" y="0.0" width="118" height="30"/> <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> <accessibility key="accessibilityConfiguration"> @@ -486,69 +397,6 @@ </subviews> </tableViewCellContentView> </tableViewCell> - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="0Cu-Xh-XUR"> - <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="0Cu-Xh-XUR" id="MHs-m1-fPx"> - <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <button opaque="NO" tag="7" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="aLF-gf-Qy7" userLabel="Button Copy"> - <rect key="frame" x="8" y="0.0" width="118" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <accessibility key="accessibilityConfiguration" identifier="actionCopy"> - <bool key="isElement" value="NO"/> - </accessibility> - <state key="normal" title="Copy..."/> - <connections> - <action selector="actionMenuSelect:" destination="IER-X5-Ax8" eventType="touchUpInside" id="ga5-sF-FC6"/> - </connections> - </button> - </subviews> - </tableViewCellContentView> - </tableViewCell> - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="Tos-KD-TOY"> - <rect key="frame" x="0.0" y="210" width="134" height="30"/> - <autoresizingMask key="autoresizingMask"/> - <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Tos-KD-TOY" id="wXd-3T-jNF"> - <rect key="frame" x="0.0" y="0.0" width="134" height="29.5"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <button opaque="NO" tag="8" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="DaU-7Y-QN0" userLabel="Button Move"> - <rect key="frame" x="8" y="0.0" width="118" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <accessibility key="accessibilityConfiguration"> - <bool key="isElement" value="NO"/> - </accessibility> - <state key="normal" title="Move..."/> - <connections> - <action selector="actionMenuSelect:" destination="IER-X5-Ax8" eventType="touchUpInside" id="fdk-gZ-5BR"/> - </connections> - </button> - </subviews> - </tableViewCellContentView> - </tableViewCell> - <tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="1ly-sz-g0x"> - <rect key="frame" x="0.0" y="240" 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.5"/> - <autoresizingMask key="autoresizingMask"/> - <subviews> - <button opaque="NO" tag="9" contentMode="scaleToFill" fixedFrame="YES" contentHorizontalAlignment="left" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="516-b0-K4N" userLabel="Button Delete"> - <rect key="frame" x="8" y="0.0" width="118" height="30"/> - <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/> - <accessibility key="accessibilityConfiguration" identifier="actionDelete"> - <bool key="isElement" value="NO"/> - </accessibility> - <state key="normal" title="Delete..."/> - <connections> - <action selector="actionMenuSelect:" destination="IER-X5-Ax8" eventType="touchUpInside" id="YLz-aP-Poo"/> - </connections> - </button> - </subviews> - </tableViewCellContentView> - </tableViewCell> </cells> </tableViewSection> </sections> @@ -558,17 +406,13 @@ </connections> </tableView> <extendedEdge key="edgesForExtendedLayout"/> - <value key="contentSizeForViewInPopover" type="size" width="134" height="300"/> + <value key="contentSizeForViewInPopover" type="size" width="134" height="150"/> <nil key="simulatedStatusBarMetrics"/> <nil key="simulatedTopBarMetrics"/> <nil key="simulatedBottomBarMetrics"/> <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/> - <size key="freeformSize" width="134" height="270"/> + <size key="freeformSize" width="134" height="150"/> <connections> - <outlet property="buttonCopy" destination="aLF-gf-Qy7" id="czl-bI-0Qu"/> - <outlet property="buttonDelete" destination="516-b0-K4N" id="Zvb-8p-qrj"/> - <outlet property="buttonMove" destination="DaU-7Y-QN0" id="QRd-c8-teO"/> - <outlet property="buttonNew" destination="mCx-kB-iUI" id="E2p-ip-Slc"/> <outlet property="buttonOpen" destination="myk-zs-md7" id="xQK-I1-pDl"/> <outlet property="buttonPrint" destination="tvH-WR-c61" id="4YU-p2-Fim"/> <outlet property="buttonSave" destination="b90-ja-Wm0" id="Sdz-lq-s3S"/> @@ -583,7 +427,6 @@ </scenes> <resources> <image name="document" width="20" height="20"/> - <image name="iPhone" width="18" height="37"/> <image name="menu" width="22" height="22"/> </resources> </document> _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits