1b50b5cbfbc0a67db6fc43373363b10381c9c61a3Angus Kongpackage com.android.camera.util; 2d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang 3d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Changimport android.graphics.Matrix; 4d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Changimport android.view.MotionEvent; 5d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang 6d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Changpublic final class MotionEventHelper { 7d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang private MotionEventHelper() {} 8d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang 9d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang public static MotionEvent transformEvent(MotionEvent e, Matrix m) { 10d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang // We try to use the new transform method if possible because it uses 11d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang // less memory. 12638e6f06c877d90b907f66ea9c22b3c6b73c7384Sascha Haeberling return transformEventNew(e, m); 13d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang } 14d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang 15d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang private static MotionEvent transformEventNew(MotionEvent e, Matrix m) { 16e89a4e7d2808b44b2da6827d13d6da6ce0998896Wu-cheng Li MotionEvent newEvent = MotionEvent.obtain(e); 17e89a4e7d2808b44b2da6827d13d6da6ce0998896Wu-cheng Li newEvent.transform(m); 18e89a4e7d2808b44b2da6827d13d6da6ce0998896Wu-cheng Li return newEvent; 19d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang } 20d1975270b68e8b2513bdcf78b4451ddcbd3964fdAhbong Chang} 21