iOS LibreOfficeLight reactivate sidemenu
Reactivate side menu in DocumentController
removed unused png files
Change-Id: Ib7da718f53370d6a8a3c82d6850817ea7bc12abc
Reviewed-on: https://gerrit.libreoffice.org/35675
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: jan iversen <jani@libreoffice.org>
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj b/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
index 6fe0b98..cf301c3 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight.xcodeproj/project.pbxproj
@@ -16,12 +16,10 @@
397E09081E597BD8001374E0 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 397E09071E597BD8001374E0 /* Assets.xcassets */; };
397E09161E597BD8001374E0 /* LibreOfficeLightTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 397E09151E597BD8001374E0 /* LibreOfficeLightTests.swift */; };
397E09211E597BD8001374E0 /* LibreOfficeLightUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 397E09201E597BD8001374E0 /* LibreOfficeLightUITests.swift */; };
3992D8581E5B761700BEA987 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D8571E5B761700BEA987 /* ViewController.swift */; };
3992D85A1E5B762A00BEA987 /* DocumentController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D8591E5B762A00BEA987 /* DocumentController.swift */; };
3992D85D1E5B764A00BEA987 /* SideMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D85B1E5B764A00BEA987 /* SideMenu.swift */; };
3992D85E1E5B764A00BEA987 /* FileManagerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3992D85C1E5B764A00BEA987 /* FileManagerController.swift */; };
399648471E5B87DC00E73E83 /* ViewProperties.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399648461E5B87DC00E73E83 /* ViewProperties.swift */; };
399648491E5C4E5500E73E83 /* LO.swift in Sources */ = {isa = PBXBuildFile; fileRef = 399648481E5C4E5500E73E83 /* LO.swift */; };
39A83A8F1E5F471D00D0C683 /* lokit.c in Sources */ = {isa = PBXBuildFile; fileRef = 39A83A8E1E5F471D00D0C683 /* lokit.c */; };
39B084E31E5F0A9600682A59 /* lo.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 39B084E21E5F0A9600682A59 /* lo.xcconfig */; };
39B08B9D1E5F0BB600682A59 /* fundamentalrc in Resources */ = {isa = PBXBuildFile; fileRef = 39B084E51E5F0BB400682A59 /* fundamentalrc */; };
@@ -69,12 +67,10 @@
397E091C1E597BD8001374E0 /* LibreOfficeLightUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = LibreOfficeLightUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
397E09201E597BD8001374E0 /* LibreOfficeLightUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = LibreOfficeLightUITests.swift; path = LibreOfficeLightUITests/LibreOfficeLightUITests.swift; sourceTree = SOURCE_ROOT; };
397E09221E597BD8001374E0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = LibreOfficeLightUITests/Info.plist; sourceTree = SOURCE_ROOT; };
3992D8571E5B761700BEA987 /* ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ViewController.swift; path = LibreOfficeLight/ViewController.swift; 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; };
3992D85C1E5B764A00BEA987 /* FileManagerController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = FileManagerController.swift; path = LibreOfficeLight/FileManagerController.swift; sourceTree = SOURCE_ROOT; };
399648461E5B87DC00E73E83 /* ViewProperties.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ViewProperties.swift; path = LibreOfficeLight/ViewProperties.swift; sourceTree = SOURCE_ROOT; };
399648481E5C4E5500E73E83 /* LO.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = LO.swift; path = LibreOfficeLight/LO.swift; sourceTree = SOURCE_ROOT; };
39A83A8D1E5F471C00D0C683 /* lokit-Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.h; name = "lokit-Bridging-Header.h"; path = "LibreOfficeLight/lokit-Bridging-Header.h"; sourceTree = SOURCE_ROOT; };
39A83A8E1E5F471D00D0C683 /* lokit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lokit.c; path = LibreOfficeLight/lokit.c; sourceTree = SOURCE_ROOT; };
39B084E21E5F0A9600682A59 /* lo.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = lo.xcconfig; path = "../../../../ios-work/workdir/ios/generated/lo.xcconfig"; sourceTree = SOURCE_ROOT; };
@@ -165,13 +161,11 @@
children = (
39A83A8E1E5F471D00D0C683 /* lokit.c */,
397E08FD1E597BD8001374E0 /* AppDelegate.swift */,
3992D8571E5B761700BEA987 /* ViewController.swift */,
3992D85B1E5B764A00BEA987 /* SideMenu.swift */,
3992D8591E5B762A00BEA987 /* DocumentController.swift */,
3992D85C1E5B764A00BEA987 /* FileManagerController.swift */,
392ED9B21E5E4B03005C8435 /* ViewPrintManager.swift */,
399648461E5B87DC00E73E83 /* ViewProperties.swift */,
399648481E5C4E5500E73E83 /* LO.swift */,
397E09011E597BD8001374E0 /* Main.storyboard */,
397868D81E59A3EA007F9248 /* LaunchScreen.xib */,
39A83A8D1E5F471C00D0C683 /* lokit-Bridging-Header.h */,
@@ -375,8 +369,6 @@
3992D85A1E5B762A00BEA987 /* DocumentController.swift in Sources */,
397E08FE1E597BD8001374E0 /* AppDelegate.swift in Sources */,
39A83A8F1E5F471D00D0C683 /* lokit.c in Sources */,
399648491E5C4E5500E73E83 /* LO.swift in Sources */,
3992D8581E5B761700BEA987 /* ViewController.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
index d4dc897..ea72bfd 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/AppDelegate.swift
@@ -15,7 +15,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate
{
var window: UIWindow?
// MARK: - AppDelegate functions
@@ -23,8 +23,8 @@ class AppDelegate: UIResponder, UIApplicationDelegate
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
{
LOinterface.Initialize()
LOkit_Init()
// Get version info
let appInfo = Bundle.main.infoDictionary as! Dictionary<String,AnyObject>
let applicationVersion = (appInfo["CFBundleShortVersionString"] as! String) + "." +
@@ -32,7 +32,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate
let defaults = UserDefaults.standard
defaults.set(applicationVersion, forKey: "application_version")
defaults.synchronize()
// Override point for customization after application launch.
return true
}
@@ -66,7 +66,7 @@ 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/Assets.xcassets/AppIcon.appiconset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/AppIcon.appiconset/Contents.json
index 2f6bc9b..501be9c 100644
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/AppIcon.appiconset/Contents.json
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/AppIcon.appiconset/Contents.json
@@ -1,32 +1,97 @@
{
"images" : [
{
"idiom" : "ipad",
"size" : "83.5x83.5",
"scale" : "2x",
"filename" : "LibreOffice-83.5x83.5@2x.png"
},
{
"idiom" : "ipad",
"size" : "76x76",
"scale" : "2x",
"filename" : "LibreOffice-76x76@2x.png"
"idiom" : "iphone",
"size" : "20x20",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "60x60",
"scale" : "2x",
"filename" : "LibreOffice-60x60@2x.png"
"size" : "20x20",
"scale" : "3x"
},
{
"size" : "29x29",
"idiom" : "iphone",
"filename" : "LibreOffice-Small.png",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "29x29",
"scale" : "2x",
"filename" : "LibreOffice-Small.png"
"scale" : "3x"
},
{
"idiom" : "iphone",
"size" : "40x40",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "40x40",
"scale" : "3x"
},
{
"size" : "60x60",
"idiom" : "iphone",
"filename" : "LibreOffice-60x60@2x.png",
"scale" : "2x"
},
{
"idiom" : "iphone",
"size" : "60x60",
"scale" : "3x"
},
{
"idiom" : "ipad",
"size" : "20x20",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "20x20",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "29x29",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "29x29",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "40x40",
"scale" : "1x"
},
{
"idiom" : "ipad",
"size" : "40x40",
"scale" : "2x"
},
{
"idiom" : "ipad",
"size" : "76x76",
"scale" : "1x"
},
{
"size" : "76x76",
"idiom" : "ipad",
"filename" : "LibreOffice-76x76@2x.png",
"scale" : "2x"
},
{
"size" : "83.5x83.5",
"idiom" : "ipad",
"filename" : "LibreOffice-83.5x83.5@2x.png",
"scale" : "2x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
}
\ No newline at end of file
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/Contents.json
deleted file mode 100644
index 8742f628..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/Contents.json
+++ /dev/null
@@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x",
"filename" : "pdf.png"
},
{
"idiom" : "universal",
"scale" : "2x",
"filename" : "pdf.png"
},
{
"idiom" : "universal",
"scale" : "3x",
"filename" : "pdf.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/pdf.png b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/pdf.png
deleted file mode 100644
index 08e1731..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/pdf.imageset/pdf.png
+++ /dev/null
Binary files differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/Contents.json
deleted file mode 100644
index 3cb4a13..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/Contents.json
+++ /dev/null
@@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x",
"filename" : "print.png"
},
{
"idiom" : "universal",
"scale" : "2x",
"filename" : "print.png"
},
{
"idiom" : "universal",
"scale" : "3x",
"filename" : "print.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/print.png b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/print.png
deleted file mode 100644
index b73c31b..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/print.imageset/print.png
+++ /dev/null
Binary files differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/Contents.json
deleted file mode 100644
index a17872b..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/Contents.json
+++ /dev/null
@@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x",
"filename" : "properties.png"
},
{
"idiom" : "universal",
"scale" : "2x",
"filename" : "properties.png"
},
{
"idiom" : "universal",
"scale" : "3x",
"filename" : "properties.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/properties.png b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/properties.png
deleted file mode 100644
index 3186d45..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/properties.imageset/properties.png
+++ /dev/null
Binary files differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/Contents.json
deleted file mode 100644
index 82ec4f8..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/Contents.json
+++ /dev/null
@@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x",
"filename" : "save.png"
},
{
"idiom" : "universal",
"scale" : "2x",
"filename" : "save.png"
},
{
"idiom" : "universal",
"scale" : "3x",
"filename" : "save.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/save.png b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/save.png
deleted file mode 100644
index 43d20e5..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/save.imageset/save.png
+++ /dev/null
Binary files differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/Contents.json b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/Contents.json
deleted file mode 100644
index 9988ef3..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/Contents.json
+++ /dev/null
@@ -1,23 +0,0 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x",
"filename" : "saveas.png"
},
{
"idiom" : "universal",
"scale" : "2x",
"filename" : "saveas.png"
},
{
"idiom" : "universal",
"scale" : "3x",
"filename" : "saveas.png"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/saveas.png b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/saveas.png
deleted file mode 100644
index d1d6ea2..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Assets.xcassets/saveas.imageset/saveas.png
+++ /dev/null
Binary files differ
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/DocumentController.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/DocumentController.swift
index 1b61f6b..8b35559 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/DocumentController.swift
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/DocumentController.swift
@@ -11,9 +11,41 @@ import UIKit
class DocumentController: UIViewController, DocumentActionsControlDelegate
{
@IBAction func returned(segue: UIStoryboardSegue)
// Show sidemenu (part of documentcontroller)
@IBAction func doMenu(_ sender: UIBarButtonItem)
{
print("I returned")
if (sender.tag == 10) {
sender.tag = 0;
let viewMenuBack : UIView = view.subviews.last!
UIView.animate(withDuration: 0.3, animations: { () -> Void in
var frameMenu : CGRect = viewMenuBack.frame
frameMenu.origin.x = -1 * UIScreen.main.bounds.size.width
viewMenuBack.frame = frameMenu
viewMenuBack.layoutIfNeeded()
viewMenuBack.backgroundColor = UIColor.clear
}, completion: { (finished) -> Void in
viewMenuBack.removeFromSuperview()
})
return
}
sender.isEnabled = false
sender.tag = 10
let sidebar : SidebarController = self.storyboard!.instantiateViewController(withIdentifier: "SidebarController") as! SidebarController
view.addSubview(sidebar.view)
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
sidebar.view.frame=CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height);
sender.isEnabled = true
}, completion:nil)
}
@@ -54,6 +86,16 @@ class DocumentController: UIViewController, DocumentActionsControlDelegate
// Called when returning from filemanager
@IBAction func returned(segue: UIStoryboardSegue)
{
// JIX actually open document
print("I returned")
}
func actionDelete()
{
// JIX Close active documents if any
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
index a030ad4..416af59 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/Info.plist
@@ -30,11 +30,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>0.2</string>
<string>0.3</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>3</string>
<string>1</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.business</string>
<key>LSMultipleInstancesProhibited</key>
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/LO.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/LO.swift
deleted file mode 100755
index c070710..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/LO.swift
+++ /dev/null
@@ -1,40 +0,0 @@
//
// This file is part of the LibreOffice project.
//
// This 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/.
//
// Global variable to reference LibreOffice functions
var LOinterface = LOkit.init()
class LOkit
{
init()
{
LOkit_Init()
}
func Initialize()
{
let myInput = "ping command jan var her"
LOkit_ClientCommand(myInput)
let my2Input = "mouse command jan var her"
LOkit_ClientCommand(my2Input)
}
func DeleteCurrentDocument()
{
}
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/SideMenu.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/SideMenu.swift
index ef5a1f7..ad3b1b8 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/SideMenu.swift
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/SideMenu.swift
@@ -10,60 +10,60 @@ import UIKit
class SidebarController: UIViewController
{
@IBAction func menuOpen(_ sender: Any)
{
loadController("FileManager")
}
@IBAction func menuNew(_ sender: Any)
// Temp. functions
@IBAction func doStyle1(_ sender: UIButton)
{
loadController("Document")
}
@IBAction func menuSave(_ sender: Any)
@IBAction func doStyle2(_ sender: UIButton)
{
loadController("Document")
}
@IBAction func menuSaveAs(_ sender: Any)
{
loadController("FileManager")
}
@IBAction func menuPDF(_ sender: Any)
@IBAction func doStyle3(_ sender: UIButton)
{
loadController("Document")
}
@IBAction func menuProperties(_ sender: Any)
@IBAction func doStyle4(_ sender: UIButton)
{
loadController("Properties")
loadController("Document")
}
@IBAction func menuPrint(_ sender: Any)
@IBAction func doStyle5(_ sender: UIButton)
{
loadController("PrintManager")
loadController("Document")
}
@IBAction func doStyle6(_ sender: UIButton)
{
loadController("Document")
}
@IBAction func doStyle7(_ sender: UIButton)
{
loadController("Document")
}
func loadController(_ name:String)
{
let destController : UIViewController = self.storyboard!.instantiateViewController(withIdentifier: name)
self.navigationController!.pushViewController(destController, animated: true)
UIView.animate(withDuration: 0.3, animations: { () -> Void in
self.view.frame = CGRect(x: -UIScreen.main.bounds.size.width, y: 0, width: UIScreen.main.bounds.size.width,height: UIScreen.main.bounds.size.height)
self.view.layoutIfNeeded()
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/ViewController.swift b/ios/experimental/LibreOfficeLight/LibreOfficeLight/ViewController.swift
deleted file mode 100755
index bbcce15..0000000
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/ViewController.swift
+++ /dev/null
@@ -1,99 +0,0 @@
//
// This file is part of the LibreOffice project.
//
// This 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/.
//
import UIKit
class ViewController: UIViewController, UIPopoverPresentationControllerDelegate {
// MARK: - ViewController menu actions
func doMenu(_ sender: UIBarButtonItem)
{
if (sender.tag == 10)
{
sender.tag = 0;
let viewMenuBack : UIView = view.subviews.last!
UIView.animate(withDuration: 0.3, animations: { () -> Void in
var frameMenu : CGRect = viewMenuBack.frame
frameMenu.origin.x = -1 * UIScreen.main.bounds.size.width
viewMenuBack.frame = frameMenu
viewMenuBack.layoutIfNeeded()
viewMenuBack.backgroundColor = UIColor.clear
}, completion: { (finished) -> Void in
viewMenuBack.removeFromSuperview()
})
return
}
sender.isEnabled = false
sender.tag = 10
let sidebar : SidebarController = self.storyboard!.instantiateViewController(withIdentifier: "SidebarController") as! SidebarController
self.view.addSubview(sidebar.view)
self.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
sidebar.view.frame=CGRect(x: 0, y: 0, width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height);
sender.isEnabled = true
}, completion:nil)
}
func doDelete(_ sender: UIBarButtonItem)
{
LOinterface.DeleteCurrentDocument()
}
// MARK: - ViewController basic
override func viewDidLoad()
{
super.viewDidLoad()
// Do any additional setup after loading the view.
}
override func didReceiveMemoryWarning()
{
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
// func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
// return UIModalPresentationStyle.none
// }
// override func prepare(for segue: UIStoryboardSegue, sender: Any?)
// {
// if segue.identifier == "doShowFileManagerActions" {
// let popoverViewController = segue.destination
// popoverViewController.modalPresentationStyle = UIModalPresentationStyle.popover
// popoverViewController.popoverPresentationController!.delegate = self
// }
// }
}
diff --git a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
index eb059f9..01a75ba 100755
--- a/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
+++ b/ios/experimental/LibreOfficeLight/LibreOfficeLight/en.lproj/Main.storyboard
@@ -26,7 +26,11 @@
</view>
<toolbarItems/>
<navigationItem key="navigationItem" title="Document" id="5c6-32-T4J">
<barButtonItem key="leftBarButtonItem" image="menu" id="fdq-Uw-536"/>
<barButtonItem key="leftBarButtonItem" image="menu" id="fdq-Uw-536">
<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 +61,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">
@@ -134,7 +138,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">
@@ -152,7 +156,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">
@@ -170,7 +174,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">
@@ -188,7 +192,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="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">
@@ -208,7 +212,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="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">
@@ -226,7 +230,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="1ne-Jo-yKA" id="qmx-Us-SWx">
<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="pir-sf-icw">
@@ -405,11 +409,11 @@
<constraint firstAttribute="width" constant="150" id="y0o-Nq-4z4"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="Properties..." image="properties">
<state key="normal" title="Style6" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuProperties:" destination="E9y-3m-fEc" eventType="touchUpInside" id="LcD-vQ-l3D"/>
<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="Hk4-yl-lM9">
@@ -419,11 +423,11 @@
<constraint firstAttribute="height" constant="45" id="hty-y5-gVo"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="PDF" image="pdf">
<state key="normal" title="Style5" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuPDF:" destination="E9y-3m-fEc" eventType="touchUpInside" id="IdR-tr-sxl"/>
<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="CBj-V3-BKJ">
@@ -433,11 +437,11 @@
<constraint firstAttribute="height" constant="45" id="wOH-9b-B8P"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="Save as..." image="saveas">
<state key="normal" title="Style4" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuSaveAs:" destination="E9y-3m-fEc" eventType="touchUpInside" id="5zk-pM-Bpu"/>
<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="eZV-Rh-hCf">
@@ -447,11 +451,11 @@
<constraint firstAttribute="width" constant="150" id="eLW-p8-QBZ"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="Save" image="save">
<state key="normal" title="Style3" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuSave:" destination="E9y-3m-fEc" eventType="touchUpInside" id="fMK-Ar-DfV"/>
<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="YTV-Y5-L8R">
@@ -461,11 +465,11 @@
<constraint firstAttribute="width" constant="150" id="Q1z-1N-WMF"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="New..." image="document">
<state key="normal" title="Style2" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuNew:" destination="E9y-3m-fEc" eventType="touchUpInside" id="shs-o3-IgE"/>
<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="5Mv-7b-xjF">
@@ -475,11 +479,11 @@
<constraint firstAttribute="width" constant="150" id="eFy-qB-RER"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="Print..." image="print">
<state key="normal" title="Style7" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuPrint:" destination="E9y-3m-fEc" eventType="touchUpInside" id="SQh-RG-I4h"/>
<action selector="doStyle7:" destination="E9y-3m-fEc" eventType="touchUpInside" id="cNb-al-UOa"/>
</connections>
</button>
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" adjustsImageWhenHighlighted="NO" adjustsImageWhenDisabled="NO" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="g5y-SJ-jU1">
@@ -489,11 +493,11 @@
<constraint firstAttribute="height" constant="45" id="v75-o1-ii6"/>
</constraints>
<inset key="titleEdgeInsets" minX="10" minY="0.0" maxX="0.0" maxY="0.0"/>
<state key="normal" title="Open..." image="document">
<state key="normal" title="Style1" image="document">
<color key="titleColor" cocoaTouchSystemColor="darkTextColor"/>
</state>
<connections>
<action selector="menuOpen:" destination="E9y-3m-fEc" eventType="touchUpInside" id="owI-Ax-5Au"/>
<action selector="doStyle1:" destination="E9y-3m-fEc" eventType="touchUpInside" id="Tvz-2x-oik"/>
</connections>
</button>
</subviews>
@@ -574,7 +578,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">
@@ -594,7 +598,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">
@@ -612,7 +616,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">
@@ -630,7 +634,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">
@@ -648,7 +652,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">
@@ -668,7 +672,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">
@@ -686,7 +690,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" userLabel="Button Print">
@@ -735,11 +739,6 @@
<image name="document" width="20" height="20"/>
<image name="iCloudDrive" width="22" height="22"/>
<image name="menu" width="22" height="22"/>
<image name="pdf" width="20" height="20"/>
<image name="print" width="20" height="20"/>
<image name="properties" width="20" height="20"/>
<image name="save" width="20" height="20"/>
<image name="saveas" width="20" height="20"/>
</resources>
<inferredMetricsTieBreakers>
<segue reference="0PG-d7-Fy1"/>