Add popupKeyboardTemplate attribute to Keyboard

This change
- introduces the popupKeyboardTemplate attribute of Keyboard to
  specify XML Keyboard file for popup mini keyboard.
- introduces the maxPopupKeyboardColumn attribute of Keyboard to
  specify the maximum column of popup mini keyboard.
- changes the content format of the popupCharacters attribute of Key.
  It now represents keyLabel, codes and keyTextOutput of each key of
  popup mini keyboard using CSV format.

Bug: 2214959
Change-Id: I539e310f7e38a049ee193de0b4ad5d7afdce37b1
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 55c806c..549c2ae 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -89,15 +89,17 @@
         <attr name="horizontalGap" format="dimension|fraction" />
         <!-- Default vertical gap between rows of keys. -->
         <attr name="verticalGap" format="dimension|fraction" />
+        <!-- Popup keyboard layout template -->
+        <attr name="popupKeyboardTemplate" format="reference" />
     </declare-styleable>
 
     <declare-styleable name="Keyboard_Key">
         <!-- The unicode value or comma-separated values that this key outputs. -->
         <attr name="codes" format="integer|string" />
-        <!-- The XML keyboard layout of any popup keyboard. -->
-        <attr name="popupKeyboard" format="reference" />
         <!-- The characters to display in the popup keyboard. -->
         <attr name="popupCharacters" format="string" />
+        <!-- Maximum column of popup keyboard -->
+        <attr name="maxPopupKeyboardColumn" format="integer" />
         <!-- Key edge flags. -->
         <attr name="keyEdgeFlags">
             <!-- Key is anchored to the left of the keyboard. -->