Changeset View
Changeset View
Standalone View
Standalone View
kcms/keyboard/layoutmodel/layout_list_filter_source_proxy_model.cpp
- This file was added.
1 | #include "layout_list_filter_source_proxy_model.h" | ||||
---|---|---|---|---|---|
2 | | ||||
3 | #include "input_sources.h" | ||||
4 | #include "layout_list_concat_proxy_model.h" | ||||
5 | | ||||
6 | #include <QDebug> | ||||
7 | | ||||
8 | LayoutListFilterSourceProxyModel::LayoutListFilterSourceProxyModel(QObject* parent) | ||||
9 | : QSortFilterProxyModel(parent) | ||||
10 | { | ||||
11 | QObject::connect(InputSources::self(), &InputSources::currentSourceChanged, | ||||
12 | [&] { invalidateFilter(); }); | ||||
13 | } | ||||
14 | | ||||
15 | bool LayoutListFilterSourceProxyModel::filterAcceptsRow(int sourceRow, const QModelIndex&) const | ||||
16 | { | ||||
17 | int src = sourceModel()->data(sourceModel()->index(sourceRow, 0), Roles::SourceRole).toInt(); | ||||
18 | if (src == InputSources::Sources::UnknownSource) { | ||||
19 | return true; | ||||
20 | } | ||||
21 | return (src == InputSources::self()->currentSource()); | ||||
22 | } |