@a1ex: I've been trying to modify handle_zoom_overlay() to show the zoom overlay only while half pressed; unfortunately without success... It works if I press and then release half shutter (so it shows up and the disappears), but if I take a shot it remains on screen. This is what I've tried in handle_zoom_overlay(...) in zebra.c.
if(get_zoom_overlay_trigger_by_halfshutter()) {
//make sure zoom overlay is not shown and show it
if (!is_zoom_overlay_triggered_by_zoom_btn() && event->param == BGMT_PRESS_HALFSHUTTER)
zoom_overlay_toggle();
//make sure it is shown and hide it
else if(is_zoom_overlay_triggered_by_zoom_btn() && !get_halfshutter_pressed())
//else if (is_zoom_overlay_triggered_by_zoom_btn() && event->param == BGMT_UNPRESS_HALFSHUTTER)
zoom_overlay_toggle();
}
What am I doing wrong ?
Btw. EOSM (apparently) falls under the #ifdef CONFIG_ZOOM_BTN_NOT_WORKING_WHILE_RECORDING ... #endif branch so I'm basically trying there to replace
if (event->param == BGMT_PRESS_HALFSHUTTER && get_zoom_overlay_trigger_by_halfshutter())
zoom_overlay_toggle();
by the above.
if(get_zoom_overlay_trigger_by_halfshutter()) {
//make sure zoom overlay is not shown and show it
if (!is_zoom_overlay_triggered_by_zoom_btn() && event->param == BGMT_PRESS_HALFSHUTTER)
zoom_overlay_toggle();
//make sure it is shown and hide it
else if(is_zoom_overlay_triggered_by_zoom_btn() && !get_halfshutter_pressed())
//else if (is_zoom_overlay_triggered_by_zoom_btn() && event->param == BGMT_UNPRESS_HALFSHUTTER)
zoom_overlay_toggle();
}
What am I doing wrong ?
Btw. EOSM (apparently) falls under the #ifdef CONFIG_ZOOM_BTN_NOT_WORKING_WHILE_RECORDING ... #endif branch so I'm basically trying there to replace
if (event->param == BGMT_PRESS_HALFSHUTTER && get_zoom_overlay_trigger_by_halfshutter())
zoom_overlay_toggle();
by the above.