From 94c98c0ed5db12cedcd3f48f63708b76e5fb1398 Mon Sep 17 00:00:00 2001 From: Joe Onorato Date: Mon, 12 Apr 2010 09:03:27 -0700 Subject: [PATCH] PhoneStatusBarService Change-Id: I8c71f827f6cfb4f5dd5f13891c54fcd1f9680a46 --- packages/StatusBarPhone/AndroidManifest.xml | 2 +- .../phone/PhoneStatusBarService.java | 58 +++++++++++++++++++ .../statusbar/phone/StatusBarService.java | 27 ++------- 3 files changed, 64 insertions(+), 23 deletions(-) create mode 100644 packages/StatusBarPhone/src/com/android/policy/statusbar/phone/PhoneStatusBarService.java diff --git a/packages/StatusBarPhone/AndroidManifest.xml b/packages/StatusBarPhone/AndroidManifest.xml index 7aa558e55cab1..f3643a3b2586e 100644 --- a/packages/StatusBarPhone/AndroidManifest.xml +++ b/packages/StatusBarPhone/AndroidManifest.xml @@ -15,7 +15,7 @@ diff --git a/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/PhoneStatusBarService.java b/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/PhoneStatusBarService.java new file mode 100644 index 0000000000000..b9b38db6a30b7 --- /dev/null +++ b/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/PhoneStatusBarService.java @@ -0,0 +1,58 @@ +/* + * Copyright (C) 2010 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.policy.statusbar.phone; + +import android.app.Service; +import android.app.IStatusBar; +import android.app.IStatusBarService; +import android.content.Context; +import android.content.Intent; +import android.graphics.PixelFormat; +import android.os.IBinder; +import android.os.RemoteException; +import android.os.ServiceManager; +import android.os.SystemClock; +import android.util.Log; +import android.view.Gravity; +import android.view.View; +import android.view.ViewGroup; +import android.view.Window; +import android.view.WindowManager; +import android.view.WindowManagerImpl; + +public class PhoneStatusBarService extends StatusBarService { + + @Override + protected void addStatusBarView() { + final View view = new View(this); + + // TODO final StatusBarView view = mStatusBarView; + WindowManager.LayoutParams lp = new WindowManager.LayoutParams( + ViewGroup.LayoutParams.MATCH_PARENT, + view.getContext().getResources().getDimensionPixelSize( + com.android.internal.R.dimen.status_bar_height), + WindowManager.LayoutParams.TYPE_STATUS_BAR, + WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE| + WindowManager.LayoutParams.FLAG_TOUCHABLE_WHEN_WAKING, + PixelFormat.RGB_888); + lp.gravity = Gravity.TOP | Gravity.FILL_HORIZONTAL; + lp.setTitle("StatusBar"); + // TODO lp.windowAnimations = R.style.Animation_StatusBar; + + WindowManagerImpl.getDefault().addView(view, lp); + } +} diff --git a/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/StatusBarService.java b/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/StatusBarService.java index 57a88e1379149..de80fc0616dc9 100644 --- a/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/StatusBarService.java +++ b/packages/StatusBarPhone/src/com/android/policy/statusbar/phone/StatusBarService.java @@ -34,7 +34,7 @@ import android.view.Window; import android.view.WindowManager; import android.view.WindowManagerImpl; -public class StatusBarService extends Service { +public abstract class StatusBarService extends Service { private static final String TAG = "StatusBarService"; Bar mBar = new Bar(); @@ -71,26 +71,9 @@ public class StatusBarService extends Service { class Bar extends IStatusBar.Stub { } - // ================================================================================ - // Constructing the view - // ================================================================================ - private void addStatusBarView() { - final View view = new View(this); - - // TODO final StatusBarView view = mStatusBarView; - WindowManager.LayoutParams lp = new WindowManager.LayoutParams( - ViewGroup.LayoutParams.MATCH_PARENT, - view.getContext().getResources().getDimensionPixelSize( - com.android.internal.R.dimen.status_bar_height), - WindowManager.LayoutParams.TYPE_STATUS_BAR, - WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE| - WindowManager.LayoutParams.FLAG_TOUCHABLE_WHEN_WAKING, - PixelFormat.RGB_888); - lp.gravity = Gravity.TOP | Gravity.FILL_HORIZONTAL; - lp.setTitle("StatusBar"); - // TODO lp.windowAnimations = R.style.Animation_StatusBar; - - WindowManagerImpl.getDefault().addView(view, lp); - } + /** + * Implement this to add the main status bar view. + */ + protected abstract void addStatusBarView(); }