[gnome-shell/wip/carlosg/pad-osd-fixes: 10/12] padOsd: Cache label coordinates/arrangements



commit dfc629d9ba7d3255117544e34c1cf0c18396b949
Author: Carlos Garnacho <carlosg gnome org>
Date:   Fri May 29 16:07:28 2020 +0200

    padOsd: Cache label coordinates/arrangements
    
    This is actually static for a given PadDiagram, as it always represents
    a single device.
    
    Fixes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2570
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1290

 js/ui/padOsd.js | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)
---
diff --git a/js/ui/padOsd.js b/js/ui/padOsd.js
index 36bceee982..50309e3039 100644
--- a/js/ui/padOsd.js
+++ b/js/ui/padOsd.js
@@ -445,14 +445,12 @@ var PadDiagram = GObject.registerClass({
 
         for (let i = 0; i < this._labels.length; i++) {
             let params = this._labels[i];
-            let [found_, x, y, arrangement] = this._getLabelCoords(params.action, params.idx, params.dir);
-            this._allocateChild(params.label, x, y, arrangement);
+            this._allocateChild(params.label, params.x, params.y, params.arrangement);
         }
 
         if (this._editorActor && this._curEdited) {
             let params = this._curEdited;
-            let [found_, x, y, arrangement] = this._getLabelCoords(params.action, params.idx, params.dir);
-            this._allocateChild(this._editorActor, x, y, arrangement);
+            this._allocateChild(this._editorActor, params.x, params.y, params.arrangement);
         }
     }
 
@@ -576,12 +574,12 @@ var PadDiagram = GObject.registerClass({
     }
 
     _addLabel(action, idx, dir) {
-        let [found] = this._getLabelCoords(action, idx, dir);
+        let [found_, x, y, arrangement] = this._getLabelCoords(action, idx, dir);
         if (!found)
             return false;
 
         let label = new St.Label();
-        this._labels.push({ label, action, idx, dir });
+        this._labels.push({ label, action, idx, dir, x, y, arrangement });
         this.add_actor(label);
         return true;
     }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]