rkflx updated this revision to Diff 19345. rkflx edited the summary of this revision. rkflx added a comment.
Spent some time trying to solve this properly, but it's difficult. We could get the Qt code as LGPLv2.1 from an older release, and `relicensecheck.pl` for ksqueezedtextlabel.{cpp,h} on kwidgetsaddons and kdelibs (including moves) doesn't look too bad for "lgplv23 lgplv2+". However, technically we would need to relicense to either "v3" or "v2.1", but the script only asks for "v2 or v3" and "v2+". Thus, no luck. Therefore, I opened the Qt API docs to check whether a reimplementation without looking at the code is possible, which states already quite algorithmically: If indent is negative, or if no indent has been set, the label computes the effective indent as follows: If frameWidth() is 0, the effective indent becomes 0. If frameWidth() is greater than 0, the effective indent becomes half the width of the "x" character of the widget's current font(). By default, the indent is -1, meaning that an effective indent is calculating in the manner described above. The implementation I'm proposing (as of now :) should be doing exactly that, of course with adaptations to also account for margin and lineWidth. Let me know if this is enough. REPOSITORY R236 KWidgetsAddons CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D7164?vs=19332&id=19345 BRANCH arcpatch-D7164 (branched from master) REVISION DETAIL https://phabricator.kde.org/D7164 AFFECTED FILES autotests/ksqueezedtextlabelautotest.cpp src/ksqueezedtextlabel.cpp src/ksqueezedtextlabel.h To: rkflx, #frameworks, cfeck Cc: cfeck, dhaumann