diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/applist.cpp | 9 | ||||
-rw-r--r-- | src/applist.hpp | 7 | ||||
-rw-r--r-- | src/request.hpp | 3 |
3 files changed, 12 insertions, 7 deletions
diff --git a/src/applist.cpp b/src/applist.cpp index b5c1681..13e677c 100644 --- a/src/applist.cpp +++ b/src/applist.cpp @@ -177,23 +177,28 @@ unsigned AppList::addAllocateRequest(WMRequest req) return req.req_num; // return 1; if you test time_expire } -struct WMTrigger AppList::getRequest(unsigned req_num) +struct WMTrigger AppList::getRequest(unsigned req_num, bool *found) { + *found = false; for (const auto &x : this->req_list) { if (req_num == x.req_num) { + *found = true; return x.trigger; } } + return WMTrigger{"", "", "", Task::TASK_INVALID}; } -const vector<struct WMAction> &AppList::getActions(unsigned req_num) +const vector<struct WMAction> &AppList::getActions(unsigned req_num, bool* found) { + *found = false; for (auto &x : this->req_list) { if (req_num == x.req_num) { + *found = true; return x.sync_draw_req; } } diff --git a/src/applist.hpp b/src/applist.hpp index 36134a2..69577d0 100644 --- a/src/applist.hpp +++ b/src/applist.hpp @@ -61,8 +61,7 @@ class AppList void removeFloatingSurface(unsigned surface); // Request Interface - unsigned - currentRequestNumber() const; + unsigned currentRequestNumber() const; unsigned getRequestNumber(const std::string &appid) const; unsigned addAllocateRequest(WMRequest req); /* TODO: consider, which is better WMClient or std::string appid? @@ -76,8 +75,8 @@ class AppList void next(); bool haveRequest() const; - struct WMTrigger getRequest(unsigned req_num); - const std::vector<struct WMAction> &getActions(unsigned req_num); + struct WMTrigger getRequest(unsigned req_num, bool* found); + const std::vector<struct WMAction> &getActions(unsigned req_num, bool* found); void clientDump(); void reqDump(); diff --git a/src/request.hpp b/src/request.hpp index ab1ef95..ded2c02 100644 --- a/src/request.hpp +++ b/src/request.hpp @@ -26,7 +26,8 @@ namespace wm enum Task { TASK_ALLOCATE, - TASK_RELEASE + TASK_RELEASE, + TASK_INVALID }; struct WMTrigger |