docs: private static void readSettings(XmlPullParser parser, GVRContext context, CursorManager
              cursorManager) throws XmlPullParserException, IOException {
  
          Map<String, CursorTheme> themes = cursorManager.getThemeMap();
  
          parser.require(XmlPullParser.START_TAG, null, SETTINGS);
          while (parser.next() != XmlPullParser.END_TAG) {
              if (parser.getEventType() == XmlPullParser.TEXT) {
                  continue;
              } else if (parser.getEventType() != XmlPullParser.START_TAG) {
                  throw new XmlPullParserException("Cannot find start tag");
              }
              String name = parser.getName();
              Log.d(TAG, "Reading tag:" + name);
              // Starts by looking for the entry tag
              if (name.equals(GLOBAL)) {
                  GlobalSettingsFactory.readGlobalSettings(parser);
              } else if (name.equals(THEME)) {
                  Log.d(TAG, "Reading the theme tag");
                  CursorTheme theme = CursorThemeFactory.readTheme(parser, context);
                  themes.put(theme.getId(), theme);
              } else if (name.equals(CURSOR)) {
                  Log.d(TAG, "Reading the cursor tag");
                  cursorManager.addCursor(CursorFactory.readCursor(parser, context, cursorManager));
              }
          }
          if (0 == cursorManager.getCursorCount()) {
              throw new XmlPullParserException("No cursors specified in settings.xml");
          }
      }