Commit Squash
This commit is contained in:
@@ -161,6 +161,17 @@ std::string &Workspace::selectIcon(std::map<std::string, std::string> &icons_map
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (isActive() && isSpecial()) {
|
||||||
|
auto activeIconIt = icons_map.find("active:" + name());
|
||||||
|
if (activeIconIt != icons_map.end()) {
|
||||||
|
return activeIconIt->second;
|
||||||
|
}
|
||||||
|
auto namedIconIt = icons_map.find(name());
|
||||||
|
if (namedIconIt != icons_map.end()) {
|
||||||
|
return namedIconIt->second;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (isActive()) {
|
if (isActive()) {
|
||||||
auto activeIconIt = icons_map.find("active");
|
auto activeIconIt = icons_map.find("active");
|
||||||
if (activeIconIt != icons_map.end()) {
|
if (activeIconIt != icons_map.end()) {
|
||||||
@@ -234,6 +245,7 @@ void Workspace::update(const std::string &workspace_icon) {
|
|||||||
auto styleContext = m_button.get_style_context();
|
auto styleContext = m_button.get_style_context();
|
||||||
addOrRemoveClass(styleContext, isActive(), "active");
|
addOrRemoveClass(styleContext, isActive(), "active");
|
||||||
addOrRemoveClass(styleContext, isSpecial(), "special");
|
addOrRemoveClass(styleContext, isSpecial(), "special");
|
||||||
|
addOrRemoveClass(styleContext, isSpecial(), name());
|
||||||
addOrRemoveClass(styleContext, isEmpty(), "empty");
|
addOrRemoveClass(styleContext, isEmpty(), "empty");
|
||||||
addOrRemoveClass(styleContext, isPersistent(), "persistent");
|
addOrRemoveClass(styleContext, isPersistent(), "persistent");
|
||||||
addOrRemoveClass(styleContext, isUrgent(), "urgent");
|
addOrRemoveClass(styleContext, isUrgent(), "urgent");
|
||||||
|
|||||||
@@ -366,6 +366,7 @@ void Workspaces::onWorkspaceActivated(std::string const &payload) {
|
|||||||
void Workspaces::onSpecialWorkspaceActivated(std::string const &payload) {
|
void Workspaces::onSpecialWorkspaceActivated(std::string const &payload) {
|
||||||
std::string name(begin(payload), begin(payload) + payload.find_first_of(','));
|
std::string name(begin(payload), begin(payload) + payload.find_first_of(','));
|
||||||
m_activeSpecialWorkspaceName = (!name.starts_with("special:") ? name : name.substr(8));
|
m_activeSpecialWorkspaceName = (!name.starts_with("special:") ? name : name.substr(8));
|
||||||
|
m_ipc.getSocket1JsonReply("reload");
|
||||||
}
|
}
|
||||||
|
|
||||||
void Workspaces::onWorkspaceDestroyed(std::string const &payload) {
|
void Workspaces::onWorkspaceDestroyed(std::string const &payload) {
|
||||||
|
|||||||
Reference in New Issue
Block a user