Changeset View
Changeset View
Standalone View
Standalone View
src/core/slavebase.cpp
Show First 20 Lines • Show All 135 Lines • ▼ Show 20 Line(s) | 87 | public: | |||
---|---|---|---|---|---|
136 | bool m_rootEntryListed = false; | 136 | bool m_rootEntryListed = false; | ||
137 | 137 | | |||
138 | bool m_confirmationAsked; | 138 | bool m_confirmationAsked; | ||
139 | QSet<QString> m_tempAuths; | 139 | QSet<QString> m_tempAuths; | ||
140 | QString m_warningCaption; | 140 | QString m_warningCaption; | ||
141 | QString m_warningMessage; | 141 | QString m_warningMessage; | ||
142 | int m_privilegeOperationStatus; | 142 | int m_privilegeOperationStatus; | ||
143 | 143 | | |||
144 | PrivilegeOperationStatus askConfirmation() | | |||
145 | { | | |||
146 | int status = q->messageBox(SlaveBase::WarningContinueCancel, m_warningMessage, m_warningCaption, QStringLiteral("Continue"), QStringLiteral("Cancel")); | | |||
147 | switch (status) { | | |||
148 | case SlaveBase::Continue: | | |||
149 | return OperationAllowed; | | |||
150 | case SlaveBase::Cancel: | | |||
151 | return OperationCanceled; | | |||
152 | default: | | |||
153 | return OperationNotAllowed; | | |||
154 | } | | |||
155 | } | | |||
156 | | ||||
157 | void updateTempAuthStatus() | 144 | void updateTempAuthStatus() | ||
158 | { | 145 | { | ||
159 | #ifdef Q_OS_UNIX | 146 | #ifdef Q_OS_UNIX | ||
160 | QSet<QString>::iterator it = m_tempAuths.begin(); | 147 | QSet<QString>::iterator it = m_tempAuths.begin(); | ||
161 | while (it != m_tempAuths.end()) { | 148 | while (it != m_tempAuths.end()) { | ||
162 | KAuth::Action action(*it); | 149 | KAuth::Action action(*it); | ||
163 | if (action.status() != KAuth::Action::AuthorizedStatus) { | 150 | if (action.status() != KAuth::Action::AuthorizedStatus) { | ||
164 | it = m_tempAuths.erase(it); | 151 | it = m_tempAuths.erase(it); | ||
▲ Show 20 Lines • Show All 1365 Lines • ▼ Show 20 Line(s) | 1499 | { | |||
1530 | info.setHostName(hostName); | 1517 | info.setHostName(hostName); | ||
1531 | info.setAddresses(addresses); | 1518 | info.setAddresses(addresses); | ||
1532 | info.setError(QHostInfo::HostInfoError(error)); | 1519 | info.setError(QHostInfo::HostInfoError(error)); | ||
1533 | info.setErrorString(errorString); | 1520 | info.setErrorString(errorString); | ||
1534 | 1521 | | |||
1535 | return result; | 1522 | return result; | ||
1536 | } | 1523 | } | ||
1537 | 1524 | | |||
1538 | PrivilegeOperationStatus SlaveBase::requestPrivilegeOperation() | 1525 | PrivilegeOperationStatus SlaveBase::requestPrivilegeOperation(const QString &operationDetails) | ||
1539 | { | 1526 | { | ||
1527 | | ||||
1540 | if (d->m_privilegeOperationStatus == OperationNotAllowed) { | 1528 | if (d->m_privilegeOperationStatus == OperationNotAllowed) { | ||
1541 | QByteArray buffer; | 1529 | QByteArray buffer; | ||
1542 | send(MSG_PRIVILEGE_EXEC); | 1530 | send(MSG_PRIVILEGE_EXEC); | ||
1543 | waitForAnswer(MSG_PRIVILEGE_EXEC, 0, buffer); | 1531 | waitForAnswer(MSG_PRIVILEGE_EXEC, 0, buffer); | ||
1544 | QDataStream ds(buffer); | 1532 | QDataStream ds(buffer); | ||
1545 | ds >> d->m_privilegeOperationStatus >> d->m_warningCaption >> d-> m_warningMessage; | 1533 | ds >> d->m_privilegeOperationStatus >> d->m_warningCaption >> d-> m_warningMessage; | ||
1546 | } | 1534 | } | ||
1547 | 1535 | | |||
1548 | if (metaData(QStringLiteral("UnitTesting")) != QLatin1String("true") && | 1536 | if (metaData(QStringLiteral("UnitTesting")) != QLatin1String("true") && | ||
1549 | d->m_privilegeOperationStatus == OperationAllowed && | 1537 | d->m_privilegeOperationStatus == OperationAllowed && | ||
1550 | !d->m_confirmationAsked) { | 1538 | !d->m_confirmationAsked) { | ||
1551 | d->m_privilegeOperationStatus = d->askConfirmation(); | 1539 | //KF6 TODO Remove. We don't want to pass details as meta-data. Pass it as a parameter in messageBox(). | ||
1540 | setMetaData(QStringLiteral("privilege_conf_details"), operationDetails); | ||||
1541 | sendMetaData(); | ||||
dfaure: INF is for one-way information, isn't it? Why isn't this MSG_ like the one above? | |||||
1542 | | ||||
1543 | int result = messageBox(d->m_warningMessage, WarningContinueCancelDetailed, | ||||
1544 | d->m_warningCaption, QString(), QString(), QString()); | ||||
1545 | d->m_privilegeOperationStatus = result == Continue ? OperationAllowed : OperationCanceled; | ||||
1552 | d->m_confirmationAsked = true; | 1546 | d->m_confirmationAsked = true; | ||
1553 | } | 1547 | } | ||
1554 | 1548 | | |||
1555 | return KIO::PrivilegeOperationStatus(d->m_privilegeOperationStatus); | 1549 | return KIO::PrivilegeOperationStatus(d->m_privilegeOperationStatus); | ||
1556 | } | 1550 | } | ||
1557 | 1551 | | |||
1558 | void SlaveBase::addTemporaryAuthorization(const QString &action) | 1552 | void SlaveBase::addTemporaryAuthorization(const QString &action) | ||
1559 | { | 1553 | { | ||
1560 | d->m_tempAuths.insert(action); | 1554 | d->m_tempAuths.insert(action); | ||
1561 | } | 1555 | } | ||
1556 | | ||||
1557 | #if KIOCORE_BUILD_DEPRECATED_SINCE(5, 66) | ||||
dfaure: `#if KIOCORE_BUILD_DEPRECATED_SINCE(5, 65) `
(notice BUILD, not ENABLE) | |||||
1558 | PrivilegeOperationStatus SlaveBase::requestPrivilegeOperation() | ||||
1559 | { | ||||
1560 | return KIO::OperationNotAllowed; | ||||
1561 | } | ||||
1562 | #endif |
INF is for one-way information, isn't it? Why isn't this MSG_ like the one above?