17f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown/*
24ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown * Copyright (C) 2014 The Android Open Source Project
37f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown *
47f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * Licensed under the Apache License, Version 2.0 (the "License");
57f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * you may not use this file except in compliance with the License.
67f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * You may obtain a copy of the License at
77f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown *
87f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown *      http://www.apache.org/licenses/LICENSE-2.0
97f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown *
107f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * Unless required by applicable law or agreed to in writing, software
117f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * distributed under the License is distributed on an "AS IS" BASIS,
127f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
137f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * See the License for the specific language governing permissions and
147f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown * limitations under the License.
157f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown */
167f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown
174ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brownpackage android.hardware.input;
184ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown
194ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brownimport android.hardware.display.DisplayViewport;
2038f96e5020b3e82b98fe97b0be363a5ad185860fJeff Brownimport android.view.InputEvent;
217f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown
227f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown/**
234ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown * Input manager local system service interface.
244ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown *
254ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown * @hide Only for use within the system server.
267f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown */
274ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brownpublic abstract class InputManagerInternal {
28037c33eae74bee2774897d969d48947f9abe254fJeff Brown    public abstract boolean injectInputEvent(InputEvent event, int displayId, int mode);
29037c33eae74bee2774897d969d48947f9abe254fJeff Brown
304ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown    /**
31037c33eae74bee2774897d969d48947f9abe254fJeff Brown     * Called by the display manager to set information about the displays as needed
32037c33eae74bee2774897d969d48947f9abe254fJeff Brown     * by the input system.  The input system must copy this information to retain it.
334ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown     */
344ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown    public abstract void setDisplayViewports(DisplayViewport defaultViewport,
354ccb823a9f62e57f9d221f83a97e82967e79a9e5Jeff Brown            DisplayViewport externalTouchViewport);
3638f96e5020b3e82b98fe97b0be363a5ad185860fJeff Brown
37037c33eae74bee2774897d969d48947f9abe254fJeff Brown    /**
38037c33eae74bee2774897d969d48947f9abe254fJeff Brown     * Called by the power manager to tell the input manager whether it should start
39037c33eae74bee2774897d969d48947f9abe254fJeff Brown     * watching for wake events.
40037c33eae74bee2774897d969d48947f9abe254fJeff Brown     */
41037c33eae74bee2774897d969d48947f9abe254fJeff Brown    public abstract void setInteractive(boolean interactive);
427f3994ec2a5dce1a037f04714b1f25cab85affb6Jeff Brown}
43