filter/source/config/fragments/filters/MS_Word_2007_XML.xcu               |    
3 ++-
 filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu      |    
3 ++-
 filter/source/config/fragments/filters/MS_Word_2007_XML_VBA.xcu           |    
3 ++-
 filter/source/config/fragments/filters/OOXML_Text.xcu                     |    
4 ++--
 filter/source/config/fragments/filters/OOXML_Text_Template.xcu            |    
4 ++--
 filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu          |    
2 +-
 filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu |    
2 +-
 filter/source/config/fragments/types/writer_MS_Word_2007_XML_VBA.xcu      |    
2 +-
 filter/source/config/fragments/types/writer_OOXML.xcu                     |    
2 +-
 filter/source/config/fragments/types/writer_OOXML_Template.xcu            |    
2 +-
 sw/qa/uitest/writer_tests3/save_readonly_with_password.py                 |    
2 +-
 sw/qa/uitest/writer_tests7/tdf131936.py                                   |    
2 +-
 sw/source/filter/ww8/docxexport.cxx                                       |    
6 ++++--
 13 files changed, 21 insertions(+), 16 deletions(-)

New commits:
commit ed0476b0625c4361df5ff040a6661a9634588cea
Author:     Michael Stahl <[email protected]>
AuthorDate: Fri Feb 17 12:25:30 2023 +0100
Commit:     Michael Stahl <[email protected]>
CommitDate: Mon Feb 20 12:07:54 2023 +0000

    tdf#137883 filter: rename DOCX filters to be less confusing
    
    Rename misleading "Word 2007–365" filter which corresponds to the sightly
    incompatible first pre-ISO version of OOXML (ECMA-376 1st edition) and
    is actually very specifically for Word 2007.
    
    Stop confusing users with standardese like "Office Open XML Text
    Document (Transitional)" and instead use the name of the application
    that the format is intended for, "Word 2010-365".
    
    Hopefully users will now pick the latter filter over the former.
    
    Also, the OOXML_Text_Template.xcu was missing EXPORT flag so didn't show
    up in Save dialog.
    
    Also, the OOXML_Text.xcu was missing SUPPORTSSIGNING flag which vmiklos
    said was by accident.
    
    Change-Id: I3aa88ac0fee51c906f11e75558a5d6de4f36a402
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147210
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu 
b/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu
index c4e6f828cc77..91c7e02d226f 100644
--- a/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu
+++ b/filter/source/config/fragments/filters/MS_Word_2007_XML.xcu
@@ -21,8 +21,9 @@
         <prop 
oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
         <prop oor:name="UserData"><value>OXML</value></prop>
         <prop oor:name="UIName">
-            <value xml:lang="en-US">Word 2007–365</value>
+            <value xml:lang="en-US">Word 2007</value>
         </prop>
+        <!-- ECMA 376 1st edition -->
         <prop oor:name="FileFormatVersion"><value>0</value></prop>
         <prop oor:name="Type"><value>writer_MS_Word_2007</value></prop>
         <prop oor:name="TemplateName"/>
diff --git 
a/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu 
b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu
index cd81c9943032..ab1823a70316 100644
--- a/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu
+++ b/filter/source/config/fragments/filters/MS_Word_2007_XML_Template.xcu
@@ -20,7 +20,8 @@
         <prop oor:name="UIComponent"/>
         <prop 
oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
         <prop oor:name="UserData"><value>OXML</value></prop>
-        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007–365 
Template</value></prop>
+        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007 
Template</value></prop>
+        <!-- ECMA 376 1st edition -->
         <prop oor:name="FileFormatVersion"><value>0</value></prop>
         <prop 
oor:name="Type"><value>writer_MS_Word_2007_Template</value></prop>
         <prop oor:name="TemplateName"/>
diff --git a/filter/source/config/fragments/filters/MS_Word_2007_XML_VBA.xcu 
b/filter/source/config/fragments/filters/MS_Word_2007_XML_VBA.xcu
index 0f1bdb7239e4..87b561b025f7 100644
--- a/filter/source/config/fragments/filters/MS_Word_2007_XML_VBA.xcu
+++ b/filter/source/config/fragments/filters/MS_Word_2007_XML_VBA.xcu
@@ -10,7 +10,8 @@
         <prop oor:name="UIComponent"/>
         <prop 
oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
         <prop oor:name="UserData"><value>OXML</value></prop>
-        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007–365 
VBA</value></prop>
+        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007 
VBA</value></prop>
+        <!-- ECMA 376 1st edition -->
         <prop oor:name="FileFormatVersion"><value>0</value></prop>
         <prop oor:name="Type"><value>writer_MS_Word_2007_VBA</value></prop>
         <prop oor:name="TemplateName"/>
diff --git a/filter/source/config/fragments/filters/OOXML_Text.xcu 
b/filter/source/config/fragments/filters/OOXML_Text.xcu
index ebaab6406fd6..be5089123828 100644
--- a/filter/source/config/fragments/filters/OOXML_Text.xcu
+++ b/filter/source/config/fragments/filters/OOXML_Text.xcu
@@ -16,12 +16,12 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 -->
     <node oor:name="Office Open XML Text" oor:op="replace">
-        <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER 
ENCRYPTION PASSWORDTOMODIFY</value></prop>
+        <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER 
ENCRYPTION PASSWORDTOMODIFY SUPPORTSSIGNING</value></prop>
         <prop oor:name="UIComponent"/>
         <prop 
oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
         <prop oor:name="UserData"><value></value></prop>
         <prop oor:name="UIName">
-            <value xml:lang="en-US">Office Open XML Text (Transitional)</value>
+            <value xml:lang="en-US">Word 2010-365 Document</value>
         </prop>
         <!-- ISO/IEC 29500:2008 -->
         <prop oor:name="FileFormatVersion"><value>1</value></prop>
diff --git a/filter/source/config/fragments/filters/OOXML_Text_Template.xcu 
b/filter/source/config/fragments/filters/OOXML_Text_Template.xcu
index 88fbf7047140..abd511768ea6 100644
--- a/filter/source/config/fragments/filters/OOXML_Text_Template.xcu
+++ b/filter/source/config/fragments/filters/OOXML_Text_Template.xcu
@@ -16,12 +16,12 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
 -->
     <node oor:name="Office Open XML Text Template" oor:op="replace">
-        <prop oor:name="Flags"><value>IMPORT ALIEN 3RDPARTYFILTER TEMPLATE 
TEMPLATEPATH</value></prop>
+        <prop oor:name="Flags"><value>IMPORT EXPORT ALIEN 3RDPARTYFILTER 
TEMPLATE TEMPLATEPATH</value></prop>
         <prop oor:name="UIComponent"/>
         <prop 
oor:name="FilterService"><value>com.sun.star.comp.Writer.WriterFilter</value></prop>
         <prop oor:name="UserData"><value></value></prop>
         <prop oor:name="UIName">
-            <value xml:lang="en-US">Office Open XML Text Template 
(Transitional)</value>
+            <value xml:lang="en-US">Word 2010-365 Template</value>
         </prop>
         <!-- ISO/IEC 29500:2008 -->
         <prop oor:name="FileFormatVersion"><value>1</value></prop>
diff --git a/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu 
b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu
index 75cb091cd0aa..11396057a026 100644
--- a/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu
+++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML.xcu
@@ -22,6 +22,6 @@
         <prop oor:name="MediaType"><value>application/msword</value></prop>
         <prop oor:name="Preferred"><value>true</value></prop>
         <prop oor:name="PreferredFilter"><value>MS Word 2007 XML</value></prop>
-        <prop oor:name="UIName"><value xml:lang="en-US">Word 
2007–365</value></prop>
+        <prop oor:name="UIName"><value xml:lang="en-US">Word 
2007</value></prop>
         <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop>
     </node>
diff --git 
a/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu 
b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu
index 391cc20cec3b..059e7078a40e 100644
--- a/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu
+++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_Template.xcu
@@ -22,6 +22,6 @@
         <prop oor:name="MediaType"><value>application/msword</value></prop>
         <prop oor:name="Preferred"><value>true</value></prop>
         <prop oor:name="PreferredFilter"><value>MS Word 2007 XML 
Template</value></prop>
-        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007–365 
Template</value></prop>
+        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007 
Template</value></prop>
         <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop>
     </node>
diff --git 
a/filter/source/config/fragments/types/writer_MS_Word_2007_XML_VBA.xcu 
b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_VBA.xcu
index 8a44c1e5f3a2..0519bcd7dac7 100644
--- a/filter/source/config/fragments/types/writer_MS_Word_2007_XML_VBA.xcu
+++ b/filter/source/config/fragments/types/writer_MS_Word_2007_XML_VBA.xcu
@@ -12,6 +12,6 @@
         <prop oor:name="MediaType"><value>application/msword</value></prop>
         <prop oor:name="Preferred"><value>true</value></prop>
         <prop oor:name="PreferredFilter"><value>MS Word 2007 XML 
VBA</value></prop>
-        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007–365 
VBA</value></prop>
+        <prop oor:name="UIName"><value xml:lang="en-US">Word 2007 
VBA</value></prop>
         <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop>
     </node>
diff --git a/filter/source/config/fragments/types/writer_OOXML.xcu 
b/filter/source/config/fragments/types/writer_OOXML.xcu
index 8d6a025fdac2..f3c99f7cbda6 100644
--- a/filter/source/config/fragments/types/writer_OOXML.xcu
+++ b/filter/source/config/fragments/types/writer_OOXML.xcu
@@ -23,7 +23,7 @@
         <prop oor:name="Preferred"><value>true</value></prop>
         <prop oor:name="PreferredFilter"><value>Office Open XML 
Text</value></prop>
         <prop oor:name="UIName">
-            <value>Office Open XML Text Document (Transitional)</value>
+            <value>Word 2010-365 Document</value>
         </prop>
         <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop>
     </node>
diff --git a/filter/source/config/fragments/types/writer_OOXML_Template.xcu 
b/filter/source/config/fragments/types/writer_OOXML_Template.xcu
index 39f499eb6b68..3c1fa82c6fe6 100644
--- a/filter/source/config/fragments/types/writer_OOXML_Template.xcu
+++ b/filter/source/config/fragments/types/writer_OOXML_Template.xcu
@@ -23,7 +23,7 @@
         <prop oor:name="Preferred"><value>true</value></prop>
         <prop oor:name="PreferredFilter"><value>Office Open XML Text 
Template</value></prop>
         <prop oor:name="UIName">
-            <value>Office Open XML Text Template (Transitional)</value>
+            <value>Word 2010-365 Template</value>
         </prop>
         <prop oor:name="ClipboardFormat"><value>MSWordDoc</value></prop>
     </node>
diff --git a/sw/qa/uitest/writer_tests3/save_readonly_with_password.py 
b/sw/qa/uitest/writer_tests3/save_readonly_with_password.py
index a19e97afc6de..0591ad9e0c91 100644
--- a/sw/qa/uitest/writer_tests3/save_readonly_with_password.py
+++ b/sw/qa/uitest/writer_tests3/save_readonly_with_password.py
@@ -30,7 +30,7 @@ class save_readonly_with_password(UITestCase):
                     xFileName.executeAction("TYPE", 
mkPropertyValues({"KEYCODE":"BACKSPACE"}))
                     xFileName.executeAction("TYPE", mkPropertyValues({"TEXT": 
xFilePath}))
                     xFileTypeCombo = xSaveDialog.getChild("file_type")
-                    select_by_text(xFileTypeCombo, "Office Open XML Text 
(Transitional) (.docx)")
+                    select_by_text(xFileTypeCombo, "Word 2010-365 Document 
(.docx)")
                     xPasswordCheckButton = xSaveDialog.getChild("password")
                     xPasswordCheckButton.executeAction("CLICK", tuple())
                     xOpen = xSaveDialog.getChild("open")
diff --git a/sw/qa/uitest/writer_tests7/tdf131936.py 
b/sw/qa/uitest/writer_tests7/tdf131936.py
index c7403bf2c67e..c7bf9e13cd83 100644
--- a/sw/qa/uitest/writer_tests7/tdf131936.py
+++ b/sw/qa/uitest/writer_tests7/tdf131936.py
@@ -18,7 +18,7 @@ class tdf131936(UITestCase):
             with self.ui_test.execute_dialog_through_command(".uno:SaveAs", 
close_button="cancel") as xDialog:
                 xFileTypeCombo = xDialog.getChild("file_type")
                 state = get_state_as_dict(xFileTypeCombo)
-                self.assertEqual(state["SelectEntryText"], "Office Open XML 
Text (Transitional) (.docx)")
+                self.assertEqual(state["SelectEntryText"], "Word 2010-365 
Document (.docx)")
 
 
 # vim: set shiftwidth=4 softtabstop=4 expandtab:
commit e66ddcd4b66923bc835bd7c5f5c784a809a420a2
Author:     Michael Stahl <[email protected]>
AuthorDate: Fri Feb 17 12:10:38 2023 +0100
Commit:     Michael Stahl <[email protected]>
CommitDate: Mon Feb 20 12:07:41 2023 +0000

    tdf#137883 sw: DOCX export: compatibilityMode=12 for ECMA 376 1st ed.
    
    Commit f25985c55541cbbc9a4fc79e660592d3d0485196 changed the default to
    15, but it appears that if we want an export filter "MS Word 2007 XML"
    that writes the ECMA 376 1st edition markup that's not 100% compatible
    with later versions, we should default to the corresponding
    compatibilityMode 12 (Word 2007) if that filter is used.
    
    Change-Id: Idd6e9be2c621aac954f313364249aae186318436
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147209
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <[email protected]>

diff --git a/sw/source/filter/ww8/docxexport.cxx 
b/sw/source/filter/ww8/docxexport.cxx
index a0dced9a5559..bb1da3074765 100644
--- a/sw/source/filter/ww8/docxexport.cxx
+++ b/sw/source/filter/ww8/docxexport.cxx
@@ -1236,7 +1236,7 @@ void DocxExport::WriteSettings()
 
     /* Compatibility Mode (tdf#131304)
      * 11:  .doc level    [Word 97-2003]
-     * 12:  .docx default [Word 2007]  [LO < 7.0]
+     * 12:  .docx default [Word 2007]  [LO < 7.0] [ECMA 376 1st ed.]
      * 14:                [Word 2010]
      * 15:                [Word 2013/2016/2019]  [LO >= 7.0]
      *
@@ -1249,7 +1249,9 @@ void DocxExport::WriteSettings()
      * 2.) Many years later, change the TargetCompatilityMode for new 
documents, when we no longer care
      *     about working with perfect compatibility with older versions of MS 
Word.
      */
-    sal_Int32 nTargetCompatibilityMode = 15; //older versions might not open 
our files well
+    sal_Int32 nTargetCompatibilityMode =
+        (GetFilter().getVersion() == oox::core::ECMA_376_1ST_EDITION)
+        ? 12 : 15; //older versions might not open our files well
     bool bHasCompatibilityMode = false;
     const OUString aGrabBagName = UNO_NAME_MISC_OBJ_INTEROPGRABBAG;
     if ( xPropSetInfo->hasPropertyByName( aGrabBagName ) )

Reply via email to