Impossible : No layout manager attached; Skipping layout
<p>I'm completely lost with this bug, I understand it, but I don't know what's wrong.
For the code : </p>

<pre><code>// In the OnCreate of my activity
  historyRecyclerView = (RecyclerView)findViewById(R.id.recycler_suggestions);
  SearchBarHistoryAdapter searchBarHistoryAdapter = new SearchBarHistoryAdapter();
  searchBarHistoryAdapter.setActivity(this);
  historyRecyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));
  historyRecyclerView.setAdapter(searchBarHistoryAdapter);
  searchBarDisplayManager.setTypeAdapter(SearchBarDisplayManager.SEARCH_TYPE.HISTORY, searchBarHistoryAdapter);
</code></pre>

<p>The <code>SearchDisplayManager</code> just contains a list of adapters.
The adapter :</p>

<pre><code>public class SearchBarHistoryAdapter extends SearchBarAdapter {
private ArrayList&lt;String&gt; historyList;
private HistoryTask historyTask;

private void setHistoryList(ArrayList&lt;String&gt; history) {
historyList = history;
notifyDataSetChanged();
}

@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.search_list_item, parent, false);
final HistoryViewHolder historyViewHolder = new HistoryViewHolder(v);
return historyViewHolder;
}

@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
  ((HistoryViewHolder) holder).bind(historyList.get(position));
}

@Override
public int getItemCount() {
return historyList == null ? 0 : historyList.size();
}

@Override
public void startSearch(String searchString) {
if(TextUtils.isEmpty(searchString)) {
  if (historyTask != null) {
    historyTask.cancel(true);
  }
  historyTask = new HistoryTask();
  historyTask.execute();
}else{
  setHistoryList(null);
}
}

private class HistoryTask extends AsyncTask&lt;Void, Void, ArrayList&lt;String&gt;&gt; {

@Override
protected ArrayList&lt;String&gt; doInBackground(Void... params) {
  String history = HelperUI.getSearchbarHistory(activity);
  if (!TextUtils.isEmpty(history)) {
    return new ArrayList&lt;&gt;(Arrays.asList(history.split("--")));
  }

  return new ArrayList&lt;&gt;(0);
}

@Override
protected void onPostExecute(ArrayList&lt;String&gt; results) {
  super.onPostExecute(results);
  if (!results.isEmpty()) {
    setHistoryList(results);
  }
  historyTask = null;
}
}

private class HistoryViewHolder extends RecyclerView.ViewHolder {
TextView hint, name;
ImageView img;

public HistoryViewHolder(View v) {
  super(v);
  name = (TextView) v.findViewById(R.id.app_label);
  hint = ((TextView) v.findViewById(R.id.type_label));
  img = ((ImageView) v.findViewById(R.id.item_icon));
}

public void bind(String suggestion) {
  name.setText(Html.fromHtml(suggestion));
  img.setImageDrawable(activity.getResources().getDrawable(R.drawable.ic_public_grey600_48dp));
  img.setTag(suggestion);
}
}
}
</code></pre>

<p>Here is the crazy part, when I update the list in <code>setHistoryList</code>, I know the recycler view has the right adapter and it is not <code>null</code> ... but then it kinda loses it, no more adapter in the Recycler view when it tries to update by <code>notifyDatasetChanged()</code> ... it just disappears and, of cours, displays nothing.</p>

<p>Any idea what's wrong ?</p>