Add option to disable scroll wraparound on workspaces

pull/327/head
RX14 2019-05-17 17:53:38 +01:00
parent d34c3a801c
commit 3e1c77d158
No known key found for this signature in database
GPG Key ID: CEF2BBFE18BD0E67
1 changed files with 6 additions and 2 deletions

View File

@ -215,7 +215,7 @@ bool Workspaces::handleScroll(GdkEventScroll *e) {
const std::string Workspaces::getCycleWorkspace(std::vector<Json::Value>::iterator it, const std::string Workspaces::getCycleWorkspace(std::vector<Json::Value>::iterator it,
bool prev) const { bool prev) const {
if (prev && it == workspaces_.begin()) { if (prev && it == workspaces_.begin() && !config_["disable-scroll-wraparound"].asBool()) {
return (*(--workspaces_.end()))["name"].asString(); return (*(--workspaces_.end()))["name"].asString();
} }
if (prev && it != workspaces_.begin()) if (prev && it != workspaces_.begin())
@ -223,8 +223,12 @@ const std::string Workspaces::getCycleWorkspace(std::vector<Json::Value>::iterat
else if (!prev && it != workspaces_.end()) else if (!prev && it != workspaces_.end())
++it; ++it;
if (!prev && it == workspaces_.end()) { if (!prev && it == workspaces_.end()) {
if (config_["disable-scroll-wraparound"].asBool()) {
--it;
} else {
return (*(workspaces_.begin()))["name"].asString(); return (*(workspaces_.begin()))["name"].asString();
} }
}
return (*it)["name"].asString(); return (*it)["name"].asString();
} }