From 219491ec2bc4aac4234a46c30a1fa54bbdd8db68 Mon Sep 17 00:00:00 2001 From: bdeshi Date: Sat, 6 Jun 2026 22:09:25 +0600 Subject: [PATCH] get that out of onload --- main.js | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/main.js b/main.js index 1135f27..5d91ad3 100644 --- a/main.js +++ b/main.js @@ -5,19 +5,23 @@ module.exports = class RibbonOrderLock extends Plugin { this.settings = Object.assign({ order: [] }, await this.loadData()); this.app.workspace.onLayoutReady(() => { - const ribbon = this.app.workspace.leftRibbon; - const order = this.settings.order; - - const sorted = [...ribbon.items].sort( - (a, b) => order.indexOf(a.id) - order.indexOf(b.id) - ); - - ribbon.items.length = 0; - ribbon.items.push(...sorted); - ribbon.onChange(true); - - this.settings.order = ribbon.items.map((item) => item.id); - this.saveData(this.settings); + this.enforceOrder(); }); } + + enforceOrder() { + const ribbon = this.app.workspace.leftRibbon; + const order = this.settings.order; + + const sorted = [...ribbon.items].sort( + (a, b) => order.indexOf(a.id) - order.indexOf(b.id) + ); + + ribbon.items.length = 0; + ribbon.items.push(...sorted); + ribbon.onChange(true); + + this.settings.order = ribbon.items.map((item) => item.id); + this.saveData(this.settings); + } };