Santhosh has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/71973


Change subject: Update jquery.uls from upstream
......................................................................

Update jquery.uls from upstream

Performance improvements by matmarex

Change-Id: Ie89bd56702dec231a8c27f9cf8eeb7bbffe9b251
---
M lib/jquery.uls/i18n/ka.json
M lib/jquery.uls/src/jquery.uls.core.js
M lib/jquery.uls/src/jquery.uls.lcd.js
M lib/jquery.uls/src/jquery.uls.regionfilter.js
4 files changed, 27 insertions(+), 48 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/UniversalLanguageSelector 
refs/changes/73/71973/1

diff --git a/lib/jquery.uls/i18n/ka.json b/lib/jquery.uls/i18n/ka.json
index 530b5e5..b42f526 100644
--- a/lib/jquery.uls/i18n/ka.json
+++ b/lib/jquery.uls/i18n/ka.json
@@ -4,13 +4,18 @@
             "David1010"
         ]
     },
+    "uls-select-language": "\u10d0\u10d8\u10e0\u10e9\u10d8\u10d4\u10d7 
\u10d4\u10dc\u10d0",
     "uls-region-WW": "\u10db\u10e1\u10dd\u10e4\u10da\u10d8\u10dd",
+    "uls-region-SP": 
"\u10e1\u10de\u10d4\u10ea\u10d8\u10d0\u10da\u10e3\u10e0\u10d8",
     "uls-region-AM": "\u10d0\u10db\u10d4\u10e0\u10d8\u10d9\u10d0",
     "uls-region-AF": "\u10d0\u10e4\u10e0\u10d8\u10d9\u10d0",
     "uls-region-EU": "\u10d4\u10d5\u10e0\u10dd\u10de\u10d0",
     "uls-region-AS": "\u10d0\u10d6\u10d8\u10d0",
     "uls-region-ME": "\u10d0\u10ee\u10da\u10dd 
\u10d0\u10e6\u10db\u10dd\u10e1\u10d0\u10d5\u10da\u10d4\u10d7\u10d8",
     "uls-region-PA": "\u10dd\u10d9\u10d4\u10d0\u10dc\u10d4\u10d7\u10d8",
+    "uls-no-results-found": "\u10e8\u10d4\u10d3\u10d4\u10d2\u10d8 
\u10d5\u10d4\u10e0 \u10db\u10dd\u10d8\u10eb\u10d4\u10d1\u10dc\u10d0",
     "uls-common-languages": "\u10e1\u10d0\u10d4\u10e0\u10d7\u10dd 
\u10d4\u10dc\u10d4\u10d1\u10d8",
+    "uls-no-results-suggestion-title": "\u10d8\u10e5\u10dc\u10d4\u10d1 
\u10d7\u10e5\u10d5\u10d4\u10dc \u10d0\u10db 
\u10d4\u10dc\u10d4\u10d1\u10db\u10d0 
\u10d3\u10d0\u10d2\u10d0\u10d8\u10dc\u10e2\u10d4\u10e0\u10d4\u10e1\u10dd\u10d7:",
+    "uls-search-help": "\u10eb\u10d8\u10d4\u10d1\u10d0 
\u10e8\u10d4\u10e1\u10d0\u10eb\u10da\u10d4\u10d1\u10d4\u10da\u10d8\u10d0 
\u10d4\u10dc\u10d8\u10e1 \u10e1\u10d0\u10ee\u10d4\u10da\u10d8\u10d7 
\u10d0\u10dc 
\u10d3\u10d0\u10db\u10ec\u10d4\u10e0\u10da\u10dd\u10d1\u10d8\u10d7, 
\u10d4\u10dc\u10d8\u10e1 ISO-\u10d9\u10dd\u10d3\u10d8\u10d7 \u10d0\u10dc 
\u10e0\u10d4\u10d2\u10d8\u10dd\u10dc\u10d8\u10e1 
\u10db\u10d8\u10ee\u10d4\u10d3\u10d5\u10d8\u10d7:",
     "uls-search-placeholder": "\u10d4\u10dc\u10d8\u10e1 
\u10db\u10dd\u10eb\u10d4\u10d1\u10dc\u10d0"
 }
\ No newline at end of file
diff --git a/lib/jquery.uls/src/jquery.uls.core.js 
b/lib/jquery.uls/src/jquery.uls.core.js
index 0d3cfd0..cac2b8d 100644
--- a/lib/jquery.uls/src/jquery.uls.core.js
+++ b/lib/jquery.uls/src/jquery.uls.core.js
@@ -201,11 +201,7 @@
                defaultSearch: function () {
                        this.$resultsView.lcd( 'empty' );
 
-                       if ( this.options.lazyload ) {
-                               this.$regionFilters.first().regionselector( 
'show' );
-                       } else {
-                               this.$regionFilters.regionselector( 'show' );
-                       }
+                       this.$regionFilters.regionselector( 'show' );
                },
 
                /**
@@ -269,7 +265,6 @@
                                languages: uls.languages,
                                quickList: uls.options.quickList,
                                clickhandler: $.proxy( uls.select, uls ),
-                               lazyload: uls.options.lazyload,
                                source: uls.$languageFilter,
                                showRegions: uls.options.showRegions
                        } ).data( 'lcd' );
@@ -412,7 +407,6 @@
                searchAPI: null, // Language search API
                languages: $.uls.data.getAutonyms(), // Languages to be used 
for ULS, default is all languages
                quickList: null, // Array of language codes or function that 
returns such
-               lazyload: true, // Lazy load the language list when scrolled.
                compact: false, // Show ULS in compact mode
                showRegions: ['WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA']
        };
diff --git a/lib/jquery.uls/src/jquery.uls.lcd.js 
b/lib/jquery.uls/src/jquery.uls.lcd.js
index 927f419..87f79c2 100644
--- a/lib/jquery.uls/src/jquery.uls.lcd.js
+++ b/lib/jquery.uls/src/jquery.uls.lcd.js
@@ -287,11 +287,6 @@
                                        scrollTop = 
$ulsLanguageList.position().top,
                                        scrollBottom = 
$ulsLanguageList.height();
 
-                               if ( lcd.options.lazyload && 
lcd.options.source.val() === '' ) {
-                                       if ( this.offsetHeight + this.scrollTop 
>= this.scrollHeight / 2 ) {
-                                               lcd.$element.trigger( 
'scrollend' );
-                                       }
-                               }
                                // The region section need to be in sync with 
the map filter.
                                inviewRegion = 'WW';
                                lcd.$element.find( 'div.uls-lcd-region-section' 
).each( function () {
@@ -332,8 +327,7 @@
 
        $.fn.lcd.defaults = {
                languages: null,
-               showRegions: ['WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA'],
-               lazyload: true
+               showRegions: ['WW', 'AM', 'EU', 'ME', 'AF', 'AS', 'PA']
        };
 
        $.fn.lcd.Constructor = LanguageCategoryDisplay;
diff --git a/lib/jquery.uls/src/jquery.uls.regionfilter.js 
b/lib/jquery.uls/src/jquery.uls.regionfilter.js
index ab1d6e5..abc633d 100644
--- a/lib/jquery.uls/src/jquery.uls.regionfilter.js
+++ b/lib/jquery.uls/src/jquery.uls.regionfilter.js
@@ -22,7 +22,7 @@
 
        /* RegionSelector plugin definition */
 
-       var RegionSelector, delay;
+       var RegionSelector;
 
        /**
         * Region selector is a language selector based on regions.
@@ -70,7 +70,16 @@
                },
 
                show: function () {
-                       var result, languagesByScriptGroup, scriptGroup, 
languages, i;
+                       var result, languagesByScriptGroup, scriptGroup, 
languages, i,
+                               $element = this.options.$target && 
this.options.$target.$element,
+                               $parent = $element && $element.parent(),
+                               $prev = $element && $element.prev();
+
+                       if ( $element && $parent ) {
+                               // Avoid reflows while adding new elements to 
the list
+                               // Use .detach() to keep jQuery events and data 
associated with elements
+                               $element.detach();
+                       }
 
                        if ( this.cache ) {
                                // If the result cache is present, render the 
results from there.
@@ -106,6 +115,15 @@
                                }
                        }
 
+                       if ( $element && $parent ) {
+                               // Restore the element to where we removed it 
from
+                               if ( $prev ) {
+                                       $prev.after( $element );
+                               } else {
+                                       $parent.append( $element );
+                               }
+                       }
+
                        if ( this.options.success ) {
                                this.options.success( this );
                        }
@@ -121,32 +139,8 @@
                        $target.append( langCode, region );
                },
 
-               next: function () {
-                       var regionSelector = this;
-
-                       if ( !this.$element.hasClass( 'active' ) ) {
-                               return true;
-                       }
-
-                       // Do not respond to all scroll end events, but only 
after a short interval
-                       delay( function () {
-                               var nextRegionGroupNumber = 
regionSelector.$element.data( 'regiongroup' ) + 1,
-                                       $nextRegion = $( '#uls-region-' + 
nextRegionGroupNumber ),
-                                       nextRegionSelector = $nextRegion.length 
&& $nextRegion.data( 'regionselector' );
-
-                               // If cache is defined, then it is already 
rendered and there's no need
-                               // to re-render it.
-                               if ( nextRegionSelector && 
nextRegionSelector.cache === null ) {
-                                       nextRegionSelector.show();
-                               }
-                       }, 100 );
-
-                       return false;
-               },
-
                listen: function () {
                        this.$element.on( 'click', $.proxy( this.click, this ) 
);
-                       this.options.$target.$element.bind( 'scrollend', 
$.proxy( this.next, this ) );
                },
 
                click: function () {
@@ -194,13 +188,5 @@
        };
 
        $.fn.regionselector.Constructor = RegionSelector;
-
-       delay = ( function () {
-               var timer = 0;
-               return function ( callback, milliseconds ) {
-                       clearTimeout( timer );
-                       timer = setTimeout( callback, milliseconds );
-               };
-       } () );
 
 } ( jQuery ) );

-- 
To view, visit https://gerrit.wikimedia.org/r/71973
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie89bd56702dec231a8c27f9cf8eeb7bbffe9b251
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/UniversalLanguageSelector
Gerrit-Branch: master
Gerrit-Owner: Santhosh <santhosh.thottin...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to