From 4e921aab7a5c5910ad1c76416617079f697fb1ec Mon Sep 17 00:00:00 2001 From: alekseybobkov Date: Sun, 16 Nov 2014 18:00:15 -0800 Subject: [PATCH] Minor performance changes in the core JS and CSS. Table widget, in progress. --- modules/backend/assets/css/october.css | 9 +- .../assets/less/controls/loadindicator.less | 13 +- modules/backend/layouts/_head.htm | 8 + modules/backend/widgets/Table.php | 24 +- modules/backend/widgets/table/README.md | 114 ++++++ .../table/assets/js/table.datasource.base.js | 29 +- .../assets/js/table.datasource.client.js | 41 +- .../backend/widgets/table/assets/js/table.js | 362 +++++++++++++++++- .../table/assets/js/table.processor.base.js | 122 ++++++ .../table/assets/js/table.processor.string.js | 96 +++++ .../backend/widgets/table/partials/_table.htm | 306 ++++++++++++++- modules/system/assets/js/framework.js | 32 +- 12 files changed, 1105 insertions(+), 51 deletions(-) create mode 100644 modules/backend/widgets/table/README.md create mode 100644 modules/backend/widgets/table/assets/js/table.processor.base.js create mode 100644 modules/backend/widgets/table/assets/js/table.processor.string.js diff --git a/modules/backend/assets/css/october.css b/modules/backend/assets/css/october.css index 90c401c3b..e6106608d 100644 --- a/modules/backend/assets/css/october.css +++ b/modules/backend/assets/css/october.css @@ -10610,20 +10610,17 @@ html.cssanimations .cursor-loading-indicator.hide { } .stripe-loading-indicator .stripe-loaded { width: 0; - opacity: 0; - filter: alpha(opacity=0); + display: none; } .stripe-loading-indicator.loaded { - opacity: 0; - filter: alpha(opacity=0); + display: none; -webkit-transition: opacity 0.4s linear; transition: opacity 0.4s linear; -webkit-transition-delay: 0.3s; transition-delay: 0.3s; } .stripe-loading-indicator.loaded .stripe-loaded { - opacity: 1; - filter: alpha(opacity=100); + display: block; -webkit-transition: width 0.3s linear; transition: width 0.3s linear; width: 100% !important; diff --git a/modules/backend/assets/less/controls/loadindicator.less b/modules/backend/assets/less/controls/loadindicator.less index 70dc43e74..9c241c89d 100644 --- a/modules/backend/assets/less/controls/loadindicator.less +++ b/modules/backend/assets/less/controls/loadindicator.less @@ -173,15 +173,22 @@ html.cssanimations { .stripe-loaded { width: 0; - .opacity(0); + + // Opacity replaced with display. Leaving the animated indicator element + // in the rendering tree, even invisible, affects the performance. + // .opacity(0); + display: none; } &.loaded { - .opacity(0); + // .opacity(0); + display: none; + .transition(opacity .4s linear); .transition-delay(.3s); .stripe-loaded { - .opacity(1); + display: block; + // .opacity(1); .transition(width .3s linear); width: 100% !important; } diff --git a/modules/backend/layouts/_head.htm b/modules/backend/layouts/_head.htm index 00650b41a..fb70124b5 100644 --- a/modules/backend/layouts/_head.htm +++ b/modules/backend/layouts/_head.htm @@ -12,6 +12,7 @@ +