Bug 87612 - UX: Fields in the Format->Columns dialog update incorrectly, leads to confusing/wrong values
Summary: UX: Fields in the Format->Columns dialog update incorrectly, leads to confusi...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
4.3.0.0.alpha1
Hardware: Other All
: high minor
Assignee: Caolán McNamara
URL:
Whiteboard: target:4.5.0 target:4.3.6 target:4.4.0.2
Keywords: bibisected, bisected, regression
Depends on:
Blocks:
 
Reported: 2014-12-22 21:07 UTC by tmacalp
Modified: 2015-12-17 08:42 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tmacalp 2014-12-22 21:07:42 UTC
The "Width" and "Spacing" fields in Writer's Format->Columns dialog perform checks after each character keyed.  This makes it impossible to type numbers beginning with a "."

Steps to reproduce:
1. Create a new document
2. Format -> Columns
3. Columns: 3
4. Highlight everything in the "Spacing" field (triple-click)
5. Type .8

Expected:
The spacing field should contain "0.80".  The validity checks for the number should be performed after we are finished typing our number. 

Actual:
Since the validity checks are performed as we type each character, our number is interpreted in a frustrating way.  The "." is thrown away.  The 8 is then used for the inch field, which is an impossible value with 3 columns.  So LO reduces our columns from 3 to 2, and shrinks our width to "3.44".

Notes:
If you know what's going on, it is easy enough to work around this issue.  Unfortunately, most users won't understand this behavior and will be extremely frustrated by the seemingly random values and changes to column numbers.  No other fields in dialogs update in this manner, that I've found.  The easy work-around is to type the leading 0.  Typing "0.8" does get around this bug.

Also, why does the column width change our set number of columns?  That field should be left alone.

Also, if we follow the example above, but then try to correct our mistake by typing in "0.8" the second time, our columns will still show that they've been reduced to 2, but the picture will go back to displaying 3 columns.  It will insert 3 columns when we hit ok.

This appears to have been introduced in 4.3.x, but does not affect 4.2.x.

I bibisected:
 a7dc22c40cc4b6c8c0ecf73268597c873aa2543a is the first bad commit
commit a7dc22c40cc4b6c8c0ecf73268597c873aa2543a
Author: Bjoern Michaelsen <bjoern.michaelsen@canonical.com>
Date:   Sun May 11 13:48:07 2014 +0000

    source-hash-f4ae06c6b558628457f3abdade1f2a705bf8b886
    
    commit f4ae06c6b558628457f3abdade1f2a705bf8b886
    Author:     Zolnai Tamás <tamas.zolnai@collabora.com>
    AuthorDate: Mon Feb 17 14:43:15 2014 +0100
    Commit:     Zolnai Tamás <tamas.zolnai@collabora.com>
    CommitDate: Mon Feb 17 17:22:28 2014 +0100
    
        DOCX import: fix position of floating tables
    
        Change-Id: I542acfd3215dcc7bbc2de49c567f73de0cda97a7

:100644 100644 f4b0c4722bbdfa70d9b380155467d8bb544023d0 8e419fe997e82c9d4e4f95824cbca286e2fda793 M      ccache.log
:100644 100644 7c3d08c27de64316d034aac6c496e4dccac96c5a a2bd433339a11018bb10cfa45632d7b7b7291de9 M      commitmsg
:100644 100644 a27b8a5690b61013dc369ebe30eea251a138c095 7eccdd5521d56695953ad45363bf31a62112dfa3 M      make.log
:040000 040000 956c5afe50c1cb809ef49f581e28f1b841bbe884 18fa5c5e7a990541e827c4e1bcadbac946b999c8 M      opt


$ git bisect log
# bad: [423a84c4f7068853974887d98442bc2a2d0cc91b] source-hash-c15927f20d4727c3b8de68497b6949e72f9e6e9e
# good: [752769ad0d2179e17ea0a08cc9004df7b890305b] source-hash-60c64b437c6678dd1d3fa3a6fc2b7da0480890d4
git bisect start 'latest' 'last42onmaster'
# bad: [4fcd68ce4979f85fda4568f4b419a4b41d07345f] source-hash-2c4621c87ed3a7b19de195c21494c9a381e72b2e
git bisect bad 4fcd68ce4979f85fda4568f4b419a4b41d07345f
# good: [0d4c20a601a3cfff27d6685d0e81463086bd9d74] source-hash-f1b1e73227471192682d303a58618ca8bd65a74d
git bisect good 0d4c20a601a3cfff27d6685d0e81463086bd9d74
# good: [3c72d6d27e2a0c420f74941355400b0834c550bb] source-hash-c30677731c55688c764a669ecea1b1c4d17ae57d
git bisect good 3c72d6d27e2a0c420f74941355400b0834c550bb
# skip: [c70dac3423c13ae0c425212ed71f0e7503555c5a] source-hash-1f74a3ce201bad68f160584900285e2c087ab2c0
git bisect skip c70dac3423c13ae0c425212ed71f0e7503555c5a
# bad: [6738b3ad82bbc77ce9a788be07da490e530de3ff] source-hash-43fc67adcc3bdc5efaaaf9b0d65e53e99880b18a
git bisect bad 6738b3ad82bbc77ce9a788be07da490e530de3ff
# bad: [4563c2121c987ab142c58f0cd6c665dd8790a8c9] source-hash-14829a84ff4f77091767cf4503db0c8a6624f036
git bisect bad 4563c2121c987ab142c58f0cd6c665dd8790a8c9
# good: [d25426a90080eae2d7a21b2258245dd1a7d28f1a] source-hash-33c7ecf870b47bdadda908834cc259ea81d69754
git bisect good d25426a90080eae2d7a21b2258245dd1a7d28f1a
# bad: [a7dc22c40cc4b6c8c0ecf73268597c873aa2543a] source-hash-f4ae06c6b558628457f3abdade1f2a705bf8b886
git bisect bad a7dc22c40cc4b6c8c0ecf73268597c873aa2543a
# good: [4cb28129efbb5aaf54b37ea5eab772c822a80298] source-hash-9bf907a8278cecd816368db7b8c4ab745a914a59
git bisect good 4cb28129efbb5aaf54b37ea5eab772c822a80298
# good: [c50786b73d50e49dc6491e46957dcb0c3900cdcd] source-hash-54cbd46dc52c51dda1594ee090f0619a7b92d56a
git bisect good c50786b73d50e49dc6491e46957dcb0c3900cdcd
# first bad commit: [a7dc22c40cc4b6c8c0ecf73268597c873aa2543a] source-hash-f4ae06c6b558628457f3abdade1f2a705bf8b886
Comment 1 tmacalp 2014-12-22 21:13:14 UTC
Since this is a regression, adding that as a keyword and increasing priority.
Comment 2 sophie 2014-12-23 10:06:10 UTC
Confirmed with Version: 4.4.0.0.beta1+
Build ID: 15156e06c9a3a73a375445955265999731800458
TinderBox: Linux-rpm_deb-x86_64@46-TDF, Branch:libreoffice-4-4, Time: 2014-11-26_01:59:16 Locale: fr_FR - Set as New - Sophie
Comment 3 Matthew Francis 2014-12-25 04:01:24 UTC
This behaviour changed with the below commit.

Adding Cc: to caolanm@redhat.com. Could you possibly take a look at this one? Thanks

commit 7d040153e8929f4a5a3362f04cd25e6ddb4d9f2c
Author: Caolán McNamara <caolanm@redhat.com>
Date:   Mon Feb 17 16:16:56 2014 +0000

    Resolves: fdo#61704 update on modify, not up/down/lose-focus
    
    Change-Id: Ife98beb24d43f0e58f47c654ad8ef9605e5e3ffc
Comment 4 Commit Notification 2015-01-07 12:41:12 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=8c59f319a712a515c6cad539afc2144e19bd006d

Resolves: fdo#87612 don't overwrite users input if the value is unchanged

It will be available in 4.5.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 5 Caolán McNamara 2015-01-07 12:41:34 UTC
backports in gerrit for 4-4 and 4-3
Comment 6 Commit Notification 2015-01-07 16:38:49 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "libreoffice-4-3":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=177cfe9b602a081f0c3a166e90aace16b868bca3&h=libreoffice-4-3

Resolves: fdo#87612 don't overwrite users input if the value is unchanged

It will be available in 4.3.6.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 7 Commit Notification 2015-01-07 16:38:54 UTC
Caolán McNamara committed a patch related to this issue.
It has been pushed to "libreoffice-4-4":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=fd1e2742c64e89954ac1431dd6b4e25cf2da7c29&h=libreoffice-4-4

Resolves: fdo#87612 don't overwrite users input if the value is unchanged

It will be available in 4.4.0.2.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 8 Robinson Tryon (qubit) 2015-12-17 08:42:22 UTC
Migrating Whiteboard tags to Keywords: (bibisected)
[NinjaEdit]