Skip to content

Commit b5ea14c

Browse files
committed
revert: release event
1 parent 5b33a59 commit b5ea14c

File tree

2 files changed

+12
-15
lines changed

2 files changed

+12
-15
lines changed

Diff for: include/AModule.hpp

-5
Original file line numberDiff line numberDiff line change
@@ -44,23 +44,18 @@ class AModule : public IModule {
4444
std::map<std::string, std::string> eventActionMap_;
4545
static const inline std::map<std::pair<uint, GdkEventType>, std::string> eventMap_{
4646
{std::make_pair(1, GdkEventType::GDK_BUTTON_PRESS), "on-click"},
47-
{std::make_pair(1, GdkEventType::GDK_BUTTON_RELEASE), "on-click-release"},
4847
{std::make_pair(1, GdkEventType::GDK_2BUTTON_PRESS), "on-double-click"},
4948
{std::make_pair(1, GdkEventType::GDK_3BUTTON_PRESS), "on-triple-click"},
5049
{std::make_pair(2, GdkEventType::GDK_BUTTON_PRESS), "on-click-middle"},
51-
{std::make_pair(2, GdkEventType::GDK_BUTTON_RELEASE), "on-click-middle-release"},
5250
{std::make_pair(2, GdkEventType::GDK_2BUTTON_PRESS), "on-double-click-middle"},
5351
{std::make_pair(2, GdkEventType::GDK_3BUTTON_PRESS), "on-triple-click-middle"},
5452
{std::make_pair(3, GdkEventType::GDK_BUTTON_PRESS), "on-click-right"},
55-
{std::make_pair(3, GdkEventType::GDK_BUTTON_RELEASE), "on-click-right-release"},
5653
{std::make_pair(3, GdkEventType::GDK_2BUTTON_PRESS), "on-double-click-right"},
5754
{std::make_pair(3, GdkEventType::GDK_3BUTTON_PRESS), "on-triple-click-right"},
5855
{std::make_pair(8, GdkEventType::GDK_BUTTON_PRESS), "on-click-backward"},
59-
{std::make_pair(8, GdkEventType::GDK_BUTTON_RELEASE), "on-click-backward-release"},
6056
{std::make_pair(8, GdkEventType::GDK_2BUTTON_PRESS), "on-double-click-backward"},
6157
{std::make_pair(8, GdkEventType::GDK_3BUTTON_PRESS), "on-triple-click-backward"},
6258
{std::make_pair(9, GdkEventType::GDK_BUTTON_PRESS), "on-click-forward"},
63-
{std::make_pair(9, GdkEventType::GDK_BUTTON_RELEASE), "on-click-forward-release"},
6459
{std::make_pair(9, GdkEventType::GDK_2BUTTON_PRESS), "on-double-click-forward"},
6560
{std::make_pair(9, GdkEventType::GDK_3BUTTON_PRESS), "on-triple-click-forward"}};
6661
};

Diff for: src/AModule.cpp

+12-10
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,20 @@ AModule::AModule(const Json::Value& config, const std::string& name, const std::
2727
}
2828

2929
// configure events' user commands
30-
31-
bool hasEvent =
32-
std::find_if(eventMap_.cbegin(), eventMap_.cend(), [&config](const auto& eventEntry) {
33-
return config[eventEntry.second].isString();
34-
}) != eventMap_.cend();
35-
36-
if (enable_click || hasEvent) {
30+
if (enable_click) {
3731
event_box_.add_events(Gdk::BUTTON_PRESS_MASK);
3832
event_box_.signal_button_press_event().connect(sigc::mem_fun(*this, &AModule::handleToggle));
39-
// register key release
40-
event_box_.add_events(Gdk::BUTTON_RELEASE_MASK);
41-
event_box_.signal_button_release_event().connect(sigc::mem_fun(*this, &AModule::handleToggle));
33+
} else {
34+
std::map<std::pair<uint, GdkEventType>, std::string>::const_iterator it{eventMap_.cbegin()};
35+
while (it != eventMap_.cend()) {
36+
if (config_[it->second].isString()) {
37+
event_box_.add_events(Gdk::BUTTON_PRESS_MASK);
38+
event_box_.signal_button_press_event().connect(
39+
sigc::mem_fun(*this, &AModule::handleToggle));
40+
break;
41+
}
42+
++it;
43+
}
4244
}
4345
if (config_["on-scroll-up"].isString() || config_["on-scroll-down"].isString() || enable_scroll) {
4446
event_box_.add_events(Gdk::SCROLL_MASK | Gdk::SMOOTH_SCROLL_MASK);

0 commit comments

Comments
 (0)