diff --git a/src/dcc-fcitx5configtool/operation/fcitx5configproxy.cpp b/src/dcc-fcitx5configtool/operation/fcitx5configproxy.cpp index e3c16b8d..b4e3d98a 100644 --- a/src/dcc-fcitx5configtool/operation/fcitx5configproxy.cpp +++ b/src/dcc-fcitx5configtool/operation/fcitx5configproxy.cpp @@ -1,4 +1,4 @@ -// SPDX-FileCopyrightText: 2024 - 2027 UnionTech Software Technology Co., Ltd. +// SPDX-FileCopyrightText: 2024 - 2026 UnionTech Software Technology Co., Ltd. // // SPDX-License-Identifier: GPL-3.0-or-later @@ -219,6 +219,13 @@ QVariantList Fcitx5ConfigProxy::globalConfigOptions(const QString &type, bool al } ++iterator; } + if (option.type() == "Integer") { + bool ok = false; + int maxVal = properties.contains("IntMax") ? properties["IntMax"].toInt(&ok) : 9999; + item["intMax"] = ok ? maxVal : 9999; + int minVal = properties.contains("IntMin") ? properties["IntMin"].toInt(&ok) : 0; + item["intMin"] = ok ? minVal : 0; + } } list.append(item); } diff --git a/src/dcc-fcitx5configtool/qml/DetailConfigItem.qml b/src/dcc-fcitx5configtool/qml/DetailConfigItem.qml index d79da4e9..a561a06e 100644 --- a/src/dcc-fcitx5configtool/qml/DetailConfigItem.qml +++ b/src/dcc-fcitx5configtool/qml/DetailConfigItem.qml @@ -112,8 +112,11 @@ DccObject { Component { id: integerComponent D.SpinBox { - width: 55 - implicitWidth: 55 + editable: true + width: 75 + implicitWidth: 75 + from: modelData.intMin !== undefined ? modelData.intMin : 0 + to: modelData.intMax !== undefined ? modelData.intMax : 9999 value: parseInt(modelData.value) onValueChanged: { dccData.fcitx5ConfigProxy.setValue(