<table><tr><td style="">daandemeyer created this revision.<br />daandemeyer added a reviewer: Frameworks.<br />daandemeyer added a project: Frameworks.<br />Herald added a subscriber: kde-frameworks-devel.<br />daandemeyer requested review of this revision.
</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/D22768">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>When refactoring Kate's CMake scripts, I was looking into why a target got an interface dependency on I18n when linking against KTextEditor and I tracked it down to KTextWidgets. Since there's only one small usage in a single widget that can be forward-declared it seems excessive to add I18n as an interface dependency. This revision forward-declares the usage of KLocalizedString and makes I18n a private dependency. This avoids I18n leaking into dependent libraries.</p>

<p>This will break code implicitly depending on KTextWidget's I18n dependency, as well as code that implicitly depens on KPluralHandlingSpinBox KlocalizedString include. The fix is to explicitly link against I18n and explicitly include KLocalizedString respectively. I'm not sure how breaking changes are handled in KDE Frameworks. If breaking changes are not an option this revision can be closed.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R310 KTextWidgets</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D22768">https://phabricator.kde.org/D22768</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>autotests/CMakeLists.txt<br />
autotests/kpluralhandlingspinboxtest.cpp<br />
src/CMakeLists.txt<br />
src/widgets/kpluralhandlingspinbox.cpp<br />
src/widgets/kpluralhandlingspinbox.h</div></div></div><br /><div><strong>To: </strong>daandemeyer, Frameworks<br /><strong>Cc: </strong>kde-frameworks-devel, LeGast00n, sbergeron, michaelh, ngraham, bruns<br /></div>