Skip to content

Commit

Permalink
optimize icon acquisition logic to prepare for customizing icons for …
Browse files Browse the repository at this point in the history
…other desktop environments in the future
  • Loading branch information
hantengc committed Sep 20, 2024
1 parent 9ab829b commit 6785ead
Showing 1 changed file with 12 additions and 8 deletions.
20 changes: 12 additions & 8 deletions src/modules/notificationitem/notificationitem.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -53,20 +53,24 @@ class StatusNotifierItem : public dbus::ObjectVTable<StatusNotifierItem> {
}
void activate(int, int) { parent_->instance()->toggle(); }
void secondaryActivate(int, int) {}
std::string iconName() {
static bool preferSymbolic = !isKDE();
std::string icon;
if (preferSymbolic) {
icon = "input-keyboard-symbolic";
std::string customIconForDesktop() const {
if (isKDE()) {
return "input-keyboard";
} else {
icon = "input-keyboard";
return "input-keyboard-symbolic";
}
}
std::string iconName() {
std::string icon;

if (auto *ic = parent_->menu()->lastRelevantIc()) {
icon = parent_->instance()->inputMethodIcon(ic);
}
if (icon == "input-keyboard" && preferSymbolic) {
return "input-keyboard-symbolic";

if (icon.empty() || icon == "input-keyboard") {
icon = customIconForDesktop();
}

return IconTheme::iconName(icon);
}

Expand Down

0 comments on commit 6785ead

Please sign in to comment.