127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel/*
227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * Copyright (C) 2010 The Android Open Source Project
327b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel *
427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * Licensed under the Apache License, Version 2.0 (the "License");
527b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * you may not use this file except in compliance with the License.
627b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * You may obtain a copy of the License at
727b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel *
827b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel *      http://www.apache.org/licenses/LICENSE-2.0
927b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel *
1027b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * Unless required by applicable law or agreed to in writing, software
1127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * distributed under the License is distributed on an "AS IS" BASIS,
1227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1327b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * See the License for the specific language governing permissions and
1427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * limitations under the License.
1527b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel */
1627b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel
1727b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamelpackage android.app;
1827b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel
1927b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel/**
2027b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * Interface used to control special UI modes.
2127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel * @hide
2227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel */
2327b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamelinterface IUiModeManager {
2427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    /**
2527b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * Enables the car mode. Only the system can do this.
2627b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * @hide
2727b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     */
28f5c5d22c471f399f215662a8e471bf02b5b6bcfaDianne Hackborn    void enableCarMode(int flags);
2927b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel
3027b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    /**
3127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * Disables the car mode.
3227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     */
33d49258fed489bcd72a2b2a6ce3a3c38d4b2531e6Dianne Hackborn    void disableCarMode(int flags);
3427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel
3527b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    /**
367299c41630935a2b106e73e5603579a7747f7535Dianne Hackborn     * Return the current running mode.
377299c41630935a2b106e73e5603579a7747f7535Dianne Hackborn     */
387299c41630935a2b106e73e5603579a7747f7535Dianne Hackborn    int getCurrentModeType();
397299c41630935a2b106e73e5603579a7747f7535Dianne Hackborn
407299c41630935a2b106e73e5603579a7747f7535Dianne Hackborn    /**
4127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * Sets the night mode.
4227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * The mode can be one of:
4327b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     *   1 - notnight mode
4427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     *   2 - night mode
4527b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     *   3 - automatic mode switching
4627b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     */
4727b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    void setNightMode(int mode);
4827b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel
4927b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    /**
5027b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * Gets the currently configured night mode.  Return 1 for notnight,
5127b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     * 2 for night, and 3 for automatic mode switching.
5227b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel     */
5327b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel    int getNightMode();
5427b28b3f62bd3b54fa13acd5d035940b9be464f3Tobias Haamel}
55