tree ffef399c08cc65408e31acc80c8f5dcbe0a1b2dc
parent 2d9063bc705aae7ef4cc90206ece03d4caeefba7
author Svetoslav Ganov <svetoslavganov@google.com> 1345093980 -0700
committer Svetoslav Ganov <svetoslavganov@google.com> 1345093983 -0700

Allow enabled accessibility service to toggle tocuh exploration after an upgrade to JellyBean.

1. Before JellyBean touch exploration was a global setting controlled by the user via
   the UI. However, if the enabled accessibility services do not handle touch exploration
   mode, enabling it makes no sense. Therefore, in JellyBean the services request touch
   exploration mode and the user is presented with a dialog to allow that and if she
   does we store that in the database.

   As a result of the above change a user that has enabled  accessibility, touch
   exploration, and some accessibility services running a pre-JellyBean system
   version may lose touch exploration state, thus rendering the device useless unless
   sighted help is provided, since the enabled service(s) are not in the list of
   services to which the user granted a permission to put the device in touch explore
   mode.

   The fix is during a database upgrade to allow allow all enabled accessibility
   services to toggle touch exploration provided accessibility and touch exploration
   are enabled and no services can toggle touch exploration. Note that the user has
   already manually enabled the services and touch exploration which means the she
   has given consent to have these services work in touch exploration mode

bug:6996354

Change-Id: I0af2dc578cc4fbcc90043341035163b876978ab2
