1. Index: apps/action.h
  2. ===================================================================
  3. --- apps/action.h (revision 29042)
  4. +++ apps/action.h (working copy)
  5. @@ -246,6 +246,7 @@
  6. * being used, but are nice additions if the touchscreen is used */
  7. ACTION_TOUCH_SHUFFLE,
  8. ACTION_TOUCH_REPMODE,
  9. + ACTION_TOUCH_MUTE,
  10. #endif
  11.  
  12. /* USB HID codes */
  13. Index: apps/gui/skin_engine/skin_parser.c
  14. ===================================================================
  15. --- apps/gui/skin_engine/skin_parser.c (revision 29042)
  16. +++ apps/gui/skin_engine/skin_parser.c (working copy)
  17. @@ -876,6 +876,7 @@
  18. { "resumeplayback", ACTION_TREE_WPS}, /* returns to previous music, WPS/FM */
  19. /* not really WPS specific, but no equivilant ACTION_STD_* */
  20. {"voldown", ACTION_WPS_VOLDOWN}, {"volup", ACTION_WPS_VOLUP},
  21. + {"mute", ACTION_TOUCH_MUTE },
  22.  
  23. /* generic settings changers */
  24. {"setting_inc", ACTION_SETTINGS_INC}, {"setting_dec", ACTION_SETTINGS_DEC},
  25. Index: apps/gui/wps.c
  26. ===================================================================
  27. --- apps/gui/wps.c (revision 29042)
  28. +++ apps/gui/wps.c (working copy)
  29. @@ -246,6 +246,16 @@
  30. option_select_next_val(setting, button == ACTION_SETTINGS_DEC, true);
  31. }
  32. return ACTION_REDRAW;
  33. + case ACTION_TOUCH_MUTE:
  34. + {
  35. + const int min_vol = sound_min(SOUND_VOLUME);
  36. + if (global_settings.volume == min_vol)
  37. + global_settings.volume = (intptr_t)region->extradata;
  38. + else
  39. + global_settings.volume = (intptr_t)region->extradata = min_vol;
  40. + setvol();
  41. + }
  42. + return ACTION_REDRAW;
  43. }
  44. return button;
  45. }