#pragma once
+#include <map>
#include <memory>
+#include <set>
#include <ApiInterface.h>
#include <PopupCallbackClosure.h>
virtual askuser_check_result checkPrivilege(const std::string &privilege);
virtual RequestId popupRequest(const PopupCallbackClosure &closure,
const std::string &privilege);
+ virtual bool popupRequestInProgress(const std::string &privilege) const;
void updateConnection(Protocol::ConnectionFd fd, int mask);
void popupResponse(Protocol::RequestId id, int response);
private:
+ void respondToAllRequests(askuser_call_cause cause, askuser_popup_result result);
+
StatusCallbackClosure m_statusClosure;
std::unique_ptr<Protocol::ClientChannel> m_channel;
- std::map<RequestId, PopupCallbackClosure> m_callbacks;
+ std::map<RequestId, PopupCallbackClosure> m_popupClosures;
+ std::set<std::string> m_requestedPrivileges;
};
} // namespace Client