<table><tr><td style="">kossebau 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/D24965">View Revision</a></tr></table><br /><div><div><p>So seems I missed to make clear what I meant, next try :)</p>
<p>The goal is: make clients (e.g. apps) which are still using this method to set the app icon aware by a compiler warning that they should port their code to use QApplication::setWindowIcon. For that we would keep KCOREADDONS_DEPRECATED_VERSION, as it is what sets the warning attribute, if asked by given settings.</p>
<p>What we cannot do is to allow making the API invisible to the compiler in general, as infrastructure code support such legacy settings always needs to access it. So we remove the wrapping with #if/#endif and KCOREADDONS_ENABLE_DEPRECATED_SINCE, as that is the one which controls the visibility of the API.</p>
<p>And for the very infrastructure code we also need to have a way to not get the deprecation warning, as for that using the API is fine still. So we need to tell the compiler somehow the deprecation warning in such usage needs to be ignored. One could do complicated logic to have the KCOREADDONS_DEPRECATED_VERSION care for another macro definition. But for now the most simply might be to just tell the compiler in the calling code to ignore for that line deprecation warnings.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R265 KConfigWidgets</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D24965">https://phabricator.kde.org/D24965</a></div></div><br /><div><strong>To: </strong>dfaure, kossebau, elvisangelaccio, vkrause<br /><strong>Cc: </strong>kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns<br /></div>