message: fix blame view in Double Tree Widget. The problem was, that no valid blame was found, because in the DiffTreeWidget the blame role was not implemented. Searching through the current commit for the correct blame
diff: @@ -237,7 +237,6 @@ void DoubleTreeWidget::setDiff(const git::Diff &diff,
  storeSelection();
  // Reset model.
  - git::Tree tree = RepoView::parentView(this)->tree();
  // because of this, the content in the view is shown.
  TreeProxy* proxy = static_cast<TreeProxy *>(unstagedFiles->model());
  DiffTreeModel* model = static_cast<DiffTreeModel*>(proxy->sourceModel());
  @@ -381,11 +380,35 @@ void DoubleTreeWidget::fileSelected(const QModelIndex &index) {
  void DoubleTreeWidget::loadEditorContent(const QModelIndex &index)
  {
  QString name = index.data(Qt::EditRole).toString();
  - git::Blob blob = index.data(DiffTreeModel::BlobRole).value<git::Blob>();
  -
  QList<git::Commit> commits = RepoView::parentView(this)->commits();
  git::Commit commit = !commits.isEmpty() ? commits.first() : git::Commit();
  + git::Tree tree = commit.tree();
  +
  + // searching for the correct blob
  + auto list = name.split("/");
  + bool found = false;
  + git::Blob blob;
  + for (int path_depth = 0; path_depth < list.count(); path_depth++) {
  + auto element = list[path_depth];
  + found = false;
  + for (int i = 0; i < tree.count(); ++i) {
  + auto n = tree.name(i);
  + if (n == element) {
  + if (path_depth >= list.count() -1)
  + blob = tree.object(i);
  + else
  + tree = tree.object(i);
  + found = true;
  + break;
  + }
  + }
  + if (!found)
  + break;
  + }
  +
  + if (found)
  mEditor->load(name, blob, commit);
  +
  mDiffView->enable(true);
  mDiffView->updateFiles();
  }
  