<table><tr><td style="">michaelh added a comment.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D10694">View Revision</a></tr></table><br /><div><div><p>Ahhhh.... Either I'm completely off-track here or <tt style="background: #ebebeb; font-size: 13px;">kfilemetadata</tt> is not doing this correctly. <br />
I see a lot of statements like <tt style="background: #ebebeb; font-size: 13px;">artist += ', ' + value</tt> -> no list!<br />
<tt style="background: #ebebeb; font-size: 13px;">result->add</tt> calls <tt style="background: #ebebeb; font-size: 13px;">QMap->addMulti().</tt> This forces the client to iterate over the map, which is not necessary.<br />
In contrary</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">kfilemetadata/src/propertyinfo.cpp: 52
     case Property::AlbumArtist:
            d->name = QStringLiteral("albumArtist");
            d->displayName = i18nc("@label", "Album Artist");
            d->valueType = QVariant::StringList;
            break;</pre></div>

<p>The client can call <tt style="background: #ebebeb; font-size: 13px;">toVariantMap()</tt> on the extraction result to get a <tt style="background: #ebebeb; font-size: 13px;">QVariantMap</tt> but not a <tt style="background: #ebebeb; font-size: 13px;">QVariant::StringList</tt>.<br />
I really, really, really do not understand why <tt style="background: #ebebeb; font-size: 13px;">kfilemetadata</tt> is not delivering a string list. It is much more natural and consistent with the announced Property info.<br />
Also:</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">kfilemetadata/src/properties.h: 282
typedef QMap<Property::Property, QVariant> PropertyMap;
//In taglibextractor never a list --^`</pre></div>

<p>I'm confused.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R286 KFileMetaData</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D10694">https://phabricator.kde.org/D10694</a></div></div><br /><div><strong>To: </strong>michaelh, mgallien, dfaure<br /><strong>Cc: </strong>astippich, Frameworks, ashaposhnikov, michaelh, spoorun, navarromorales, isidorov, nicolasfella, firef, andrebarros, alexeymin, emmanuelp<br /></div>