From 54b956c602ee5cfca992543aaa9c04572feb6891 Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Wed, 22 Jan 2025 15:37:12 -0800 Subject: [PATCH] ui: Drop the temporary fix for missing popper.js 2.0 - Latest version of libjs-bootstrap5 depends on node-popper2. However, version in Debian bookworm still continue to have incorrect dependency. So, add explicit dependency on node-popper2 until we stop supporting Bookworm. Tests: - In stable and testing VMs, install node-popper2 and notices that the following work as expected: - User menu dropdown in desktop and mobile layouts. - Help menu dropdown in desktop and mobile layouts. - Notification dropdown. - App extra actions dropdown. Signed-off-by: Sunil Mohan Adapa Reviewed-by: Veiko Aasa --- debian/control | 4 +++ plinth/templates/base.html | 3 +-- static/themes/default/js/fix.js | 44 --------------------------------- 3 files changed, 5 insertions(+), 46 deletions(-) delete mode 100644 static/themes/default/js/fix.js diff --git a/debian/control b/debian/control index e262db663..668d5d22d 100644 --- a/debian/control +++ b/debian/control @@ -18,6 +18,8 @@ Build-Depends: e2fsprogs, gir1.2-nm-1.0, libjs-bootstrap5, + # Older libjs-bootstrap5 does not have proper dependency on popper.js >= 2.0 + node-popper2, pybuild-plugin-pyproject, python3-all:any, python3-apt, @@ -94,6 +96,8 @@ Depends: lsof, netcat-openbsd, network-manager, + # Older libjs-bootstrap5 does not have proper dependency on popper.js >= 2.0 + node-popper2, ppp, pppoe, python3-apt, diff --git a/plinth/templates/base.html b/plinth/templates/base.html index c32e8f0fd..876f86674 100644 --- a/plinth/templates/base.html +++ b/plinth/templates/base.html @@ -59,8 +59,7 @@ {% endif %} - - + diff --git a/static/themes/default/js/fix.js b/static/themes/default/js/fix.js deleted file mode 100644 index 12e49dd23..000000000 --- a/static/themes/default/js/fix.js +++ /dev/null @@ -1,44 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later -/* - This file is part of FreedomBox. - - @licstart The following is the entire license notice for the - JavaScript code in this page. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . - - @licend The above is the entire license notice - for the JavaScript code in this page. -*/ - -// Workaround Debian bug #1087969. popper.js 2.x is needed for Bootstrap 5, -// however, the current version on in Debian is 1.x. -if (typeof(Popper.createPopper) === 'undefined') { - window.Popper.createPopper = function(reference, popper, options) { - if (options.modifiers.length == 1) { - // Navbar dropdown - options.modifiers = { - 'applyStyle': {'enabled': false} - }; - } else { - // Regular dropdown - options.modifiers = { - 'flip': {'enabled': true}, - 'offset': {'offset': 0}, - 'preventOverflow': {'boundariesElement': 'scrollParent'} - }; - } - return new Popper(reference, popper, options); - }; -}