Java Code Examples for android.view.View#getFocusedRect()
The following examples show how to use
android.view.View#getFocusedRect() .
These examples are extracted from open source projects.
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source Project: letv File: HListView.java License: Apache License 2.0 | 6 votes |
private boolean handleHorizontalFocusWithinListItem(int direction) { if (direction == 33 || direction == 130) { int numChildren = getChildCount(); if (this.mItemsCanFocus && numChildren > 0 && this.mSelectedPosition != -1) { View selectedView = getSelectedView(); if (selectedView != null && selectedView.hasFocus() && (selectedView instanceof ViewGroup)) { View currentFocus = selectedView.findFocus(); View nextFocus = FocusFinder.getInstance().findNextFocus((ViewGroup) selectedView, currentFocus, direction); if (nextFocus != null) { currentFocus.getFocusedRect(this.mTempRect); offsetDescendantRectToMyCoords(currentFocus, this.mTempRect); offsetRectIntoDescendantCoords(nextFocus, this.mTempRect); if (nextFocus.requestFocus(direction, this.mTempRect)) { return true; } } View globalNextFocus = FocusFinder.getInstance().findNextFocus((ViewGroup) getRootView(), currentFocus, direction); if (globalNextFocus != null) { return isViewAncestorOf(globalNextFocus, this); } } } return false; } throw new IllegalArgumentException("direction must be one of {View.FOCUS_UP, View.FOCUS_DOWN}"); }
Example 2
Source Project: letv File: AbsHListView.java License: Apache License 2.0 | 5 votes |
public void getFocusedRect(Rect r) { View view = getSelectedView(); if (view == null || view.getParent() != this) { super.getFocusedRect(r); return; } view.getFocusedRect(r); offsetDescendantRectToMyCoords(view, r); }
Example 3
Source Project: recent-images File: TwoWayAbsListView.java License: MIT License | 5 votes |
@Override public void getFocusedRect(Rect r) { View view = getSelectedView(); if (view != null && view.getParent() == this) { // the focused rectangle of the selected view offset into the // coordinate space of this view. view.getFocusedRect(r); offsetDescendantRectToMyCoords(view, r); } else { // otherwise, just the norm super.getFocusedRect(r); } }
Example 4
Source Project: SimplifyReader File: PLAAbsListView.java License: Apache License 2.0 | 5 votes |
@Override public void getFocusedRect(Rect r) { View view = getSelectedView(); if (view != null && view.getParent() == this) { // the focused rectangle of the selected view offset into the // coordinate space of this view. view.getFocusedRect(r); offsetDescendantRectToMyCoords(view, r); } else { // otherwise, just the norm super.getFocusedRect(r); } }
Example 5
Source Project: Lay-s File: PLAAbsListView.java License: MIT License | 5 votes |
@Override public void getFocusedRect(Rect r) { View view = getSelectedView(); if (view != null && view.getParent() == this) { // the focused rectangle of the selected view offset into the // coordinate space of this view. view.getFocusedRect(r); offsetDescendantRectToMyCoords(view, r); } else { // otherwise, just the norm super.getFocusedRect(r); } }
Example 6
Source Project: android-tv-launcher File: FocusedRelativeLayout.java License: MIT License | 5 votes |
public void getFocusedRect(Rect paramRect) { View localView = getSelectedView(); if (localView != null) { localView.getFocusedRect(paramRect); offsetDescendantRectToMyCoords(localView, paramRect); return; } super.getFocusedRect(paramRect); }
Example 7
Source Project: Klyph File: HListView.java License: MIT License | 5 votes |
/** * To avoid horizontal focus searches changing the selected item, we manually focus search within the selected item (as * applicable), and prevent focus from jumping to something within another item. * * @param direction * one of {View.FOCUS_LEFT, View.FOCUS_RIGHT} * @return Whether this consumes the key event. */ private boolean handleHorizontalFocusWithinListItem( int direction ) { // TODO: implement this if ( direction != View.FOCUS_LEFT && direction != View.FOCUS_RIGHT ) { throw new IllegalArgumentException( "direction must be one of" + " {View.FOCUS_LEFT, View.FOCUS_RIGHT}" ); } final int numChildren = getChildCount(); if ( mItemsCanFocus && numChildren > 0 && mSelectedPosition != INVALID_POSITION ) { final View selectedView = getSelectedView(); if ( selectedView != null && selectedView.hasFocus() && selectedView instanceof ViewGroup ) { final View currentFocus = selectedView.findFocus(); final View nextFocus = FocusFinder.getInstance().findNextFocus( (ViewGroup) selectedView, currentFocus, direction ); if ( nextFocus != null ) { // do the math to get interesting rect in next focus' coordinates currentFocus.getFocusedRect( mTempRect ); offsetDescendantRectToMyCoords( currentFocus, mTempRect ); offsetRectIntoDescendantCoords( nextFocus, mTempRect ); if ( nextFocus.requestFocus( direction, mTempRect ) ) { return true; } } // we are blocking the key from being handled (by returning true) // if the global result is going to be some other view within this // list. this is to acheive the overall goal of having // horizontal d-pad navigation remain in the current item. final View globalNextFocus = FocusFinder.getInstance().findNextFocus( (ViewGroup) getRootView(), currentFocus, direction ); if ( globalNextFocus != null ) { return isViewAncestorOf( globalNextFocus, this ); } } } return false; }
Example 8
Source Project: Klyph File: AbsHListView.java License: MIT License | 5 votes |
@Override public void getFocusedRect( Rect r ) { View view = getSelectedView(); if ( view != null && view.getParent() == this ) { // the focused rectangle of the selected view offset into the // coordinate space of this view. view.getFocusedRect( r ); offsetDescendantRectToMyCoords( view, r ); } else { // otherwise, just the norm super.getFocusedRect( r ); } }
Example 9
Source Project: EverMemo File: PLA_AbsListView.java License: MIT License | 5 votes |
@Override public void getFocusedRect(Rect r) { View view = getSelectedView(); if (view != null && view.getParent() == this) { // the focused rectangle of the selected view offset into the // coordinate space of this view. view.getFocusedRect(r); offsetDescendantRectToMyCoords(view, r); } else { // otherwise, just the norm super.getFocusedRect(r); } }
Example 10
Source Project: android_9.0.0_r45 File: ListView.java License: Apache License 2.0 | 4 votes |
/** * To avoid horizontal focus searches changing the selected item, we * manually focus search within the selected item (as applicable), and * prevent focus from jumping to something within another item. * @param direction one of {View.FOCUS_LEFT, View.FOCUS_RIGHT} * @return Whether this consumes the key event. */ private boolean handleHorizontalFocusWithinListItem(int direction) { if (direction != View.FOCUS_LEFT && direction != View.FOCUS_RIGHT) { throw new IllegalArgumentException("direction must be one of" + " {View.FOCUS_LEFT, View.FOCUS_RIGHT}"); } final int numChildren = getChildCount(); if (mItemsCanFocus && numChildren > 0 && mSelectedPosition != INVALID_POSITION) { final View selectedView = getSelectedView(); if (selectedView != null && selectedView.hasFocus() && selectedView instanceof ViewGroup) { final View currentFocus = selectedView.findFocus(); final View nextFocus = FocusFinder.getInstance().findNextFocus( (ViewGroup) selectedView, currentFocus, direction); if (nextFocus != null) { // do the math to get interesting rect in next focus' coordinates Rect focusedRect = mTempRect; if (currentFocus != null) { currentFocus.getFocusedRect(focusedRect); offsetDescendantRectToMyCoords(currentFocus, focusedRect); offsetRectIntoDescendantCoords(nextFocus, focusedRect); } else { focusedRect = null; } if (nextFocus.requestFocus(direction, focusedRect)) { return true; } } // we are blocking the key from being handled (by returning true) // if the global result is going to be some other view within this // list. this is to acheive the overall goal of having // horizontal d-pad navigation remain in the current item. final View globalNextFocus = FocusFinder.getInstance().findNextFocus( (ViewGroup) getRootView(), currentFocus, direction); if (globalNextFocus != null) { return isViewAncestorOf(globalNextFocus, this); } } } return false; }
Example 11
Source Project: Android-Application-ZJB File: ViewLayoutUtil.java License: Apache License 2.0 | 4 votes |
public static boolean isMotionFocusOnView(View view, MotionEvent event) { Rect focusBound = new Rect(); view.getFocusedRect(focusBound); return focusBound.contains((int) event.getX(), (int) event.getY()); }