Use Valo theme dynamicly based on the clients operating system

Is there a built-in way to make Vaadin apply approprate Valo theme that is the most similar to an operating system used by the client (e.g. based on user-agent header entry or using JavaScript Request.Browser.Platform)?
For example:
If the client uses:

  • Windows apply Valo Default
  • Linux apply Valo Dark
  • OSX apply Valo Light
  • Android Valo Facebook

Appologies if this is not a place for such question and thank you for any reply in advance.

You can do this in UI.init(), something like

WebBrowser browser = getPage().getWebBrowser();
if (browser.isWindows()) {
   setTheme("valo");
else if (browser.isLinux()) {
  ...