[Libreoffice-commits] core.git: Branch 'libreoffice-6-3' - vcl/source
Justin Luth (via logerrit)
logerrit at kemper.freedesktop.org
Mon Jul 15 12:56:15 UTC 2019
vcl/source/control/button.cxx | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
New commits:
commit 4109dfff009f017e8994ea0a57119e79291ca2c8
Author: Justin Luth <justin_luth at sil.org>
AuthorDate: Sat Jul 6 07:27:16 2019 +0300
Commit: Caolán McNamara <caolanm at redhat.com>
CommitDate: Mon Jul 15 14:55:29 2019 +0200
Revert "tdf#108687 vcl: always enable tabstop on radio buttons"
This reverts LO 6.2 commit f2cd1c3c7cce2699d1341f726fc90cf30b52612c
because it caused regression tdf#125609.
There are places where radio-groups are not properly defined,
and things are a big mess.
-about 4 levels of radio buttons are created.
-the last level does not do grouping properly.
-the tab order is defined too early, before all
the controls are fully made.
-this code is repeated for EVERY control added.
Already reverted in 6.2, this also reverts 6.3
because after looking again I don't see any way
out of this, short of rewriting all of the old code.
This can be a fairly serious regression, because the value
of the radio buttons can change just by tabbing around.
Leaving the commit in place for master, so that I can give it
one more try before completely giving up.
Change-Id: Ic62fd7bb50e67647703cba3796f6d11ffb797eb5
Reviewed-on: https://gerrit.libreoffice.org/75157
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth at sil.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/vcl/source/control/button.cxx b/vcl/source/control/button.cxx
index 8469407dfc57..1aa58877ad6d 100644
--- a/vcl/source/control/button.cxx
+++ b/vcl/source/control/button.cxx
@@ -1856,7 +1856,12 @@ WinBits RadioButton::ImplInitStyle( const vcl::Window* pPrevWindow, WinBits nSty
(!pPrevWindow || (pPrevWindow->GetType() != WindowType::RADIOBUTTON)) )
nStyle |= WB_GROUP;
if ( !(nStyle & WB_NOTABSTOP) )
- nStyle |= WB_TABSTOP;
+ {
+ if ( IsChecked() )
+ nStyle |= WB_TABSTOP;
+ else
+ nStyle &= ~WB_TABSTOP;
+ }
if ( IsChecked() && IsRadioCheckEnabled() )
ImplUncheckAllOther();
More information about the Libreoffice-commits
mailing list