Получается, он создает прямоугольник по глобальным координатам поля edittext, далее мы отслеживаем событие MotionEvent.ACTION_DOWN (короткое нажатие) и если координаты не совпадают с нашим полем, то убираем клавиатуру и делаем еще то, что нам нужно. так?