diff options
author | Caolán McNamara <caolanm@redhat.com> | 2018-11-15 17:16:19 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2018-11-15 21:55:51 +0100 |
commit | 973a3dd9623107c18c6765d0b247aa34018a0447 (patch) | |
tree | 2deca02c8fdef7fa347cafdc9c9c217ac41398a4 /vcl | |
parent | 1d988778095ecbe84f1a1002511377d0708b3443 (diff) |
force rerender on unit change
Change-Id: I7a64b2e200bf0c50ea636be8aac1249713044103
Reviewed-on: https://gerrit.libreoffice.org/63438
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/source/window/builder.cxx | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index 95a1fb996cd4..b2dbeba41233 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -256,13 +256,17 @@ namespace weld void MetricSpinButton::set_unit(FieldUnit eUnit) { - int step, page; - get_increments(step, page, m_eSrcUnit); - int value = get_value(m_eSrcUnit); - m_eSrcUnit = eUnit; - set_increments(step, page, m_eSrcUnit); - set_value(value, m_eSrcUnit); - update_width_chars(); + if (eUnit != m_eSrcUnit) + { + int step, page; + get_increments(step, page, m_eSrcUnit); + int value = get_value(m_eSrcUnit); + m_eSrcUnit = eUnit; + set_increments(step, page, m_eSrcUnit); + set_value(value, m_eSrcUnit); + spin_button_output(*m_xSpinButton); + update_width_chars(); + } } int MetricSpinButton::ConvertValue(int nValue, FieldUnit eInUnit, FieldUnit eOutUnit) const |