From 6721c076887c110da6bf48d15de2bf79799ccdc2 Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Thu, 5 Jul 2018 12:18:24 -0700 Subject: [PATCH 1/6] Update canvas.class.js --- src/canvas.class.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/canvas.class.js b/src/canvas.class.js index a32e4fb5c2f..53717627a8c 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -375,6 +375,16 @@ else { objsToRender = this._objects; } + + objsToRender = objsToRender.sort(function(a, b) { + var d = 0, az = a.zIndex || 0, bz = b.zIndex || 0; + + if (az < bz) d = -1; + else if (az > bz) d = 1; + + return d; + }); + return objsToRender; }, From a331387461797eb72da7027bd93d186247d7291c Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Thu, 5 Jul 2018 13:05:25 -0700 Subject: [PATCH 2/6] Update canvas.class.js --- src/canvas.class.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/canvas.class.js b/src/canvas.class.js index 53717627a8c..fc04965aee6 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -377,12 +377,16 @@ } objsToRender = objsToRender.sort(function(a, b) { - var d = 0, az = a.zIndex || 0, bz = b.zIndex || 0; + var sortValue = 0, az = a.zIndex || 0, bz = b.zIndex || 0; - if (az < bz) d = -1; - else if (az > bz) d = 1; + if (az < bz) { + sortValue = -1; + } + else if (az > bz) { + sortValue = 1; + } - return d; + return sortValue; }); return objsToRender; From a1ea26f1e88b1eb237f9fc112427470cd877cd8b Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Thu, 5 Jul 2018 13:21:27 -0700 Subject: [PATCH 3/6] Update canvas.class.js --- src/canvas.class.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/canvas.class.js b/src/canvas.class.js index fc04965aee6..d92a2209693 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -375,20 +375,20 @@ else { objsToRender = this._objects; } - + objsToRender = objsToRender.sort(function(a, b) { var sortValue = 0, az = a.zIndex || 0, bz = b.zIndex || 0; - + if (az < bz) { sortValue = -1; } else if (az > bz) { sortValue = 1; } - + return sortValue; }); - + return objsToRender; }, From c8492f96ba64a1f3f183cf0505070f74de382875 Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Fri, 6 Jul 2018 09:29:37 -0700 Subject: [PATCH 4/6] Update canvas.class.js --- src/canvas.class.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/canvas.class.js b/src/canvas.class.js index d92a2209693..43e57224a6c 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -376,7 +376,11 @@ objsToRender = this._objects; } - objsToRender = objsToRender.sort(function(a, b) { + return this._sortObjectsByDisplayOrder(objsToRender); + }, + + _sortObjectsByDisplayOrder: function (objects) { + return objects.sort(function(a, b) { var sortValue = 0, az = a.zIndex || 0, bz = b.zIndex || 0; if (az < bz) { @@ -385,11 +389,7 @@ else if (az > bz) { sortValue = 1; } - - return sortValue; }); - - return objsToRender; }, /** @@ -1248,6 +1248,7 @@ * @private */ _searchPossibleTargets: function(objects, pointer) { + objects = this._sortObjectsByDisplayOrder(objects); // Cache all targets where their bounding box contains point. var target, i = objects.length, normalizedPointer, subTarget; From 3689dbd87a03bf4ec0b7b9a5291f2a796797e32e Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Fri, 6 Jul 2018 09:35:46 -0700 Subject: [PATCH 5/6] Sorting render order and target find order by zIndex --- src/canvas.class.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/canvas.class.js b/src/canvas.class.js index 43e57224a6c..3945f5d4efd 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -389,6 +389,8 @@ else if (az > bz) { sortValue = 1; } + + return sortValue; }); }, From eaf75f724142aa5a827b79d53b1a11f5cdbc9b6c Mon Sep 17 00:00:00 2001 From: Max Hudson Date: Fri, 6 Jul 2018 09:44:24 -0700 Subject: [PATCH 6/6] Update canvas.class.js --- src/canvas.class.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/canvas.class.js b/src/canvas.class.js index 3945f5d4efd..9abe38cdd97 100644 --- a/src/canvas.class.js +++ b/src/canvas.class.js @@ -378,7 +378,7 @@ return this._sortObjectsByDisplayOrder(objsToRender); }, - + _sortObjectsByDisplayOrder: function (objects) { return objects.sort(function(a, b) { var sortValue = 0, az = a.zIndex || 0, bz = b.zIndex || 0; @@ -389,7 +389,7 @@ else if (az > bz) { sortValue = 1; } - + return sortValue; }); },