Change in ovirt-engine[master]: webadmin, userportal: UI optimizations

Alexander Wels has submitted this change and it was merged. Change subject: webadmin,userportal: UI optimizations ...................................................................... webadmin,userportal: UI optimizations 1. Added ability to pre-load UI plugins before loading the main UI. UI plugin host page is loaded asynchronously by default. This gives no guarantees as to whether plugin init code (UiInit callback) runs before the main UI is loaded, or after that. Sometimes, this can cause unwanted side effects, e.g. using a plugin that adds custom main tab and switches to it immediately (Dashboard), there's a brief time window where main UI loads and shows the default (VMs) tab. To pre-load the plugin's host page (giving a guarantee that UiInit callback is invoked before the main UI loads), specify: "lazyLoad": false in plugin's JSON descriptor file. The "lazyLoad" setting is optional and defaults to true if not specified. 2. Removed dead and/or unnecessary code. 3. Improved bootstrap/login logic in BaseApplicationInit: - no need to placeManager.revealCurrentPlace() in ApplicationInit's performBootstrap() since performLogin() already takes care of that 4. Improved UI plugin infra code: - removed the concept of plugin invocation context which was meant to prevent plugins from interacting with WebAdmin while the user was still on login screen (no login screen = no need for that) - adding models for custom main tabs into CommonModel's items is done via DynamicMainTabAddedEvent, guarding against a premature CommonModel instantiation (which triggers creation of all other main/sub tab models) which usually fails due to AsyncDataProvider ConfigValues cache not initialized yet Change-Id: I69e0a26cacfa33d5727b6ea008bf8032dba1412e Bug-Url: https://bugzilla.redhat.com/1353556 Signed-off-by: Vojtech Szocs <vszocs@redhat.com> --- M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/Frontend.java M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/WebAdminHostPageServlet.java M frontend/webadmin/modules/frontend/src/main/java/org/ovirt/engine/ui/frontend/server/gwt/plugin/PluginData.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/auth/CurrentUser.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/system/BaseApplicationInit.java M frontend/webadmin/modules/gwt-common/src/main/java/org/ovirt/engine/ui/common/uicommon/AbstractRdp.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/CommonModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/LoginModel.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/plugin/PluginModel.java M frontend/webadmin/modules/userportal-gwtp/src/main/java/org/ovirt/engine/ui/userportal/system/ApplicationInit.java M frontend/webadmin/modules/webadmin/exclude-filters.xml M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/place/WebAdminPlaceManager.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/plugin/Plugin.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/plugin/PluginManager.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/plugin/PluginMetaData.java D frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/plugin/UiPluginsInitialized.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/plugin/api/PluginUiFunctions.java A frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/DynamicMainTabAdded.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/DynamicUrlContentTabProxyFactory.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/section/main/presenter/MainSectionPresenter.java M frontend/webadmin/modules/webadmin/src/main/java/org/ovirt/engine/ui/webadmin/system/ApplicationInit.java 21 files changed, 228 insertions(+), 256 deletions(-) Approvals: Alexander Wels: Looks good to me, approved Jenkins CI: Passed CI tests Vojtech Szocs: Verified -- To view, visit https://gerrit.ovirt.org/60666 To unsubscribe, visit https://gerrit.ovirt.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I69e0a26cacfa33d5727b6ea008bf8032dba1412e Gerrit-PatchSet: 3 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Vojtech Szocs <vszocs@redhat.com> Gerrit-Reviewer: Alexander Wels <awels@redhat.com> Gerrit-Reviewer: Greg Sheremeta <gshereme@redhat.com> Gerrit-Reviewer: Jakub Niedermertl <jniederm@redhat.com> Gerrit-Reviewer: Jenkins CI Gerrit-Reviewer: Martin Betak <mbetak@redhat.com> Gerrit-Reviewer: Oved Ourfali <oourfali@redhat.com> Gerrit-Reviewer: Scott Dickerson <sdickers@redhat.com> Gerrit-Reviewer: Tomas Jelinek <tjelinek@redhat.com> Gerrit-Reviewer: Vojtech Szocs <vszocs@redhat.com> Gerrit-Reviewer: gerrit-hooks <automation@ovirt.org>
participants (1)
-
awels@redhat.com