/****************************************************************************
** Meta object code from reading C++ file 'fcitxqtcontrollerproxy.h'
**
** Created by: The Qt Meta Object Compiler version 69 (Qt 6.11.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

#include "../../fcitxqtcontrollerproxy.h"
#include <QtCore/qmetatype.h>

#include <QtCore/qtmochelpers.h>

#include <memory>


#include <QtCore/qxptype_traits.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'fcitxqtcontrollerproxy.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

#ifndef Q_CONSTINIT
#define Q_CONSTINIT
#endif

QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
QT_WARNING_DISABLE_GCC("-Wuseless-cast")
namespace {
struct qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t {};
} // unnamed namespace

template <> constexpr inline auto fcitx::FcitxQtControllerProxy::qt_create_metaobjectdata<qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "fcitx::FcitxQtControllerProxy",
        "InputMethodGroupsChanged",
        "",
        "Activate",
        "QDBusPendingReply<>",
        "AddInputMethodGroup",
        "in0",
        "AddonForIM",
        "QDBusPendingReply<QString>",
        "AvailableInputMethods",
        "QDBusPendingReply<FcitxQtInputMethodEntryList>",
        "AvailableKeyboardLayouts",
        "QDBusPendingReply<FcitxQtLayoutInfoList>",
        "CanRestart",
        "QDBusPendingReply<bool>",
        "CheckUpdate",
        "Configure",
        "ConfigureAddon",
        "ConfigureIM",
        "CurrentInputMethod",
        "CurrentUI",
        "Exit",
        "FullInputMethodGroupInfo",
        "QDBusPendingReply<QString,QString,QString,QVariantMap,FcitxQtFullI"
        "nputMethodEntryList>",
        "QDBusReply<QString>",
        "QString&",
        "defaultInputMethod",
        "defaultLayout",
        "QVariantMap&",
        "properties",
        "FcitxQtFullInputMethodEntryList&",
        "inputMethodEntryList",
        "GetAddons",
        "QDBusPendingReply<FcitxQtAddonInfoList>",
        "GetAddonsV2",
        "QDBusPendingReply<FcitxQtAddonInfoV2List>",
        "GetConfig",
        "QDBusPendingReply<QDBusVariant,FcitxQtConfigTypeList>",
        "QDBusReply<QDBusVariant>",
        "FcitxQtConfigTypeList&",
        "out1",
        "InputMethodGroupInfo",
        "QDBusPendingReply<QString,FcitxQtStringKeyValueList>",
        "FcitxQtStringKeyValueList&",
        "items",
        "InputMethodGroups",
        "QDBusPendingReply<QStringList>",
        "Refresh",
        "ReloadAddonConfig",
        "ReloadConfig",
        "RemoveInputMethodGroup",
        "ResetIMList",
        "Restart",
        "SetAddonsState",
        "FcitxQtAddonStateList",
        "SetConfig",
        "QDBusVariant",
        "in1",
        "SetCurrentIM",
        "SetInputMethodGroupInfo",
        "name",
        "layout",
        "FcitxQtStringKeyValueList",
        "entries",
        "State",
        "QDBusPendingReply<int>",
        "Toggle"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'InputMethodGroupsChanged'
        QtMocHelpers::SignalData<void()>(1, 2, QMC::AccessPublic, QMetaType::Void),
        // Slot 'Activate'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(3, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'AddInputMethodGroup'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(5, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'AddonForIM'
        QtMocHelpers::SlotData<QDBusPendingReply<QString>(const QString &)>(7, 2, QMC::AccessPublic, 0x80000000 | 8, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'AvailableInputMethods'
        QtMocHelpers::SlotData<QDBusPendingReply<FcitxQtInputMethodEntryList>()>(9, 2, QMC::AccessPublic, 0x80000000 | 10),
        // Slot 'AvailableKeyboardLayouts'
        QtMocHelpers::SlotData<QDBusPendingReply<FcitxQtLayoutInfoList>()>(11, 2, QMC::AccessPublic, 0x80000000 | 12),
        // Slot 'CanRestart'
        QtMocHelpers::SlotData<QDBusPendingReply<bool>()>(13, 2, QMC::AccessPublic, 0x80000000 | 14),
        // Slot 'CheckUpdate'
        QtMocHelpers::SlotData<QDBusPendingReply<bool>()>(15, 2, QMC::AccessPublic, 0x80000000 | 14),
        // Slot 'Configure'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(16, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'ConfigureAddon'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(17, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'ConfigureIM'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(18, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'CurrentInputMethod'
        QtMocHelpers::SlotData<QDBusPendingReply<QString>()>(19, 2, QMC::AccessPublic, 0x80000000 | 8),
        // Slot 'CurrentUI'
        QtMocHelpers::SlotData<QDBusPendingReply<QString>()>(20, 2, QMC::AccessPublic, 0x80000000 | 8),
        // Slot 'Exit'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(21, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'FullInputMethodGroupInfo'
        QtMocHelpers::SlotData<QDBusPendingReply<QString,QString,QString,QVariantMap,FcitxQtFullInputMethodEntryList>(const QString &)>(22, 2, QMC::AccessPublic, 0x80000000 | 23, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'FullInputMethodGroupInfo'
        QtMocHelpers::SlotData<QDBusReply<QString>(const QString &, QString &, QString &, QVariantMap &, FcitxQtFullInputMethodEntryList &)>(22, 2, QMC::AccessPublic, 0x80000000 | 24, {{
            { QMetaType::QString, 6 }, { 0x80000000 | 25, 26 }, { 0x80000000 | 25, 27 }, { 0x80000000 | 28, 29 },
            { 0x80000000 | 30, 31 },
        }}),
        // Slot 'GetAddons'
        QtMocHelpers::SlotData<QDBusPendingReply<FcitxQtAddonInfoList>()>(32, 2, QMC::AccessPublic, 0x80000000 | 33),
        // Slot 'GetAddonsV2'
        QtMocHelpers::SlotData<QDBusPendingReply<FcitxQtAddonInfoV2List>()>(34, 2, QMC::AccessPublic, 0x80000000 | 35),
        // Slot 'GetConfig'
        QtMocHelpers::SlotData<QDBusPendingReply<QDBusVariant,FcitxQtConfigTypeList>(const QString &)>(36, 2, QMC::AccessPublic, 0x80000000 | 37, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'GetConfig'
        QtMocHelpers::SlotData<QDBusReply<QDBusVariant>(const QString &, FcitxQtConfigTypeList &)>(36, 2, QMC::AccessPublic, 0x80000000 | 38, {{
            { QMetaType::QString, 6 }, { 0x80000000 | 39, 40 },
        }}),
        // Slot 'InputMethodGroupInfo'
        QtMocHelpers::SlotData<QDBusPendingReply<QString,FcitxQtStringKeyValueList>(const QString &)>(41, 2, QMC::AccessPublic, 0x80000000 | 42, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'InputMethodGroupInfo'
        QtMocHelpers::SlotData<QDBusReply<QString>(const QString &, FcitxQtStringKeyValueList &)>(41, 2, QMC::AccessPublic, 0x80000000 | 24, {{
            { QMetaType::QString, 6 }, { 0x80000000 | 43, 44 },
        }}),
        // Slot 'InputMethodGroups'
        QtMocHelpers::SlotData<QDBusPendingReply<QStringList>()>(45, 2, QMC::AccessPublic, 0x80000000 | 46),
        // Slot 'Refresh'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(47, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'ReloadAddonConfig'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(48, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'ReloadConfig'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(49, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'RemoveInputMethodGroup'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(50, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'ResetIMList'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(51, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'Restart'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(52, 2, QMC::AccessPublic, 0x80000000 | 4),
        // Slot 'SetAddonsState'
        QtMocHelpers::SlotData<QDBusPendingReply<>(FcitxQtAddonStateList)>(53, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { 0x80000000 | 54, 6 },
        }}),
        // Slot 'SetConfig'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &, const QDBusVariant &)>(55, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 }, { 0x80000000 | 56, 57 },
        }}),
        // Slot 'SetCurrentIM'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &)>(58, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 6 },
        }}),
        // Slot 'SetInputMethodGroupInfo'
        QtMocHelpers::SlotData<QDBusPendingReply<>(const QString &, const QString &, FcitxQtStringKeyValueList)>(59, 2, QMC::AccessPublic, 0x80000000 | 4, {{
            { QMetaType::QString, 60 }, { QMetaType::QString, 61 }, { 0x80000000 | 62, 63 },
        }}),
        // Slot 'State'
        QtMocHelpers::SlotData<QDBusPendingReply<int>()>(64, 2, QMC::AccessPublic, 0x80000000 | 65),
        // Slot 'Toggle'
        QtMocHelpers::SlotData<QDBusPendingReply<>()>(66, 2, QMC::AccessPublic, 0x80000000 | 4),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<FcitxQtControllerProxy, qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT const QMetaObject fcitx::FcitxQtControllerProxy::staticMetaObject = { {
    QMetaObject::SuperData::link<QDBusAbstractInterface::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>.metaTypes,
    nullptr
} };

void fcitx::FcitxQtControllerProxy::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<FcitxQtControllerProxy *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->InputMethodGroupsChanged(); break;
        case 1: { QDBusPendingReply<> _r = _t->Activate();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 2: { QDBusPendingReply<> _r = _t->AddInputMethodGroup((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 3: { QDBusPendingReply<QString> _r = _t->AddonForIM((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QString>*>(_a[0]) = std::move(_r); }  break;
        case 4: { QDBusPendingReply<FcitxQtInputMethodEntryList> _r = _t->AvailableInputMethods();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<FcitxQtInputMethodEntryList>*>(_a[0]) = std::move(_r); }  break;
        case 5: { QDBusPendingReply<FcitxQtLayoutInfoList> _r = _t->AvailableKeyboardLayouts();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<FcitxQtLayoutInfoList>*>(_a[0]) = std::move(_r); }  break;
        case 6: { QDBusPendingReply<bool> _r = _t->CanRestart();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<bool>*>(_a[0]) = std::move(_r); }  break;
        case 7: { QDBusPendingReply<bool> _r = _t->CheckUpdate();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<bool>*>(_a[0]) = std::move(_r); }  break;
        case 8: { QDBusPendingReply<> _r = _t->Configure();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 9: { QDBusPendingReply<> _r = _t->ConfigureAddon((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 10: { QDBusPendingReply<> _r = _t->ConfigureIM((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 11: { QDBusPendingReply<QString> _r = _t->CurrentInputMethod();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QString>*>(_a[0]) = std::move(_r); }  break;
        case 12: { QDBusPendingReply<QString> _r = _t->CurrentUI();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QString>*>(_a[0]) = std::move(_r); }  break;
        case 13: { QDBusPendingReply<> _r = _t->Exit();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 14: { QDBusPendingReply<QString,QString,QString,QVariantMap,FcitxQtFullInputMethodEntryList> _r = _t->FullInputMethodGroupInfo((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QString,QString,QString,QVariantMap,FcitxQtFullInputMethodEntryList>*>(_a[0]) = std::move(_r); }  break;
        case 15: { QDBusReply<QString> _r = _t->FullInputMethodGroupInfo((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString&>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<QString&>>(_a[3])),(*reinterpret_cast<std::add_pointer_t<QVariantMap&>>(_a[4])),(*reinterpret_cast<std::add_pointer_t<FcitxQtFullInputMethodEntryList&>>(_a[5])));
            if (_a[0]) *reinterpret_cast<QDBusReply<QString>*>(_a[0]) = std::move(_r); }  break;
        case 16: { QDBusPendingReply<FcitxQtAddonInfoList> _r = _t->GetAddons();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<FcitxQtAddonInfoList>*>(_a[0]) = std::move(_r); }  break;
        case 17: { QDBusPendingReply<FcitxQtAddonInfoV2List> _r = _t->GetAddonsV2();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<FcitxQtAddonInfoV2List>*>(_a[0]) = std::move(_r); }  break;
        case 18: { QDBusPendingReply<QDBusVariant,FcitxQtConfigTypeList> _r = _t->GetConfig((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QDBusVariant,FcitxQtConfigTypeList>*>(_a[0]) = std::move(_r); }  break;
        case 19: { QDBusReply<QDBusVariant> _r = _t->GetConfig((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<FcitxQtConfigTypeList&>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QDBusReply<QDBusVariant>*>(_a[0]) = std::move(_r); }  break;
        case 20: { QDBusPendingReply<QString,FcitxQtStringKeyValueList> _r = _t->InputMethodGroupInfo((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QString,FcitxQtStringKeyValueList>*>(_a[0]) = std::move(_r); }  break;
        case 21: { QDBusReply<QString> _r = _t->InputMethodGroupInfo((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<FcitxQtStringKeyValueList&>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QDBusReply<QString>*>(_a[0]) = std::move(_r); }  break;
        case 22: { QDBusPendingReply<QStringList> _r = _t->InputMethodGroups();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<QStringList>*>(_a[0]) = std::move(_r); }  break;
        case 23: { QDBusPendingReply<> _r = _t->Refresh();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 24: { QDBusPendingReply<> _r = _t->ReloadAddonConfig((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 25: { QDBusPendingReply<> _r = _t->ReloadConfig();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 26: { QDBusPendingReply<> _r = _t->RemoveInputMethodGroup((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 27: { QDBusPendingReply<> _r = _t->ResetIMList();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 28: { QDBusPendingReply<> _r = _t->Restart();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 29: { QDBusPendingReply<> _r = _t->SetAddonsState((*reinterpret_cast<std::add_pointer_t<FcitxQtAddonStateList>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 30: { QDBusPendingReply<> _r = _t->SetConfig((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QDBusVariant>>(_a[2])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 31: { QDBusPendingReply<> _r = _t->SetCurrentIM((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 32: { QDBusPendingReply<> _r = _t->SetInputMethodGroupInfo((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<QString>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<FcitxQtStringKeyValueList>>(_a[3])));
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        case 33: { QDBusPendingReply<int> _r = _t->State();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<int>*>(_a[0]) = std::move(_r); }  break;
        case 34: { QDBusPendingReply<> _r = _t->Toggle();
            if (_a[0]) *reinterpret_cast<QDBusPendingReply<>*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        switch (_id) {
        default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
        case 30:
            switch (*reinterpret_cast<int*>(_a[1])) {
            default: *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType(); break;
            case 1:
                *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType::fromType< QDBusVariant >(); break;
            }
            break;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (FcitxQtControllerProxy::*)()>(_a, &FcitxQtControllerProxy::InputMethodGroupsChanged, 0))
            return;
    }
}

const QMetaObject *fcitx::FcitxQtControllerProxy::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *fcitx::FcitxQtControllerProxy::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN5fcitx22FcitxQtControllerProxyE_t>.strings))
        return static_cast<void*>(this);
    return QDBusAbstractInterface::qt_metacast(_clname);
}

int fcitx::FcitxQtControllerProxy::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QDBusAbstractInterface::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 35)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 35;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 35)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 35;
    }
    return _id;
}

// SIGNAL 0
void fcitx::FcitxQtControllerProxy::InputMethodGroupsChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 0, nullptr);
}
QT_WARNING_POP
