Fix configuration changes in status bars.

- Make sure SystemBars calls onConfigurationChanged on the
  status bar
- Remove redundant ACTION_CONFIGURATION_CHANGED receiver in
  BaseStatusBar & move this code into onConfigurationChanged
- Force locale refresh even if a configuration change
  touches only the layout direction

Bug: 10113357
Change-Id: I92902d25cbae77f2558cfb85482484b11dc7294e
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/SystemBars.java b/packages/SystemUI/src/com/android/systemui/statusbar/SystemBars.java
index ecf7b35..16fe1aa 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/SystemBars.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/SystemBars.java
@@ -16,6 +16,7 @@
 
 package com.android.systemui.statusbar;
 
+import android.content.res.Configuration;
 import android.provider.Settings;
 import android.util.Log;
 
@@ -70,6 +71,13 @@
     }
 
     @Override
+    protected void onConfigurationChanged(Configuration newConfig) {
+        if (mStatusBar != null) {
+            mStatusBar.onConfigurationChanged(newConfig);
+        }
+    }
+
+    @Override
     public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
         if (mStatusBar != null) {
             mStatusBar.dump(fd, pw, args);