sysui: refactor for extensibility.

Extended QSDetail / QSTile to control the behavior with
header / footer.

Bug: 28169547
Change-Id: Ice7d5fc16a0e9080a5c842295abe87bc1e2d71be
(cherry picked from commit dbdcb44b7fa49931fc506535a4cc02c20085bca5)
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
index 2c2f1bd..2cc3086 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSPanel.java
@@ -56,7 +56,7 @@
 
     private int mPanelPaddingBottom;
     private int mBrightnessPaddingTop;
-    private boolean mExpanded;
+    protected boolean mExpanded;
     private boolean mListening;
 
     private Callback mCallback;
@@ -228,6 +228,10 @@
         }
     }
 
+    public boolean isExpanded() {
+        return mExpanded;
+    }
+
     public void setListening(boolean listening) {
         if (mListening == listening) return;
         mListening = listening;