title: Text from TextInput not being updated
body: <p>I am attempting to use kv language to redo a program I have already done. The first was done in python. Now when I use kivy language I cannot get anything from my UI. In this example. when the Barcode text changes it should update it's text property which should then fire off my function. Problem is it is not recognizing the change in the text input box.</p>
  
  <pre><code>main6.py
  
  class Barcode(TextInput):
  
      l_prompt= ObjectProperty()
      btext = StringProperty()
  
      # capture barcode
      def onText(self):
          print ('in onText')
          c=True
          while c:
              print('in loop')
              time.sleep(1/10)
              print(self.text)
              if len(self.text) &lt;=5:
                  c= True
              else:
                  c = False
                  print('in else')
                  self.l_prompt.change_label('test')
                  Clock.schedule_once(self.parent.run_test,1)
  
  class MainLayout(FloatLayout):
  
      dt = str(datetime.today()) 
      pafa = ''       #pass/fail
      barcode = ''    #barcode number
      counter = 0 #item counter
  
      prompt_wid = ObjectProperty()
      barcode_wid = ObjectProperty(rebind = True)
      passfail_wid = ObjectProperty()
      counterlabel_wid = ObjectProperty()
  
  
      def __init__(self, **kwargs):
          super(MainLayout, self).__init__(**kwargs)
  
          #start test
          #self.starttest(self)
  
          self.l=Label()
          #self.barcode_wid.bind(text=self.l.setter('text'))
  
      def detect(self, d):
          #detect when device is plugged in
          t = True
          while t:
              time.sleep(1)
              dev = usb.core.find(idVendor= 0x2996)
  
              if dev is None:
  
  
                  t=False
  
                  self.prompt_wid.change_label('scan')  #label change
                  #self.barcode_wid.focus=True #brings cursor up for input scan
  
  
                  j = threading.Thread(target=self.barcode_wid.onText)
                  j.daemon = True
                  j.start()
  
  ex6.kv
  
  #: kivy 1.9
  
  
  &lt;MainLayout&gt;:
      orientation: 'vertical'
      size: root.size
  
      prompt_wid: prompt
      barcode_wid: barcode
      passfail_wid: passfail
      counterlabel_wid: counterlabel
  
      canvas.before: 
          Color: 
              rgb: 0, 0, .6 
          Rectangle: 
              pos: self.pos 
              size: self.size 
  
      Prompt:
          id: prompt
  
          canvas.before: 
              Color: 
                  rgb: .6, .6, .6 
              Rectangle: 
                  pos: self.pos 
                  size: self.size 
      Barcode:
          id: barcode
          l_prompt: prompt
          focus: 'True'
          text:'hey'
  
  &lt;Barcode&gt;:
  
      pos_hint: {'center_x': .5, 'top': 0.666 }
      size_hint:(1,.3)
      font_size: self.height/3
      text: ''
      multiline: 'False'
      padding: 0,(self.height/3)
  
  presentation = Builder.load_file('ex6.kv')
  
  
  class MainApp(App):
      def build(self):
          ml = MainLayout()
          Clock.schedule_interval(ml.detect, 2)
          return MainLayout()
  
  
  if __name__=="__main__":
      MainApp().run()
  </code></pre>
  
  <p>I am attempting to use the Kivy Properties but I think I a missing a fundamental link between the py and kv file because none of my Labels (l_prompt) are updating as well. Everything runs behind the scene ok but no UI change except when enter characters into the Text Input box.</p>