summaryrefslogtreecommitdiffstats
path: root/ScreenManager.c
diff options
context:
space:
mode:
authorHisham Muhammad <hisham@gobolinux.org>2015-08-19 19:09:54 -0300
committerHisham Muhammad <hisham@gobolinux.org>2015-08-19 19:09:54 -0300
commit78be8201dc86c4d57226d845f04ac496cd64d9b6 (patch)
tree5ecabb1ad2e8b57452179eb35273dd1062ebf149 /ScreenManager.c
parentb003636958377ecad3ee5df4ca2de8717c4530b9 (diff)
Add expand/collapse on additional clicks!
Diffstat (limited to 'ScreenManager.c')
-rw-r--r--ScreenManager.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ScreenManager.c b/ScreenManager.c
index 657065c6..df7431fd 100644
--- a/ScreenManager.c
+++ b/ScreenManager.c
@@ -208,12 +208,16 @@ void ScreenManager_run(ScreenManager* this, Panel** lastFocus, int* lastKey) {
ch = EVENT_HEADER_CLICK(mevent.x - panel->x);
break;
} else if (mevent.y > panel->y && mevent.y <= panel->y+panel->h) {
+ ch = KEY_MOUSE;
if (panel == panelFocus || this->allowFocusChange) {
focus = i;
panelFocus = setCurrentPanel(panel);
+ Object* oldSelection = Panel_getSelected(panel);
Panel_setSelected(panel, mevent.y - panel->y + panel->scrollV - 1);
+ if (Panel_getSelected(panel) == oldSelection) {
+ ch = KEY_RECLICK;
+ }
}
- ch = KEY_MOUSE;
break;
}
}

© 2014-2024 Faster IT GmbH | imprint | privacy policy