feat(icons): wire the universal picker into tabbar/floating settings and keep customsvg through their save paths

手机底部Tab and 右侧悬浮按钮 settings pages swap their icon text inputs
for the shared FaIconPicker (with a new IconValue preview component that
renders FA/sprite/custom SVG values in lists and previews). footer.php
tabbar/floating/sub-item icons and the VIP float render through
aksrt_icon_markup so every stored format displays; GlobalControllerPart1
and the VIP helper drop the FA-only regex gate and sanitize icon values
through aksrt_sanitize_icon_value. The picker popover tabs now wrap
instead of overflowing, and FA grid previews use style-only classes.
This commit is contained in:
kate522 committed 2026-09-06 14:27:49 +08:00
1 parent d89752d543
commit 70cba11fb7
8 files changed
+96 -63

No files matched your search

+2 -1
View File
@@ -98,7 +98,8 @@
(group.icons || []).forEach((name) => {
if (group.type === 'fa') {
const value = `fa ${group.id} fa-${name}`;
$grid.append(itemButton(value, name, `<i class="fa ${group.id} fa-${escapeText(name)}" aria-hidden="true"></i>`));
// Style-class-only preview: immune to the .fa family override in FA5's css.
$grid.append(itemButton(value, name, `<i class="${group.id} fa-${escapeText(name)}" aria-hidden="true"></i>`));
} else if (group.type === 'svg') {
const value = `zibsvg-${name}`;
const key = escapeText(name).replace(/[^a-zA-Z0-9_-]/g, '');