@Override
  public RemoteViews getViewAt(final int position) {
    if (position >= this.tasks.size()) {
      return null;
    }
    final Task task = this.tasks.get(position);
    // Get The Task
    final boolean isMinimalistic = WidgetHelper.isMinimalistic(this.mContext, this.widgetId);
    RemoteViews rv =
        new RemoteViews(
            this.mContext.getPackageName(),
            isMinimalistic ? R.layout.widget_row_minimal : R.layout.widget_row);

    // Set the Contents of the Row
    rv =
        WidgetHelper.configureItem(
            rv, task, this.mContext, this.list.getId(), isMinimalistic, this.widgetId);

    // Set the Click–Intent
    // We need to do so, because we can not start the Activity directly from
    // the Service

    final Bundle extras = new Bundle();
    extras.putInt(MainWidgetProvider.EXTRA_TASKID, (int) task.getId());
    final Intent fillInIntent = new Intent(MainWidgetProvider.CLICK_TASK);
    fillInIntent.putExtras(extras);
    rv.setOnClickFillInIntent(R.id.tasks_row, fillInIntent);
    return rv;
  }