• Lionel Elie Mamane's avatar
    address forward incompatibility of InputRequired default change · 97a0a7f4
    Lionel Elie Mamane yazdı
    commit fec8c14e changed the default value
    of InputRequired as read from the file; that is the value InputRequired
    has when it is set to neither false nor true in the file
    
    This is to mitigate the fact that InputRequired was not property
    enforced and now suddenly is, but its default value was "true"! So
    lots of past forms have InputRequired==true everywhere, users did not
    pay attention to it because it was not enforced, and now it is
    enforced, which suddenly is a huge PITA for users because they have to
    update most controls in all forms. Since older versions of LibreOffice
    omitted the input-required attribute in the file (the XML stream) when
    it had its then-default value (namely "true"), we changed that to now
    mean "false". As a side-effect, newer LibreOffice omits the attribute
    in the XML stream when InputRequired has its new default value, namely
    "false".
    
    So the situation is that any file saved with an older LibreOffice will
    have all its form controls with InputRequired==false when opened with
    a newer LibreOffice, and any file saved with a newer LibreOffice will
    have all its form controls with InputRequired==true when opened with
    an older LibreOffice.
    
    This commit makes LibreOffice always write the XML attribute. So that
    any file saved with a newer LibreOffice will have the same
    InputRequired values when opened in an older LibreOffice.
    
    This enhances forward compatibility, because InputRequired was
    enforced in older versions when the underlying database field was
    marked NOT NULL. So the current situation leads to unwanted
    enforcement in older LibreOffice versions, with a file that is saved
    from newer LibreOffice with a control having InputRequired==false and
    bound to a database field marked NOT NULL. This commit fixes that, by
    ensuring that any form control with InputRequired==false in newer
    LibreOffice will also have InputRequired==false in older LibreOffice.
    
    Change-Id: I92ef48ad99c4e2ead43e95376282cc861c181ab3
    Reviewed-on: https://gerrit.libreoffice.org/64642
    Tested-by: Jenkins
    Reviewed-by: 's avatarLionel Elie Mamane <lionel@mamane.lu>
    Reviewed-by: 's avatarEike Rathke <erack@redhat.com>
    97a0a7f4
Adı
Son kayıt (commit)
Son güncelleme
..
dtd Loading commit data...
inc Loading commit data...
qa Loading commit data...
source Loading commit data...
util Loading commit data...
CppunitTest_xmloff_uxmloff.mk Loading commit data...
CustomTarget_generated.mk Loading commit data...
JunitTest_xmloff_unoapi.mk Loading commit data...
Library_xo.mk Loading commit data...
Library_xof.mk Loading commit data...
Makefile Loading commit data...
Module_xmloff.mk Loading commit data...
Package_dtd.mk Loading commit data...
README.md Loading commit data...