Changeset View
Changeset View
Standalone View
Standalone View
src/filechooser.cpp
Show All 23 Lines | |||||
24 | #include <QDBusArgument> | 24 | #include <QDBusArgument> | ||
25 | #include <QLoggingCategory> | 25 | #include <QLoggingCategory> | ||
26 | #include <QFileDialog> | 26 | #include <QFileDialog> | ||
27 | #include <KLocalizedString> | 27 | #include <KLocalizedString> | ||
28 | 28 | | |||
29 | Q_LOGGING_CATEGORY(XdgDesktopPortalKdeFileChooser, "xdg-desktop-portal-kde-file-chooser") | 29 | Q_LOGGING_CATEGORY(XdgDesktopPortalKdeFileChooser, "xdg-desktop-portal-kde-file-chooser") | ||
30 | 30 | | |||
31 | // Keep in sync with qflatpakfiledialog from flatpak-platform-plugin | 31 | // Keep in sync with qflatpakfiledialog from flatpak-platform-plugin | ||
32 | Q_DECLARE_METATYPE(FileChooser::Filter); | 32 | Q_DECLARE_METATYPE(FileChooserPortal::Filter); | ||
33 | Q_DECLARE_METATYPE(FileChooser::Filters); | 33 | Q_DECLARE_METATYPE(FileChooserPortal::Filters); | ||
34 | Q_DECLARE_METATYPE(FileChooser::FilterList); | 34 | Q_DECLARE_METATYPE(FileChooserPortal::FilterList); | ||
35 | Q_DECLARE_METATYPE(FileChooser::FilterListList); | 35 | Q_DECLARE_METATYPE(FileChooserPortal::FilterListList); | ||
36 | 36 | | |||
37 | QDBusArgument &operator << (QDBusArgument &arg, const FileChooser::Filter &filter) | 37 | QDBusArgument &operator << (QDBusArgument &arg, const FileChooserPortal::Filter &filter) | ||
38 | { | 38 | { | ||
39 | arg.beginStructure(); | 39 | arg.beginStructure(); | ||
40 | arg << filter.type << filter.filterString; | 40 | arg << filter.type << filter.filterString; | ||
41 | arg.endStructure(); | 41 | arg.endStructure(); | ||
42 | return arg; | 42 | return arg; | ||
43 | } | 43 | } | ||
44 | 44 | | |||
45 | const QDBusArgument &operator >> (const QDBusArgument &arg, FileChooser::Filter &filter) | 45 | const QDBusArgument &operator >> (const QDBusArgument &arg, FileChooserPortal::Filter &filter) | ||
46 | { | 46 | { | ||
47 | uint type; | 47 | uint type; | ||
48 | QString filterString; | 48 | QString filterString; | ||
49 | arg.beginStructure(); | 49 | arg.beginStructure(); | ||
50 | arg >> type >> filterString; | 50 | arg >> type >> filterString; | ||
51 | filter.type = type; | 51 | filter.type = type; | ||
52 | filter.filterString = filterString; | 52 | filter.filterString = filterString; | ||
53 | arg.endStructure(); | 53 | arg.endStructure(); | ||
54 | 54 | | |||
55 | return arg; | 55 | return arg; | ||
56 | } | 56 | } | ||
57 | 57 | | |||
58 | QDBusArgument &operator << (QDBusArgument &arg, const FileChooser::FilterList &filterList) | 58 | QDBusArgument &operator << (QDBusArgument &arg, const FileChooserPortal::FilterList &filterList) | ||
59 | { | 59 | { | ||
60 | arg.beginStructure(); | 60 | arg.beginStructure(); | ||
61 | arg << filterList.userVisibleName << filterList.filters; | 61 | arg << filterList.userVisibleName << filterList.filters; | ||
62 | arg.endStructure(); | 62 | arg.endStructure(); | ||
63 | return arg; | 63 | return arg; | ||
64 | } | 64 | } | ||
65 | 65 | | |||
66 | const QDBusArgument &operator >> (const QDBusArgument &arg, FileChooser::FilterList &filterList) | 66 | const QDBusArgument &operator >> (const QDBusArgument &arg, FileChooserPortal::FilterList &filterList) | ||
67 | { | 67 | { | ||
68 | QString userVisibleName; | 68 | QString userVisibleName; | ||
69 | FileChooser::Filters filters; | 69 | FileChooserPortal::Filters filters; | ||
70 | arg.beginStructure(); | 70 | arg.beginStructure(); | ||
71 | arg >> userVisibleName >> filters; | 71 | arg >> userVisibleName >> filters; | ||
72 | filterList.userVisibleName = userVisibleName; | 72 | filterList.userVisibleName = userVisibleName; | ||
73 | filterList.filters = filters; | 73 | filterList.filters = filters; | ||
74 | arg.endStructure(); | 74 | arg.endStructure(); | ||
75 | 75 | | |||
76 | return arg; | 76 | return arg; | ||
77 | } | 77 | } | ||
78 | 78 | | |||
79 | FileChooser::FileChooser(QObject *parent) | 79 | FileChooserPortal::FileChooserPortal(QObject *parent) | ||
80 | : QObject(parent) | 80 | : QDBusAbstractAdaptor(parent) | ||
81 | { | 81 | { | ||
82 | qDBusRegisterMetaType<Filter>(); | 82 | qDBusRegisterMetaType<Filter>(); | ||
83 | qDBusRegisterMetaType<Filters>(); | 83 | qDBusRegisterMetaType<Filters>(); | ||
84 | qDBusRegisterMetaType<FilterList>(); | 84 | qDBusRegisterMetaType<FilterList>(); | ||
85 | qDBusRegisterMetaType<FilterListList>(); | 85 | qDBusRegisterMetaType<FilterListList>(); | ||
86 | } | 86 | } | ||
87 | 87 | | |||
88 | FileChooser::~FileChooser() | 88 | FileChooserPortal::~FileChooserPortal() | ||
89 | { | 89 | { | ||
90 | } | 90 | } | ||
91 | 91 | | |||
92 | uint FileChooser::openFile(const QDBusObjectPath &handle, | 92 | uint FileChooserPortal::OpenFile(const QDBusObjectPath &handle, | ||
93 | const QString &app_id, | 93 | const QString &app_id, | ||
94 | const QString &parent_window, | 94 | const QString &parent_window, | ||
95 | const QString &title, | 95 | const QString &title, | ||
96 | const QVariantMap &options, | 96 | const QVariantMap &options, | ||
97 | QVariantMap &results) | 97 | QVariantMap &results) | ||
98 | { | 98 | { | ||
99 | Q_UNUSED(app_id); | 99 | Q_UNUSED(app_id); | ||
100 | 100 | | |||
▲ Show 20 Lines • Show All 75 Lines • ▼ Show 20 Line(s) | 169 | if (fileDialog->exec() == QDialog::Accepted) { | |||
176 | fileDialog->deleteLater(); | 176 | fileDialog->deleteLater(); | ||
177 | return 0; | 177 | return 0; | ||
178 | } | 178 | } | ||
179 | 179 | | |||
180 | fileDialog->deleteLater(); | 180 | fileDialog->deleteLater(); | ||
181 | return 1; | 181 | return 1; | ||
182 | } | 182 | } | ||
183 | 183 | | |||
184 | uint FileChooser::saveFile(const QDBusObjectPath &handle, | 184 | uint FileChooserPortal::SaveFile(const QDBusObjectPath &handle, | ||
185 | const QString &app_id, | 185 | const QString &app_id, | ||
186 | const QString &parent_window, | 186 | const QString &parent_window, | ||
187 | const QString &title, | 187 | const QString &title, | ||
188 | const QVariantMap &options, | 188 | const QVariantMap &options, | ||
189 | QVariantMap &results) | 189 | QVariantMap &results) | ||
190 | { | 190 | { | ||
191 | Q_UNUSED(app_id); | 191 | Q_UNUSED(app_id); | ||
192 | 192 | | |||
▲ Show 20 Lines • Show All 99 Lines • Show Last 20 Lines |