diff --git a/application/application.android.ts b/application/application.android.ts index 895f253f2..cb711504a 100644 --- a/application/application.android.ts +++ b/application/application.android.ts @@ -315,7 +315,10 @@ global.__onUncaughtError = function (error: Error) { exports.notify({ eventName: dts.uncaughtErrorEvent, object: appModule.android, android: error }); } -exports.start = function () { +exports.start = function (entry?: frame.NavigationEntry) { + if (entry) { + dts.mainEntry = entry; + } dts.loadCss(); } diff --git a/application/application.d.ts b/application/application.d.ts index aba0b1ebb..4eba814ab 100644 --- a/application/application.d.ts +++ b/application/application.d.ts @@ -124,7 +124,7 @@ declare module "application" { /** * Call this method to start the application. Important: All code after this method call will not be executed! */ - export function start(); + export function start(entry?: frame.NavigationEntry); /** * The main entry point event. This method is expected to use the root frame to navigate to the main application page. diff --git a/application/application.ios.ts b/application/application.ios.ts index 983659665..d40ced6cb 100644 --- a/application/application.ios.ts +++ b/application/application.ios.ts @@ -224,8 +224,11 @@ global.__onUncaughtError = function (error: Error) { } var started: boolean = false; -exports.start = function () { +exports.start = function (entry?: frame.NavigationEntry) { if (!started) { + if (entry) { + exports.mainEntry = entry; + } started = true; exports.loadCss(); UIApplicationMain(0, null, null, exports.ios && exports.ios.delegate ? NSStringFromClass(exports.ios.delegate) : NSStringFromClass(Responder)); diff --git a/apps/absolute-layout-demo/app.ts b/apps/absolute-layout-demo/app.ts index f8c884d9e..83299891c 100644 --- a/apps/absolute-layout-demo/app.ts +++ b/apps/absolute-layout-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "mainPage"; -application.start(); +application.start({ moduleName: "mainPage" }); diff --git a/apps/action-bar-demo/app.ts b/apps/action-bar-demo/app.ts index 519a85d36..c21b42013 100644 --- a/apps/action-bar-demo/app.ts +++ b/apps/action-bar-demo/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Needed only for build infrastructure application.cssFile = "app.css"; -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/animations/app.ts b/apps/animations/app.ts index 2baebd169..80e9b1de8 100644 --- a/apps/animations/app.ts +++ b/apps/animations/app.ts @@ -4,5 +4,4 @@ import trace = require("trace"); trace.enable(); trace.setCategories(trace.categories.concat(trace.categories.Animation)); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/connectivity-demo/app.ts b/apps/connectivity-demo/app.ts index bc46e818f..a62cadc76 100644 --- a/apps/connectivity-demo/app.ts +++ b/apps/connectivity-demo/app.ts @@ -1,4 +1,3 @@ import application = require("application"); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/cuteness.io/app.ts b/apps/cuteness.io/app.ts index 281ffc118..081b31547 100644 --- a/apps/cuteness.io/app.ts +++ b/apps/cuteness.io/app.ts @@ -5,8 +5,5 @@ fps.addCallback(function (fps, minFps) { }); fps.start(); -// Set the start module for the application -application.mainModule = "main-page"; - // Start the application -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/cuteness.unoptimized/app.ts b/apps/cuteness.unoptimized/app.ts index 34c870b16..1c181d61b 100644 --- a/apps/cuteness.unoptimized/app.ts +++ b/apps/cuteness.unoptimized/app.ts @@ -5,8 +5,5 @@ fps.addCallback(function (fps, minFps) { }); fps.start(); -// Set the start module for the application -application.mainModule = "main-page"; - // Start the application -application.start(); \ No newline at end of file +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/editable-text-demo/app.ts b/apps/editable-text-demo/app.ts index cb572300b..1e0fb2c2d 100644 --- a/apps/editable-text-demo/app.ts +++ b/apps/editable-text-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/gallery-app/app.ts b/apps/gallery-app/app.ts index 519a85d36..c21b42013 100644 --- a/apps/gallery-app/app.ts +++ b/apps/gallery-app/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Needed only for build infrastructure application.cssFile = "app.css"; -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/list-view-demo/app.ts b/apps/list-view-demo/app.ts index cb572300b..1e0fb2c2d 100644 --- a/apps/list-view-demo/app.ts +++ b/apps/list-view-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/modal-views-demo/app.ts b/apps/modal-views-demo/app.ts index 8c0658fa1..b4db06885 100644 --- a/apps/modal-views-demo/app.ts +++ b/apps/modal-views-demo/app.ts @@ -1,5 +1,4 @@ import application = require("application"); -application.mainModule = "main-page"; import trace = require("trace"); trace.enable(); trace.setCategories(trace.categories.concat( @@ -7,4 +6,4 @@ trace.setCategories(trace.categories.concat( //trace.categories.Layout, //"LayoutRootView.iOS" )); -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/notifications-demo/app.ts b/apps/notifications-demo/app.ts index 50b013e95..ababe2c5d 100644 --- a/apps/notifications-demo/app.ts +++ b/apps/notifications-demo/app.ts @@ -1,5 +1,2 @@ import application = require("application"); - -application.mainModule = "main-page"; - -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/orientation-demo/app.ts b/apps/orientation-demo/app.ts index 50b013e95..ababe2c5d 100644 --- a/apps/orientation-demo/app.ts +++ b/apps/orientation-demo/app.ts @@ -1,5 +1,2 @@ import application = require("application"); - -application.mainModule = "main-page"; - -application.start(); +application.start({ moduleName: "main-page" }); diff --git a/apps/paylocity/app.ts b/apps/paylocity/app.ts index e90eb1b4b..56df6865e 100644 --- a/apps/paylocity/app.ts +++ b/apps/paylocity/app.ts @@ -1,6 +1,5 @@ import application = require("application"); -application.mainModule = "login"; application.cssFile = "./style.css"; -application.start(); +application.start({ moduleName: "login" }); \ No newline at end of file diff --git a/apps/perf-tests/ApplicationLoadTimeAndFPS/app.ts b/apps/perf-tests/ApplicationLoadTimeAndFPS/app.ts index 56be791b5..ef0bd1f3c 100644 --- a/apps/perf-tests/ApplicationLoadTimeAndFPS/app.ts +++ b/apps/perf-tests/ApplicationLoadTimeAndFPS/app.ts @@ -6,6 +6,4 @@ fps.addCallback(function (fps, minFps) { }); fps.start(); -application.mainModule = "ApplicationLoadTimeAndFPS/mainPage"; - -application.start(); +application.start({ moduleName: "ApplicationLoadTimeAndFPS" }); diff --git a/apps/perf-tests/ApplicationSize/app.ts b/apps/perf-tests/ApplicationSize/app.ts index e4ad33bef..5ef564246 100644 --- a/apps/perf-tests/ApplicationSize/app.ts +++ b/apps/perf-tests/ApplicationSize/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "ApplicationSize/mainPage"; -application.start(); +application.start({ moduleName: "ApplicationSize/mainPage" }); diff --git a/apps/perf-tests/ComplexObjectGraphMemoryTest/app.ts b/apps/perf-tests/ComplexObjectGraphMemoryTest/app.ts index 7e88d8d2c..fb7cc917e 100644 --- a/apps/perf-tests/ComplexObjectGraphMemoryTest/app.ts +++ b/apps/perf-tests/ComplexObjectGraphMemoryTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "ComplexObjectGraphMemoryTest/mainPage"; +application.start({ moduleName: "ComplexObjectGraphMemoryTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/ControlCreationSpeedTest/app.ts b/apps/perf-tests/ControlCreationSpeedTest/app.ts index 0fda9833f..3cde5390b 100644 --- a/apps/perf-tests/ControlCreationSpeedTest/app.ts +++ b/apps/perf-tests/ControlCreationSpeedTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "ControlCreationSpeedTest/mainPage"; +application.start({ moduleName: "ControlCreationSpeedTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/LargeObjectArrayMemoryLeakTest/app.ts b/apps/perf-tests/LargeObjectArrayMemoryLeakTest/app.ts index 6aeef71f3..30b26363c 100644 --- a/apps/perf-tests/LargeObjectArrayMemoryLeakTest/app.ts +++ b/apps/perf-tests/LargeObjectArrayMemoryLeakTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "LargeObjectArrayMemoryLeakTest/mainPage"; +application.start({ moduleName: "LargeObjectArrayMemoryLeakTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/LargeObjectArrayMemoryTest/app.ts b/apps/perf-tests/LargeObjectArrayMemoryTest/app.ts index 2420788cf..f3a0495a0 100644 --- a/apps/perf-tests/LargeObjectArrayMemoryTest/app.ts +++ b/apps/perf-tests/LargeObjectArrayMemoryTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "LargeObjectArrayMemoryTest/mainPage"; +application.start({ moduleName: "LargeObjectArrayMemoryTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/NavigationMemoryLeakTest/app.ts b/apps/perf-tests/NavigationMemoryLeakTest/app.ts index 15dbd0820..6b025610c 100644 --- a/apps/perf-tests/NavigationMemoryLeakTest/app.ts +++ b/apps/perf-tests/NavigationMemoryLeakTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "NavigationMemoryLeakTest/mainPage"; +application.start({ moduleName: "NavigationMemoryLeakTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/SingleUIObjectMemoryLeakTest/app.ts b/apps/perf-tests/SingleUIObjectMemoryLeakTest/app.ts index cdf8c573c..d9dca52f8 100644 --- a/apps/perf-tests/SingleUIObjectMemoryLeakTest/app.ts +++ b/apps/perf-tests/SingleUIObjectMemoryLeakTest/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "SingleUIObjectMemoryLeakTest/mainPage"; +application.start({ moduleName: "SingleUIObjectMemoryLeakTest/mainPage" }); \ No newline at end of file diff --git a/apps/perf-tests/SpeedTests/app.ts b/apps/perf-tests/SpeedTests/app.ts index 0fa044a50..0c72d2496 100644 --- a/apps/perf-tests/SpeedTests/app.ts +++ b/apps/perf-tests/SpeedTests/app.ts @@ -1,2 +1,2 @@ import application = require("application"); -application.mainModule = "SpeedTests/mainPage"; +application.start({ moduleName: "SpeedTests/mainPage" }); \ No newline at end of file diff --git a/apps/pickers-demo/app.ts b/apps/pickers-demo/app.ts index cb572300b..1e0fb2c2d 100644 --- a/apps/pickers-demo/app.ts +++ b/apps/pickers-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/placeholder-demo/app.ts b/apps/placeholder-demo/app.ts index cb572300b..1e0fb2c2d 100644 --- a/apps/placeholder-demo/app.ts +++ b/apps/placeholder-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/tab-view-demo/app.ts b/apps/tab-view-demo/app.ts index 3f1371d7d..5d1c61def 100644 --- a/apps/tab-view-demo/app.ts +++ b/apps/tab-view-demo/app.ts @@ -1,7 +1,5 @@ import application = require("application"); -application.mainModule = "mainPage"; - import trace = require("trace"); trace.enable(); trace.setCategories(trace.categories.concat( @@ -12,4 +10,4 @@ trace.setCategories(trace.categories.concat( //, trace.categories.VisualTreeEvents )); -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/template-blank/app.ts b/apps/template-blank/app.ts index 53a5920f8..142aa1ad2 100644 --- a/apps/template-blank/app.ts +++ b/apps/template-blank/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Remove this in the AppBuilder templates application.cssFile = "./app.css" -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/template-hello-world/app.ts b/apps/template-hello-world/app.ts index 53a5920f8..142aa1ad2 100644 --- a/apps/template-hello-world/app.ts +++ b/apps/template-hello-world/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Remove this in the AppBuilder templates application.cssFile = "./app.css" -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/template-master-detail/app.ts b/apps/template-master-detail/app.ts index 53a5920f8..142aa1ad2 100644 --- a/apps/template-master-detail/app.ts +++ b/apps/template-master-detail/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Remove this in the AppBuilder templates application.cssFile = "./app.css" -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/template-settings/app.ts b/apps/template-settings/app.ts index 34d1ca216..142aa1ad2 100644 --- a/apps/template-settings/app.ts +++ b/apps/template-settings/app.ts @@ -3,5 +3,4 @@ // Remove this in the AppBuilder templates application.cssFile = "./app.css" -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/template-tab-navigation/app.ts b/apps/template-tab-navigation/app.ts index 53a5920f8..142aa1ad2 100644 --- a/apps/template-tab-navigation/app.ts +++ b/apps/template-tab-navigation/app.ts @@ -1,7 +1,6 @@ import application = require("application"); -application.mainModule = "main-page"; // Remove this in the AppBuilder templates application.cssFile = "./app.css" -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/tests/app/app.ts b/apps/tests/app/app.ts index d3330cd84..d0eb61759 100644 --- a/apps/tests/app/app.ts +++ b/apps/tests/app/app.ts @@ -33,8 +33,6 @@ if (application.ios) { }); } -application.mainModule = "app/mainPage"; - // Common events for both Android and iOS. application.on(application.launchEvent, function (args: application.ApplicationEventData) { if (args.android) { @@ -147,4 +145,4 @@ else { console.log(`TIME TO LOAD APP: ${time} ms`); -application.start(); +application.start({ moduleName: "app/mainPage" }); diff --git a/apps/tests/pages/app.ts b/apps/tests/pages/app.ts index acf8d9106..da21537c4 100644 --- a/apps/tests/pages/app.ts +++ b/apps/tests/pages/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "pages/page14"; -application.start(); +application.start({ moduleName: "pages/page14" }); \ No newline at end of file diff --git a/apps/tests/pages/sandbox-project.ts b/apps/tests/pages/sandbox-project.ts index 5b4879e0a..c0e926b41 100644 --- a/apps/tests/pages/sandbox-project.ts +++ b/apps/tests/pages/sandbox-project.ts @@ -1,5 +1,2 @@ import application = require("application"); - -application.mainModule = "apps/tests/pages/nnikolovTestPage"; - -application.start(); +application.start({ moduleName: "apps/tests/pages/nnikolovTestPage" }); \ No newline at end of file diff --git a/apps/tests/styling/app.ts b/apps/tests/styling/app.ts index 4bff1cb04..fcb9e07da 100644 --- a/apps/tests/styling/app.ts +++ b/apps/tests/styling/app.ts @@ -10,5 +10,4 @@ trace.setCategories(trace.categories.concat( //, trace.categories.VisualTreeEvents )); -application.mainModule = "styling/mainPage"; -application.start(); +application.start({ moduleName: "styling/mainPage" }); \ No newline at end of file diff --git a/apps/tests/xml-declaration/app.ts b/apps/tests/xml-declaration/app.ts index cd2aee147..efb5db57f 100644 --- a/apps/tests/xml-declaration/app.ts +++ b/apps/tests/xml-declaration/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "xml-declaration/mainPage"; -application.start(); +application.start({ moduleName: "xml-declaration/mainPage" }); \ No newline at end of file diff --git a/apps/transforms/app.ts b/apps/transforms/app.ts index 2baebd169..91e1276e9 100644 --- a/apps/transforms/app.ts +++ b/apps/transforms/app.ts @@ -4,5 +4,4 @@ import trace = require("trace"); trace.enable(); trace.setCategories(trace.categories.concat(trace.categories.Animation)); -application.mainModule = "main-page"; -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/ui-tests-app/app.ts b/apps/ui-tests-app/app.ts index b63b05e64..cba2a252b 100644 --- a/apps/ui-tests-app/app.ts +++ b/apps/ui-tests-app/app.ts @@ -1,5 +1,4 @@ import application = require("application"); -application.mainModule = "mainPage"; var countResume = 0; var countSuspend = 0; @@ -71,4 +70,4 @@ application.on(application.uncaughtErrorEvent, function (args: application.Appli } }); -application.start(); \ No newline at end of file +application.start({ moduleName: "mainPage" }); \ No newline at end of file diff --git a/apps/web-view-demo/app.ts b/apps/web-view-demo/app.ts index aa64c6703..aebaaa9f7 100644 --- a/apps/web-view-demo/app.ts +++ b/apps/web-view-demo/app.ts @@ -1,8 +1,7 @@ import application = require("application"); -application.mainModule = "main-page"; import trace = require("trace"); trace.enable(); trace.setCategories(trace.categories.concat(trace.categories.Debug)); -application.start(); +application.start({ moduleName: "main-page" }); \ No newline at end of file diff --git a/apps/wrap-layout-demo/app.ts b/apps/wrap-layout-demo/app.ts index f8c884d9e..e456ad635 100644 --- a/apps/wrap-layout-demo/app.ts +++ b/apps/wrap-layout-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "mainPage"; -application.start(); +application.start({ moduleName: "mainPage" }); \ No newline at end of file diff --git a/apps/xml-demo/app.ts b/apps/xml-demo/app.ts index f8c884d9e..e456ad635 100644 --- a/apps/xml-demo/app.ts +++ b/apps/xml-demo/app.ts @@ -1,3 +1,2 @@ import application = require("application"); -application.mainModule = "mainPage"; -application.start(); +application.start({ moduleName: "mainPage" }); \ No newline at end of file