diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2015-08-19 19:09:54 -0300 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2015-08-19 19:09:54 -0300 |
commit | 78be8201dc86c4d57226d845f04ac496cd64d9b6 (patch) | |
tree | 5ecabb1ad2e8b57452179eb35273dd1062ebf149 /ScreenManager.c | |
parent | b003636958377ecad3ee5df4ca2de8717c4530b9 (diff) |
Add expand/collapse on additional clicks!
Diffstat (limited to 'ScreenManager.c')
-rw-r--r-- | ScreenManager.c | 6 |
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; } } |