Search in sources :

Example 6 with InputApplicationHandle

use of com.android.server.input.InputApplicationHandle in project android_frameworks_base by ResurrectionRemix.

the class InputMonitor method setFocusedAppLw.

public void setFocusedAppLw(AppWindowToken newApp) {
    // Focused app has changed.
    if (newApp == null) {
        mService.mInputManager.setFocusedApplication(null);
    } else {
        final InputApplicationHandle handle = newApp.mInputApplicationHandle;
        handle.name = newApp.toString();
        handle.dispatchingTimeoutNanos = newApp.inputDispatchingTimeoutNanos;
        mService.mInputManager.setFocusedApplication(handle);
    }
}
Also used : InputApplicationHandle(com.android.server.input.InputApplicationHandle)

Example 7 with InputApplicationHandle

use of com.android.server.input.InputApplicationHandle in project android_frameworks_base by ResurrectionRemix.

the class DragState method register.

/**
     * @param display The Display that the window being dragged is on.
     */
void register(Display display) {
    if (DEBUG_DRAG)
        Slog.d(TAG_WM, "registering drag input channel");
    if (mClientChannel != null) {
        Slog.e(TAG_WM, "Duplicate register of drag input channel");
    } else {
        mDisplayContent = mService.getDisplayContentLocked(display.getDisplayId());
        InputChannel[] channels = InputChannel.openInputChannelPair("drag");
        mServerChannel = channels[0];
        mClientChannel = channels[1];
        mService.mInputManager.registerInputChannel(mServerChannel, null);
        mInputEventReceiver = mService.new DragInputEventReceiver(mClientChannel, mService.mH.getLooper());
        mDragApplicationHandle = new InputApplicationHandle(null);
        mDragApplicationHandle.name = "drag";
        mDragApplicationHandle.dispatchingTimeoutNanos = WindowManagerService.DEFAULT_INPUT_DISPATCHING_TIMEOUT_NANOS;
        mDragWindowHandle = new InputWindowHandle(mDragApplicationHandle, null, display.getDisplayId());
        mDragWindowHandle.name = "drag";
        mDragWindowHandle.inputChannel = mServerChannel;
        mDragWindowHandle.layer = getDragLayerLw();
        mDragWindowHandle.layoutParamsFlags = 0;
        mDragWindowHandle.layoutParamsType = WindowManager.LayoutParams.TYPE_DRAG;
        mDragWindowHandle.dispatchingTimeoutNanos = WindowManagerService.DEFAULT_INPUT_DISPATCHING_TIMEOUT_NANOS;
        mDragWindowHandle.visible = true;
        mDragWindowHandle.canReceiveKeys = false;
        mDragWindowHandle.hasFocus = true;
        mDragWindowHandle.hasWallpaper = false;
        mDragWindowHandle.paused = false;
        mDragWindowHandle.ownerPid = Process.myPid();
        mDragWindowHandle.ownerUid = Process.myUid();
        mDragWindowHandle.inputFeatures = 0;
        mDragWindowHandle.scaleFactor = 1.0f;
        // The drag window cannot receive new touches.
        mDragWindowHandle.touchableRegion.setEmpty();
        // The drag window covers the entire display
        mDragWindowHandle.frameLeft = 0;
        mDragWindowHandle.frameTop = 0;
        Point p = new Point();
        display.getRealSize(p);
        mDragWindowHandle.frameRight = p.x;
        mDragWindowHandle.frameBottom = p.y;
        // Pause rotations before a drag.
        if (DEBUG_ORIENTATION) {
            Slog.d(TAG_WM, "Pausing rotation during drag");
        }
        mService.pauseRotationLocked();
    }
}
Also used : InputApplicationHandle(com.android.server.input.InputApplicationHandle) DragInputEventReceiver(com.android.server.wm.WindowManagerService.DragInputEventReceiver) InputChannel(android.view.InputChannel) Point(android.graphics.Point) InputWindowHandle(com.android.server.input.InputWindowHandle)

Example 8 with InputApplicationHandle

use of com.android.server.input.InputApplicationHandle in project android_frameworks_base by crdroidandroid.

the class InputMonitor method setFocusedAppLw.

public void setFocusedAppLw(AppWindowToken newApp) {
    // Focused app has changed.
    if (newApp == null) {
        mService.mInputManager.setFocusedApplication(null);
    } else {
        final InputApplicationHandle handle = newApp.mInputApplicationHandle;
        handle.name = newApp.toString();
        handle.dispatchingTimeoutNanos = newApp.inputDispatchingTimeoutNanos;
        mService.mInputManager.setFocusedApplication(handle);
    }
}
Also used : InputApplicationHandle(com.android.server.input.InputApplicationHandle)

Example 9 with InputApplicationHandle

use of com.android.server.input.InputApplicationHandle in project platform_frameworks_base by android.

the class DragState method register.

/**
     * @param display The Display that the window being dragged is on.
     */
void register(Display display) {
    if (DEBUG_DRAG)
        Slog.d(TAG_WM, "registering drag input channel");
    if (mClientChannel != null) {
        Slog.e(TAG_WM, "Duplicate register of drag input channel");
    } else {
        mDisplayContent = mService.getDisplayContentLocked(display.getDisplayId());
        InputChannel[] channels = InputChannel.openInputChannelPair("drag");
        mServerChannel = channels[0];
        mClientChannel = channels[1];
        mService.mInputManager.registerInputChannel(mServerChannel, null);
        mInputEventReceiver = mService.new DragInputEventReceiver(mClientChannel, mService.mH.getLooper());
        mDragApplicationHandle = new InputApplicationHandle(null);
        mDragApplicationHandle.name = "drag";
        mDragApplicationHandle.dispatchingTimeoutNanos = WindowManagerService.DEFAULT_INPUT_DISPATCHING_TIMEOUT_NANOS;
        mDragWindowHandle = new InputWindowHandle(mDragApplicationHandle, null, display.getDisplayId());
        mDragWindowHandle.name = "drag";
        mDragWindowHandle.inputChannel = mServerChannel;
        mDragWindowHandle.layer = getDragLayerLw();
        mDragWindowHandle.layoutParamsFlags = 0;
        mDragWindowHandle.layoutParamsType = WindowManager.LayoutParams.TYPE_DRAG;
        mDragWindowHandle.dispatchingTimeoutNanos = WindowManagerService.DEFAULT_INPUT_DISPATCHING_TIMEOUT_NANOS;
        mDragWindowHandle.visible = true;
        mDragWindowHandle.canReceiveKeys = false;
        mDragWindowHandle.hasFocus = true;
        mDragWindowHandle.hasWallpaper = false;
        mDragWindowHandle.paused = false;
        mDragWindowHandle.ownerPid = Process.myPid();
        mDragWindowHandle.ownerUid = Process.myUid();
        mDragWindowHandle.inputFeatures = 0;
        mDragWindowHandle.scaleFactor = 1.0f;
        // The drag window cannot receive new touches.
        mDragWindowHandle.touchableRegion.setEmpty();
        // The drag window covers the entire display
        mDragWindowHandle.frameLeft = 0;
        mDragWindowHandle.frameTop = 0;
        Point p = new Point();
        display.getRealSize(p);
        mDragWindowHandle.frameRight = p.x;
        mDragWindowHandle.frameBottom = p.y;
        // Pause rotations before a drag.
        if (DEBUG_ORIENTATION) {
            Slog.d(TAG_WM, "Pausing rotation during drag");
        }
        mService.pauseRotationLocked();
    }
}
Also used : InputApplicationHandle(com.android.server.input.InputApplicationHandle) DragInputEventReceiver(com.android.server.wm.WindowManagerService.DragInputEventReceiver) InputChannel(android.view.InputChannel) Point(android.graphics.Point) InputWindowHandle(com.android.server.input.InputWindowHandle)

Example 10 with InputApplicationHandle

use of com.android.server.input.InputApplicationHandle in project android_frameworks_base by ParanoidAndroid.

the class InputMonitor method setFocusedAppLw.

public void setFocusedAppLw(AppWindowToken newApp) {
    // Focused app has changed.
    if (newApp == null) {
        mService.mInputManager.setFocusedApplication(null);
    } else {
        final InputApplicationHandle handle = newApp.mInputApplicationHandle;
        handle.name = newApp.toString();
        handle.dispatchingTimeoutNanos = newApp.inputDispatchingTimeoutNanos;
        mService.mInputManager.setFocusedApplication(handle);
    }
}
Also used : InputApplicationHandle(com.android.server.input.InputApplicationHandle)

Aggregations

InputApplicationHandle (com.android.server.input.InputApplicationHandle)14 Point (android.graphics.Point)9 InputChannel (android.view.InputChannel)9 InputWindowHandle (com.android.server.input.InputWindowHandle)9 DragInputEventReceiver (com.android.server.wm.WindowManagerService.DragInputEventReceiver)5