title: Pywebview blocks flask app unless I open two webviews
body: <p>I built a python desktop webapp with a fairly simple flask backend which I'm currently serving simply through Chrome. I'm trying to package it using pywebview, but I ran into an intestesting roadblock.</p>
  
  <p>I have code that looks like this in the main file of my package:</p>
  
  <pre><code>import os
  import sys
  from flasher import app
  
  import httplib
  
  import webview
  import threading
  
  
  def start_prod_server():
      runserver(debug=False, reloader=False)
  
  def start_gui():
      webview.create_window("MyAppName", "http://localhost:5000", height=1000)
  
  def runserver(debug=True, reloader=False):
      port = int(os.environ.get('PORT', 5000))
      url = "http://localhost:{}".format(port)
  
      print("ready!")
      app.run(host='::', port=port, debug=debug, use_reloader=reloader)
  
  
  if __name__ == '__main__':
      t = threading.Thread(target=start_prod_server)
      t.daemon = True
      t.start()
  
      # This never works
      threading.Timer(1.5, start_gui).start()
  
      sys.exit()
  </code></pre>
  
  <p>This fails almost systematically, the window shows up blank and the backend doesn't respond to anything (including requests from a separate desktop browser).</p>
  
  <p>I discovered accidentally that if I start two webview threads, it always works:</p>
  
  <pre><code>if __name__ == '__main__':
      t = threading.Thread(target=start_prod_server)
      t.daemon = True
      t.start()
  
      # This works every time
      threading.Timer(1.5, start_gui).start()
      threading.Timer(1.5, start_gui).start()
  
      sys.exit()
  </code></pre>
  
  <p>What could be causing this? My understanding of threading in Python is fairly limited, so I'm not sure where to look. Is this likely to be a bug in pywebview, or am I doing something wrong with my threads?</p>
  
  <p>I'm also open to suggestions of alternatives for the webview part, but I want to keep the python/flask part since the app already works fine as it is.</p>