Fix wrong pattern count in keyguard pattern security view.
This fixes a bug introduced in I085c5ec8 where keyguard attempts to emulate slippery windows with views. In order to do so, the code was overloading dispatchTouchEvent(). It would allow the super (a ViewGroup) to dispatch the events and then would dispatch them itself to sub views. In the case where an event overlaps an actual child view, it would result in 2 copies of the event per window layer (there are 2). This results in 2 events per layer for the top two views in the hierarchy. So each actual pattern attempt would count as 4 attempts to the system. The solution is to overload onTouchEvent() at each level in the view hierarchy, which means that we ignore events that were already handled by a child window of the parent. This change also disables slippery windows for keyguard because it causes vertical patterns to be ignored. Fixes bug 7191277 Change-Id: I4df217f2bf382134d93113b8d55b0d71e0e23677
Loading
Please register or sign in to comment