18 #include <QtQml/qqml.h> 19 #include <QDBusConnection> 20 #include <QQmlContext> 21 #include <QtQuick/QQuickWindow> 26 #include "activefocuslogger.h" 27 #include "easingcurve.h" 28 #include "WindowInputMonitor.h" 29 #include "inputwatcher.h" 30 #include "qlimitproxymodelqml.h" 31 #include "unitysortfilterproxymodelqml.h" 32 #include "unitymenumodelpaths.h" 33 #include "windowinputfilter.h" 34 #include "windowstatestorage.h" 35 #include "constants.h" 36 #include "timezoneFormatter.h" 37 #include "applicationsfiltermodel.h" 38 #include "inputeventgenerator.h" 39 #include "deviceconfigparser.h" 40 #include "globalfunctions.h" 41 #include "URLDispatcher.h" 42 #include "appdrawerproxymodel.h" 43 #include "tabfocusfence.h" 44 #include "expressionfiltermodel.h" 45 #include "quicklistproxymodel.h" 47 static QObject *createWindowStateStorage(QQmlEngine *engine, QJSEngine *scriptEngine)
50 Q_UNUSED(scriptEngine)
51 return new WindowStateStorage();
54 static QObject *createConstants(QQmlEngine *engine, QJSEngine *scriptEngine)
57 Q_UNUSED(scriptEngine)
61 static QObject *createGlobalFunctions(QQmlEngine *engine, QJSEngine *scriptEngine)
64 Q_UNUSED(scriptEngine)
68 void UtilsPlugin::registerTypes(
const char *uri)
70 Q_ASSERT(uri == QLatin1String(
"Utils"));
71 qmlRegisterType<WindowInputMonitor>(uri, 0, 1,
"WindowInputMonitor");
72 qmlRegisterType<QAbstractItemModel>();
73 qmlRegisterType<QLimitProxyModelQML>(uri, 0, 1,
"LimitProxyModel");
74 qmlRegisterType<UnitySortFilterProxyModelQML>(uri, 0, 1,
"UnitySortFilterProxyModel");
75 qmlRegisterType<UnityMenuModelPaths>(uri, 0, 1,
"UnityMenuModelPaths");
76 qmlRegisterType<WindowInputFilter>(uri, 0, 1,
"WindowInputFilter");
77 qmlRegisterType<EasingCurve>(uri, 0, 1,
"EasingCurve");
78 qmlRegisterSingletonType<WindowStateStorage>(uri, 0, 1,
"WindowStateStorage", createWindowStateStorage);
79 qmlRegisterType<InputWatcher>(uri, 0, 1,
"InputWatcher");
80 qmlRegisterSingletonType<Constants>(uri, 0, 1,
"Constants", createConstants);
81 qmlRegisterSingletonType<TimezoneFormatter>(uri, 0, 1,
"TimezoneFormatter",
82 [](QQmlEngine*, QJSEngine*) -> QObject* {
return new TimezoneFormatter; });
83 qmlRegisterType<ActiveFocusLogger>(uri, 0, 1,
"ActiveFocusLogger");
84 qmlRegisterType<ApplicationsFilterModel>(uri, 0, 1,
"ApplicationsFilterModel");
85 qmlRegisterType<InputEventGenerator>(uri, 0, 1,
"InputEventGenerator");
86 qmlRegisterType<DeviceConfigParser>(uri, 0, 1,
"DeviceConfigParser");
87 qmlRegisterSingletonType<GlobalFunctions>(uri, 0, 1,
"Functions", createGlobalFunctions);
88 qmlRegisterType<URLDispatcher>(uri, 0, 1,
"URLDispatcher");
89 qmlRegisterType<AppDrawerProxyModel>(uri, 0, 1,
"AppDrawerProxyModel");
90 qmlRegisterType<TabFocusFenceItem>(uri, 0, 1,
"TabFocusFence");
91 qmlRegisterType<ExpressionFilterModel>(uri, 0, 1,
"ExpressionFilterModel");
92 qmlRegisterType<QuickListProxyModel>(uri, 0, 1,
"QuickListProxyModel");
The GlobalFunctions class.