Keep shaders to render properly

I don't know who's to blame, SGX or Tegra2 but one of those two GPUs is not
following the OpenGL ES 2.0 spec.

Change-Id: I2624e0efbc9c57d571c55c8b440a5e43f08a54f2
diff --git a/libs/hwui/Program.h b/libs/hwui/Program.h
index edd1209..9e59621 100644
--- a/libs/hwui/Program.h
+++ b/libs/hwui/Program.h
@@ -33,6 +33,11 @@
  */
 class Program {
 public:
+    enum ShaderBindings {
+        kBindingPosition,
+        kBindingTexCoords
+    };
+
     /**
      * Creates a new program with the specified vertex and fragment
      * shaders sources.
@@ -107,6 +112,11 @@
     int addAttrib(const char* name);
 
     /**
+     * Binds the specified attribute name to the specified slot.
+     */
+    int bindAttrib(const char* name, ShaderBindings bindingSlot);
+
+    /**
      * Adds a uniform with the specified name.
      *
      * @return The OpenGL name of the uniform.
@@ -121,8 +131,10 @@
      */
     GLuint buildShader(const char* source, GLenum type);
 
-    // Name of the OpenGL program
+    // Name of the OpenGL program and shaders
     GLuint mProgramId;
+    GLuint mVertexShader;
+    GLuint mFragmentShader;
 
     // Keeps track of attributes and uniforms slots
     KeyedVector<const char*, int> mAttributes;