Author Topic: Touch-friendly ML menu  (Read 1810 times)

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 9913
  • 5D Mark Free
Touch-friendly ML menu
« on: January 06, 2017, 07:02:44 PM »
Some experiments I did last summer on a 700D (which I no longer have).

I remember it worked to some extent, but had some quirks. Don't remember the exact details, but I hope it could be useful (or at least fun to tinker with).

http://bitbucket.org/hudson/magic-lantern/commits/branch/touch-menu

dfort

  • Hero Member
  • *****
  • Posts: 1639
Re: Touch-friendly ML menu
« Reply #1 on: January 06, 2017, 10:03:50 PM »
Compiles fine on the 700D but not on the EOSM:

Code: [Select]
[ CC       ]   menu.o
../../src/menu.c: In function 'handle_ml_menu_touch':
../../src/menu.c:598:14: error: 'BGMT_DRAG_1_FINGER' undeclared (first use in this function)
         case BGMT_DRAG_1_FINGER:
              ^
../../src/menu.c:598:14: note: each undeclared identifier is reported only once for each function it appears in
../../src/menu.c: In function 'handle_ml_menu_keys':
../../src/menu.c:4901:10: error: 'BGMT_DRAG_1_FINGER' undeclared (first use in this function)
     case BGMT_DRAG_1_FINGER:
          ^
make: *** [menu.o] Error 1
EOSM.202 EOSM.203 EOSM2.103 700D.115 5D3.*

dfort

  • Hero Member
  • *****
  • Posts: 1639
Re: Touch-friendly ML menu
« Reply #2 on: January 06, 2017, 11:52:49 PM »
Note to self: Look at the code before compiling.

In any case, gave EOSM the finger and it works now. Pull request in progress.
EOSM.202 EOSM.203 EOSM2.103 700D.115 5D3.*

DeafEyeJedi

  • Hero Member
  • *****
  • Posts: 2904
  • 5D3 / M1 / 7D / 70D / SL1
Re: Touch-friendly ML menu
« Reply #3 on: January 07, 2017, 03:54:35 PM »
...gave EOSM the finger and it works now. Pull request in progress.

That's great news actually, Dan!
5D3.113 • 5D3.123 • EOSM.203 • 7D.203 • 70D.112 • 100D.101

garry23

  • Hero Member
  • *****
  • Posts: 1216
Re: Touch-friendly ML menu
« Reply #4 on: January 07, 2017, 04:45:24 PM »
Dan/All

As we 'fix' various things on the EOSM, would it be possible to put all fixes in one experimental EOSM build, that we can all access at the same time, ie in the experimental download area?

Just a thought ;)

Cheers

Garry

Licaon_Kter

  • Senior
  • ****
  • Posts: 498
  • M
Re: Touch-friendly ML menu
« Reply #5 on: January 07, 2017, 05:33:46 PM »
Drag the finger... hmmm

dfort

  • Hero Member
  • *****
  • Posts: 1639
Re: Touch-friendly ML menu
« Reply #6 on: January 07, 2017, 07:01:15 PM »
As we 'fix' various things on the EOSM, would it be possible to put all fixes in one experimental EOSM build, that we can all access at the same time, ie in the experimental download area?

You mean like roll in all the latest stuff like crop_rec, 10bit/12bit, manual_lens_info, dm_spy, touch-menu, serialflash, compressed_raw and EOSM.203 into one mega merge and put it on the experiments page? Those builds are done automatically on a Jenkins system. I'm not sure if it can merge branches automatically but my experience is that many of these experimental branches require resolving merging conflicts.

My suggestion is to learn the basics of compiling, there are several tutorials in the General Development Discussion section.

You are already doing some advanced lua coding. Setting up a development environment should be relatively simple for you.

I'll still make special builds on request if I have the time and interest to do it.
EOSM.202 EOSM.203 EOSM2.103 700D.115 5D3.*

garry23

  • Hero Member
  • *****
  • Posts: 1216
Re: Touch-friendly ML menu
« Reply #7 on: January 07, 2017, 07:04:43 PM »
@dfort

Thanks  :)

Cheers

Garry

Licaon_Kter

  • Senior
  • ****
  • Posts: 498
  • M
Re: Touch-friendly ML menu
« Reply #8 on: January 08, 2017, 03:55:35 PM »
Would this help for Autoexpo ( http://www.magiclantern.fm/forum/index.php?topic=7208.250 ) ?
Right now on EOS M we don't have enough hardware buttons to actually use it.

dfort

  • Hero Member
  • *****
  • Posts: 1639
Re: Touch-friendly ML menu
« Reply #9 on: January 12, 2017, 03:57:14 AM »
I was playing around with this on the EOSM and got into a problem getting into submenus because we don't have a Q button. Is it remapped to another button? The "normal" one finger tap just toggles the menu item on/off and doesn't go into the submenu.
EOSM.202 EOSM.203 EOSM2.103 700D.115 5D3.*

DeafEyeJedi

  • Hero Member
  • *****
  • Posts: 2904
  • 5D3 / M1 / 7D / 70D / SL1
Touch-friendly ML menu
« Reply #10 on: January 12, 2017, 06:28:40 AM »
This has been the norm (quite not cumbersome tho) for years and yet I thought if you once disable the "back focus button" set-up within Canon's custom menu for those that enjoy this type of photo work (at least I do) and the other work around for me was to go into the last page of ML menu (on far right) and basically scroll through the options from each selected module(s) or thought so?

Don't have the M with me at the moment but I am throwing all of this from the top of my head.
5D3.113 • 5D3.123 • EOSM.203 • 7D.203 • 70D.112 • 100D.101

garry23

  • Hero Member
  • *****
  • Posts: 1216
Re: Touch-friendly ML menu
« Reply #11 on: January 12, 2017, 08:18:37 AM »
@[email protected]

Which is why I added a dedicated [Q] simulation to my Toggler script  ;) https://gist.github.com/pigeonhill/156ea0e55cd0a029bc447f8bf5593224

Also, here is 'just' the [Q] sim: https://gist.github.com/pigeonhill/488d28d40da266a5b634bb35b23339a0 - once again thanks to A1ex for educating me  :)

Also, although the EOSM has the touch UI, if you are wearing gloves or simply don't/can't use the touch, having remapped button functionality that dynamically changes according to your camera's state, eg Toggler, could be a boon. As you can see from my Toggler script's ML states, I can change the EOSM ML states very quickly and reliably, with on-screen feedback  :)

a1ex

  • Administrator
  • Hero Member
  • *****
  • Posts: 9913
  • 5D Mark Free
Re: Touch-friendly ML menu
« Reply #12 on: January 12, 2017, 11:45:27 AM »
I was playing around with this on the EOSM and got into a problem getting into submenus because we don't have a Q button.

Ideas:

- long press (see TOUCH_ENTRY_LONG_CLICK in the code, not yet functional)
- register a touch zone at the right side of a menu entry

garry23

  • Hero Member
  • *****
  • Posts: 1216
Re: Touch-friendly ML menu
« Reply #13 on: January 12, 2017, 01:59:44 PM »
An additional idea (most probably beyond the time available to develop): build into the touch-Lua, the ability to create 'several' touch-zones, say, 4 on the left and 4 on the right, eg zone_L1, zone_L2, zone_R1 etc.

These zones to be able to sense long press would be great as well.

These zones to be configurable in Lua, eg like the current menu get/set arrangement.

Such zones would have some UI control, eg colour and text.

Such an enhancement of the touch UI would, I believe, really add to the touch cameras interactivity, especially the button poor EOSM.

Just some thinking.

Cheers

Garry

dfort

  • Hero Member
  • *****
  • Posts: 1639
Re: Touch-friendly ML menu
« Reply #14 on: January 13, 2017, 01:47:04 AM »
Ideas:

- long press (see TOUCH_ENTRY_LONG_CLICK in the code, not yet functional)
- register a touch zone at the right side of a menu entry

The Q is always on the right side of the menu so that seems to be the most intuitive.
EOSM.202 EOSM.203 EOSM2.103 700D.115 5D3.*

DeafEyeJedi

  • Hero Member
  • *****
  • Posts: 2904
  • 5D3 / M1 / 7D / 70D / SL1
Re: Touch-friendly ML menu
« Reply #15 on: January 13, 2017, 05:01:12 AM »
The Q is always on the right side of the menu so that seems to be the most intuitive.

+1
5D3.113 • 5D3.123 • EOSM.203 • 7D.203 • 70D.112 • 100D.101