Esempio n. 1
0
  public static Map<String, WidgetData> refreshWidgets(
      Context context, ArrayList<CharSequence> widgetsDesired) {
    synchronized (lock) {
      if (dataCache == null) dataCache = new HashMap<String, WidgetData>();

      for (InternalWidget widget : widgets) {
        widget.refresh(widgetsDesired);
        widget.get(widgetsDesired, dataCache);
      }

      Intent intent = new Intent("org.metawatch.manager.REFRESH_WIDGET_REQUEST");
      Bundle b = new Bundle();
      if (widgetsDesired == null) b.putBoolean("org.metawatch.manager.get_previews", true);
      else {
        String[] temp = widgetsDesired.toArray(new String[widgetsDesired.size()]);
        b.putStringArray("org.metawatch.manager.widgets_desired", temp);
      }

      intent.putExtras(b);

      context.sendBroadcast(intent);

      return dataCache;
    }
  }