[Libreoffice-commits] core.git: sc/inc sc/source

2022-06-17 Thread Noel Grandin (via logerrit)
 sc/inc/cellvalue.hxx   |   13 +++-
 sc/inc/dociter.hxx |4 -
 sc/source/core/data/cellvalue.cxx  |   48 -
 sc/source/core/data/clipcontext.cxx|   18 +++---
 sc/source/core/data/column2.cxx|4 -
 sc/source/core/data/column3.cxx|6 +-
 sc/source/core/data/column4.cxx|2 
 sc/source/core/data/conditio.cxx   |8 +-
 sc/source/core/data/dociter.cxx|   18 +++---
 sc/source/core/data/document.cxx   |2 
 sc/source/core/data/documentimport.cxx |5 -
 sc/source/core/data/queryevaluator.cxx |   18 +++---
 sc/source/core/data/queryiter.cxx  |2 
 sc/source/core/data/table2.cxx |6 +-
 sc/source/core/data/table3.cxx |   20 +++
 sc/source/core/data/table4.cxx |   14 ++--
 sc/source/core/data/table5.cxx |4 -
 sc/source/core/data/table6.cxx |6 +-
 sc/source/core/data/validat.cxx|2 
 sc/source/core/tool/cellform.cxx   |4 -
 sc/source/core/tool/chartarr.cxx   |2 
 sc/source/core/tool/chgtrack.cxx   |   44 +++
 sc/source/core/tool/detfunc.cxx|6 +-
 sc/source/core/tool/interpr1.cxx   |   20 +++
 sc/source/core/tool/interpr4.cxx   |   48 -
 sc/source/core/tool/interpr5.cxx   |   18 +++---
 sc/source/core/tool/rangeseq.cxx   |2 
 sc/source/filter/dif/difexp.cxx|6 +-
 sc/source/filter/excel/xetable.cxx |2 
 sc/source/filter/html/htmlexp.cxx  |4 -
 sc/source/filter/xcl97/XclExpChangeTrack.cxx   |2 
 sc/source/filter/xml/XMLChangeTrackingExportHelper.cxx |2 
 sc/source/filter/xml/XMLChangeTrackingImportHelper.cxx |   12 ++--
 sc/source/filter/xml/xmlcelli.cxx  |4 -
 sc/source/filter/xml/xmlexprt.cxx  |6 +-
 sc/source/ui/Accessibility/AccessibleCell.cxx  |2 
 sc/source/ui/docshell/docsh.cxx|8 +-
 sc/source/ui/docshell/docsh3.cxx   |4 -
 sc/source/ui/docshell/externalrefmgr.cxx   |4 -
 sc/source/ui/docshell/impex.cxx|4 -
 sc/source/ui/undo/undocell.cxx |2 
 sc/source/ui/unoobj/cellsuno.cxx   |   18 +++---
 sc/source/ui/unoobj/chart2uno.cxx  |2 
 sc/source/ui/view/cellsh1.cxx  |2 
 sc/source/ui/view/gridwin.cxx  |8 +-
 sc/source/ui/view/output.cxx   |4 -
 sc/source/ui/view/output2.cxx  |   16 ++---
 sc/source/ui/view/tabvwsh.cxx  |2 
 sc/source/ui/view/tabvwsh5.cxx |4 -
 sc/source/ui/view/tabvwsha.cxx |2 
 sc/source/ui/view/viewfun2.cxx |2 
 51 files changed, 238 insertions(+), 228 deletions(-)

New commits:
commit 20b8c7f38ae1c03dc0405a2da006ab6b2dbf3627
Author: Noel Grandin 
AuthorDate: Fri Jun 17 19:55:58 2022 +0200
Commit: Noel Grandin 
CommitDate: Sat Jun 18 08:23:06 2022 +0200

create getter for ScCellValue::mpFormula

so we can assert that it has the correct tag type

Change-Id: Iab13a6d6ea1783c69395f06f28732769e5fe8b18
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136059
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/sc/inc/cellvalue.hxx b/sc/inc/cellvalue.hxx
index 192e499bbb25..1095d32a3d39 100644
--- a/sc/inc/cellvalue.hxx
+++ b/sc/inc/cellvalue.hxx
@@ -41,7 +41,7 @@ public:
 double mfValue1;
 svl::SharedString* mpString;
 EditTextObject* mpEditText1;
-ScFormulaCell* mpFormula;
+ScFormulaCell* mpFormula1;
 };
 
 ScCellValue();
@@ -72,6 +72,14 @@ public:
 mpEditText1 = nullptr;
 return p;
 }
+ScFormulaCell* getFormula() const { assert(meType == CELLTYPE_FORMULA); 
return mpFormula1; }
+ScFormulaCell* releaseFormula()
+{
+assert(meType == CELLTYPE_FORMULA);
+auto p = mpFormula1;
+mpFormula1 = nullptr;
+return p;
+}
 
 /**
  * Take cell value from specified position in specified document.
@@ -124,7 +132,7 @@ public:
 double mfValue1;
 const svl::SharedString* mpString;
 const EditTextObject* mpEditText1;
-ScFormulaCell* mpFormula;
+ScFormulaCell* mpFormula1;
 };
 
 ScRe

New Defects reported by Coverity Scan for LibreOffice

2022-06-17 Thread scan-admin
Hi,

Please find the latest report on new defect(s) introduced to LibreOffice found 
with Coverity Scan.

7 new defect(s) introduced to LibreOffice found with Coverity Scan.
7 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent 
build analyzed by Coverity Scan.

New defect(s) Reported-by: Coverity Scan
Showing 7 of 7 defect(s)


** CID 1506308:(CHECKED_RETURN)
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 347 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 343 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 349 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 348 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 357 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 341 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 362 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 350 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 346 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 354 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()



*** CID 1506308:(CHECKED_RETURN)
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 347 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
341 curl_easy_setopt(curl.get(), CURLOPT_URL, aURL.data());
342 
343 curl_easy_setopt(curl.get(), CURLOPT_FAILONERROR, 1L);
344 // curl_easy_setopt(curl.get(), CURLOPT_VERBOSE, 1L);
345 
346 curl_easy_setopt(curl.get(), CURLOPT_WRITEFUNCTION, WriteCallback);
>>> CID 1506308:(CHECKED_RETURN)
>>> Calling "curl_easy_setopt(curl.get(), CURLOPT_WRITEDATA, 
>>> static_cast(&response_body))" without checking return value. This 
>>> library function may fail and return an error code.
347 curl_easy_setopt(curl.get(), CURLOPT_WRITEDATA, 
static_cast(&response_body));
348 curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYPEER, false);
349 curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYHOST, false);
350 curl_easy_setopt(curl.get(), CURLOPT_TIMEOUT, CURL_TIMEOUT);
351 
352 if (method == HTTP_METHOD::HTTP_POST)
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 343 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
337 isPremium = true;
338 }
339 
340 std::string response_body;
341 curl_easy_setopt(curl.get(), CURLOPT_URL, aURL.data());
342 
>>> CID 1506308:(CHECKED_RETURN)
>>> Calling "curl_easy_setopt(curl.get(), CURLOPT_FAILONERROR, 1L)" without 
>>> checking return value. This library function may fail and return an error 
>>> code.
343 curl_easy_setopt(curl.get(), CURLOPT_FAILONERROR, 1L);
344 // curl_easy_setopt(curl.get(), CURLOPT_VERBOSE, 1L);
345 
346 curl_easy_setopt(curl.get(), CURLOPT_WRITEFUNCTION, WriteCallback);
347 curl_easy_setopt(curl.get(), CURLOPT_WRITEDATA, 
static_cast(&response_body));
348 curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYPEER, false);
/lingucomponent/source/spellcheck/languagetool/languagetoolimp.cxx: 349 in 
LanguageToolGrammarChecker::makeHttpRequest[abi:cxx11](std::basic_string_view>, HTTP_METHOD, const rtl::OString &, long &)()
343 curl_easy_setopt(curl.get(), CURLOPT_FAILONERROR, 1L);
344 // curl_easy_setopt(curl.get(), CURLOPT_VERBOSE, 1L);
345 
346 curl_easy_setopt(curl.g

[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - sfx2/source

2022-06-17 Thread xuenhua (via logerrit)
 sfx2/source/sidebar/SidebarController.cxx |9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

New commits:
commit 334b44affe24340f44216021a4699699dd5dde96
Author: xuenhua 
AuthorDate: Wed Jun 1 15:29:49 2022 +0800
Commit: Adolfo Jayme Barrientos 
CommitDate: Sat Jun 18 05:53:33 2022 +0200

tdf#149431 Fix the sidebar's width

When click the wider sidebar and then go back to the narrow one in Writer,
the narrow one becomes the same width as wider one, it's not suitable
and doesn't look good. Fix the width to smallest width unless you drag
the splitter. Take the maximum width from the smallest width and
mnWidthOnSplitterButtonDown.

Change-Id: I60aaab84593d59ac28b96c2d3c3bd62a4bbddbbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135220
Tested-by: Jenkins
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 
(cherry picked from commit 0ec2b93c28093c80572c43f7be261630bd85f232)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136039
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/sfx2/source/sidebar/SidebarController.cxx 
b/sfx2/source/sidebar/SidebarController.cxx
index cff76a95850b..088384641efd 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -506,6 +506,8 @@ void SidebarController::ProcessNewWidth (const sal_Int32 
nNewWidth)
 {
 // Deck became large enough to be shown.  Show it.
 mnSavedSidebarWidth = nNewWidth;
+// Store nNewWidth to mnWidthOnSplitterButtonDown when dragging 
sidebar Splitter
+mnWidthOnSplitterButtonDown = nNewWidth;
 if (!*mbIsDeckOpen)
 RequestOpenDeck();
 }
@@ -653,8 +655,12 @@ void SidebarController::OpenThenToggleDeck (
 if (mpCurrentDeck && mpTabBar)
 {
 sal_Int32 nRequestedWidth = mpCurrentDeck->GetMinimalWidth() + 
TabBar::GetDefaultWidth();
-if (mnSavedSidebarWidth < nRequestedWidth)
+// if sidebar was dragged
+if(mnWidthOnSplitterButtonDown > 0 && mnWidthOnSplitterButtonDown > 
nRequestedWidth){
+SetChildWindowWidth(mnWidthOnSplitterButtonDown);
+}else{
 SetChildWindowWidth(nRequestedWidth);
+}
 }
 }
 
@@ -1060,7 +1066,6 @@ IMPL_LINK(SidebarController, WindowEventHandler, 
VclWindowEvent&, rEvent, void)
 case VclEventId::WindowMouseButtonUp:
 {
 ProcessNewWidth(mpParentWindow->GetSizePixel().Width());
-mnWidthOnSplitterButtonDown = 0;
 break;
 }
 


[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - helpcontent2

2022-06-17 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit ecae3bfc98ea15bbaa94e6b1abb256e81df2b70e
Author: Olivier Hallot 
AuthorDate: Sat Jun 18 00:49:42 2022 -0300
Commit: Gerrit Code Review 
CommitDate: Sat Jun 18 05:49:42 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'libreoffice-7-4'
  to 601ecc400a58555bf3225001c8c90ae7382c3068
  - Refactor table into list in redlining_enter.xhp

Change-Id: Iba8074cd05c199f75d122955ebd4099262f7cde1
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136062
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136043
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/helpcontent2 b/helpcontent2
index 805ad055181e..601ecc400a58 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 805ad055181ec05ef35a718bef6366d091553fe7
+Subproject commit 601ecc400a58555bf3225001c8c90ae7382c3068


[Libreoffice-commits] help.git: Branch 'libreoffice-7-4' - source/text

2022-06-17 Thread Olivier Hallot (via logerrit)
 source/text/shared/guide/redlining_enter.xhp |   37 ---
 1 file changed, 11 insertions(+), 26 deletions(-)

New commits:
commit 601ecc400a58555bf3225001c8c90ae7382c3068
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 14:05:53 2022 -0300
Commit: Adolfo Jayme Barrientos 
CommitDate: Sat Jun 18 05:49:39 2022 +0200

Refactor table into list in redlining_enter.xhp

Change-Id: Iba8074cd05c199f75d122955ebd4099262f7cde1
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136062
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136043
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/source/text/shared/guide/redlining_enter.xhp 
b/source/text/shared/guide/redlining_enter.xhp
index 397aa4fdf..dc8a94a03 100644
--- a/source/text/shared/guide/redlining_enter.xhp
+++ b/source/text/shared/guide/redlining_enter.xhp
@@ -36,32 +36,17 @@
 
   The review function is available in 
%PRODUCTNAME for text documents and spreadsheet documents.
   Not all 
changes are recorded. For example, the changing of a tab stop from align left 
to align right is not recorded. However, all usual changes made by a 
proofreader are recorded, such as additions, deletions, text alterations, and 
usual formatting.
-  
- 
-
-   1.
-
-
-   To start recording changes, open the document to be edited and 
choose Edit - Track Changes and then choose 
Record.
-
- 
- 
-
-   2.
-
-
-   Now start making your changes. You will note that all new text 
passages that you enter are underlined in color, while all text that you delete 
remains visible but is crossed out and shown in color.
-
- 
- 
-
-   3.
-
-
-   If you move to a marked change with the mouse pointer, you 
will see a reference to the type of change, the author, date and time of day 
for the change in the Help Tip. If the Extended Tips are also enabled, you will 
also see any available comments on this change.
-
- 
-  
+  
+ 
+To 
start recording changes, open the document to be edited and choose Edit - 
Track Changes and then choose Record.
+ 
+ 
+Now 
start making your changes. You will note that all new text passages that you 
enter are underlined in color, while all text that you delete remains visible 
but is crossed out and shown in color.
+ 
+ 
+If 
you move to a marked change with the mouse pointer, you will see a reference to 
the type of change, the author, date and time of day for the change in the Help 
Tip. If the Extended Tips are also enabled, you will also see any available 
comments on this change.
+ 
+  
 
 Changes in a 
spreadsheet document are highlighted by a border around the cells; when you 
point to the cell you can see more detailed information on this change in the 
Help Tip.
 You can enter 
a comment on each recorded change by placing the cursor in the area of the 
change and then choosing Edit - Track Changes - Comment. In 
addition to Extended Tips, the comment is also displayed in the list in the 
Manage 
Changes dialog.


[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - icon-themes/breeze icon-themes/breeze_dark icon-themes/breeze_dark_svg icon-themes/breeze_svg

2022-06-17 Thread Rizal Muttaqin (via logerrit)
 icon-themes/breeze/cmd/32/numberformatstandard.png  |binary
 icon-themes/breeze/cmd/lc_numberformatstandard.png  |binary
 icon-themes/breeze/cmd/sc_numberformatstandard.png  |binary
 icon-themes/breeze_dark/cmd/32/numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/lc_numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/sc_numberformatstandard.png |binary
 icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg |2 +-
 icon-themes/breeze_svg/cmd/32/numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/lc_numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/sc_numberformatstandard.svg  |2 +-
 12 files changed, 6 insertions(+), 6 deletions(-)

New commits:
commit 4aa61f7cf13cfc2bc9f0af0a4ac2110d350e7bc1
Author: Rizal Muttaqin 
AuthorDate: Sat Jun 18 06:15:36 2022 +0700
Commit: Adolfo Jayme Barrientos 
CommitDate: Sat Jun 18 05:49:18 2022 +0200

Breeze: tdf#138400 update General Format icons

Change-Id: I7daad09129c505e300d84634768f4bcf14653500
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136069
Tested-by: Jenkins
Reviewed-by: Rizal Muttaqin 
(cherry picked from commit 4207f5c291902cd157f204e4f025b040f4445912)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136041
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/icon-themes/breeze/cmd/32/numberformatstandard.png 
b/icon-themes/breeze/cmd/32/numberformatstandard.png
index 6d62ceb41ea0..61fae2e336d5 100644
Binary files a/icon-themes/breeze/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png
index 74a147cb37f3..92d43df0ace7 100644
Binary files a/icon-themes/breeze/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png
index ac4a5a63769b..de70d8c03b6c 100644
Binary files a/icon-themes/breeze/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png
index 935aeebe9d9a..86990019ffdd 100644
Binary files a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png
index 1be34291425b..c91e8d16ec17 100644
Binary files a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png
index 665e7c94d403..42014a50a60c 100644
Binary files a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
index aac100dec0d2..8cd40178d134 100644
--- a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
index 197c9b1c92aa..fd753956ca08 100644
--- a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
index b0c3ed78d068..0813936ea98a 100644
--- a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>/>
\ No newline at end of file
+http://www.w3.org/2000/svg";>/>
\ No newline at end of file
diff --git a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
index 34fcdc4602b3..106fcd973da0 100644
--- a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http:/

[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - icon-themes/breeze icon-themes/breeze_dark icon-themes/breeze_dark_svg icon-themes/breeze_svg

2022-06-17 Thread Rizal Muttaqin (via logerrit)
 icon-themes/breeze/cmd/32/numberformatstandard.png  |binary
 icon-themes/breeze/cmd/lc_numberformatstandard.png  |binary
 icon-themes/breeze/cmd/sc_numberformatstandard.png  |binary
 icon-themes/breeze_dark/cmd/32/numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/lc_numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/sc_numberformatstandard.png |binary
 icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg |2 +-
 icon-themes/breeze_svg/cmd/32/numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/lc_numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/sc_numberformatstandard.svg  |2 +-
 12 files changed, 6 insertions(+), 6 deletions(-)

New commits:
commit 00aa201a90885e4d973fd05e5976977a9d87737b
Author: Rizal Muttaqin 
AuthorDate: Sat Jun 18 06:15:36 2022 +0700
Commit: Adolfo Jayme Barrientos 
CommitDate: Sat Jun 18 05:48:32 2022 +0200

Breeze: tdf#138400 update General Format icons

Change-Id: I7daad09129c505e300d84634768f4bcf14653500
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136069
Tested-by: Jenkins
Reviewed-by: Rizal Muttaqin 
(cherry picked from commit 4207f5c291902cd157f204e4f025b040f4445912)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136040
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/icon-themes/breeze/cmd/32/numberformatstandard.png 
b/icon-themes/breeze/cmd/32/numberformatstandard.png
index 6d62ceb41ea0..61fae2e336d5 100644
Binary files a/icon-themes/breeze/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png
index 74a147cb37f3..92d43df0ace7 100644
Binary files a/icon-themes/breeze/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png
index ac4a5a63769b..de70d8c03b6c 100644
Binary files a/icon-themes/breeze/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png
index 935aeebe9d9a..86990019ffdd 100644
Binary files a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png
index 1be34291425b..c91e8d16ec17 100644
Binary files a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png
index 665e7c94d403..42014a50a60c 100644
Binary files a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
index aac100dec0d2..8cd40178d134 100644
--- a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
index 197c9b1c92aa..fd753956ca08 100644
--- a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
index b0c3ed78d068..0813936ea98a 100644
--- a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>/>
\ No newline at end of file
+http://www.w3.org/2000/svg";>/>
\ No newline at end of file
diff --git a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
index 34fcdc4602b3..106fcd973da0 100644
--- a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http:/

[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - helpcontent2

2022-06-17 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 7443be96c83604c7bf5d833fba6c3a4abb77f1ee
Author: Olivier Hallot 
AuthorDate: Sat Jun 18 05:46:15 2022 +0200
Commit: Gerrit Code Review 
CommitDate: Sat Jun 18 05:46:15 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'libreoffice-7-4'
  to 805ad055181ec05ef35a718bef6366d091553fe7
  - Mute l10n

Change-Id: Ie3f063c53f424293da59e85e4a34334f37d4324c
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136021
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 665f218e5e027ab3ad56bf6066d98d8323555ab3)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136042
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/helpcontent2 b/helpcontent2
index 9c49f2a9e814..805ad055181e 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 9c49f2a9e8140358395e423ccf1c07b7b4af1a15
+Subproject commit 805ad055181ec05ef35a718bef6366d091553fe7


[Libreoffice-commits] help.git: Branch 'libreoffice-7-4' - source/text

2022-06-17 Thread Olivier Hallot (via logerrit)
 source/text/smath/guide/limits.xhp |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 805ad055181ec05ef35a718bef6366d091553fe7
Author: Olivier Hallot 
AuthorDate: Thu Jun 16 21:37:54 2022 +0200
Commit: Adolfo Jayme Barrientos 
CommitDate: Sat Jun 18 05:46:11 2022 +0200

Mute l10n

Change-Id: Ie3f063c53f424293da59e85e4a34334f37d4324c
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136021
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 
(cherry picked from commit 665f218e5e027ab3ad56bf6066d98d8323555ab3)
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136042
Reviewed-by: Adolfo Jayme Barrientos 

diff --git a/source/text/smath/guide/limits.xhp 
b/source/text/smath/guide/limits.xhp
index 282f1fb66..65b4d02c0 100644
--- a/source/text/smath/guide/limits.xhp
+++ b/source/text/smath/guide/limits.xhp
@@ -33,7 +33,7 @@
 You want to 
insert a summation formula like "summation of s^k from k = 0 to n" at the 
cursor in a Writer text document.
 
 
-
+
 You see the 
Math input window and the Elements pane on the left.
 
 
@@ -64,7 +64,7 @@
 In the same 
way, you can enter an Integral formula with limits. When you click an icon from 
the Elements pane, the assigned text command is inserted in the input window. 
If you know the text commands, you can enter the commands directly in the input 
window.
 
 
-
+
 
 
 Click in the 
input window and enter the following line:


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - vcl/source

2022-06-17 Thread Xisco Fauli (via logerrit)
 vcl/source/window/layout.cxx |9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

New commits:
commit 9ca2a827de1b7f3180975ce750674169986c5978
Author: Xisco Fauli 
AuthorDate: Thu May 26 16:45:30 2022 +0200
Commit: Aron Budea 
CommitDate: Sat Jun 18 03:21:41 2022 +0200

tdf#147844: Use sanity check only if LibreOfficeKit is active

Regression from 2b58a0979f9206cfca6d78cb2f3d5e65cd735f8b
"Add sanity check to avoid potential crash in the Collabora Online
server"

Change-Id: I2fcfb634b47f9d76f8efbbd64a8e69ea236894c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135024
Tested-by: Jenkins
Reviewed-by: Miklos Vajna 
(cherry picked from commit b7efccde76ca7bfa181fff39c52282e87e940614)

Related: tdf#147844 still log the discrepancy

Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135367
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 
Reviewed-by: Aron Budea 
(cherry picked from commit 08850dbead8a8a797965aaa97d43d639bc0814d3)

Change-Id: I2fcfb634b47f9d76f8efbbd64a8e69ea236894c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136065
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Aron Budea 

diff --git a/vcl/source/window/layout.cxx b/vcl/source/window/layout.cxx
index 995ae09a0c9e..c38790b6b2df 100644
--- a/vcl/source/window/layout.cxx
+++ b/vcl/source/window/layout.cxx
@@ -14,6 +14,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -283,10 +284,14 @@ void VclBox::setAllocation(const Size &rAllocation)
 // Though the dialogs are rendered in javascript for LOK Android some widgets 
like weld::DrawingArea
 // is sent as bitmap but it is rendered from only the visible part
 // when it gets negative, it shrinks instead of expands and it becomes 
invisible
+
 if (nExtraSpace < 0)
 {
-SAL_WARN("vcl.layout", "nExtraSpace went negative, setting to 
zero");
-nExtraSpace = 0;
+SAL_WARN("vcl.layout", "nExtraSpace went negative for VclBox: " << 
GetHelpId());
+if (comphelper::LibreOfficeKit::isActive())
+{
+nExtraSpace = 0;
+}
 }
 }
 


[Libreoffice-commits] core.git: icon-themes/breeze icon-themes/breeze_dark icon-themes/breeze_dark_svg icon-themes/breeze_svg

2022-06-17 Thread Rizal Muttaqin (via logerrit)
 icon-themes/breeze/cmd/32/numberformatstandard.png  |binary
 icon-themes/breeze/cmd/lc_numberformatstandard.png  |binary
 icon-themes/breeze/cmd/sc_numberformatstandard.png  |binary
 icon-themes/breeze_dark/cmd/32/numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/lc_numberformatstandard.png |binary
 icon-themes/breeze_dark/cmd/sc_numberformatstandard.png |binary
 icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg |2 +-
 icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg |2 +-
 icon-themes/breeze_svg/cmd/32/numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/lc_numberformatstandard.svg  |2 +-
 icon-themes/breeze_svg/cmd/sc_numberformatstandard.svg  |2 +-
 12 files changed, 6 insertions(+), 6 deletions(-)

New commits:
commit ca47989ad60b1414f92be22a1fbf4c1d1a92dd97
Author: Rizal Muttaqin 
AuthorDate: Sat Jun 18 06:15:36 2022 +0700
Commit: Rizal Muttaqin 
CommitDate: Sat Jun 18 02:34:52 2022 +0200

Breeze: tdf#138400 update General Format icons

Change-Id: I7daad09129c505e300d84634768f4bcf14653500
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136069
Tested-by: Jenkins
Reviewed-by: Rizal Muttaqin 

diff --git a/icon-themes/breeze/cmd/32/numberformatstandard.png 
b/icon-themes/breeze/cmd/32/numberformatstandard.png
index 6d62ceb41ea0..61fae2e336d5 100644
Binary files a/icon-themes/breeze/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png
index 74a147cb37f3..92d43df0ace7 100644
Binary files a/icon-themes/breeze/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png
index ac4a5a63769b..de70d8c03b6c 100644
Binary files a/icon-themes/breeze/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png
index 935aeebe9d9a..86990019ffdd 100644
Binary files a/icon-themes/breeze_dark/cmd/32/numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/32/numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png
index 1be34291425b..c91e8d16ec17 100644
Binary files a/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/lc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png
index 665e7c94d403..42014a50a60c 100644
Binary files a/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png and 
b/icon-themes/breeze_dark/cmd/sc_numberformatstandard.png differ
diff --git a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
index aac100dec0d2..8cd40178d134 100644
--- a/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
index 197c9b1c92aa..fd753956ca08 100644
--- a/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/lc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg 
b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
index b0c3ed78d068..0813936ea98a 100644
--- a/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
+++ b/icon-themes/breeze_dark_svg/cmd/sc_numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>/>
\ No newline at end of file
+http://www.w3.org/2000/svg";>/>
\ No newline at end of file
diff --git a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg 
b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
index 34fcdc4602b3..106fcd973da0 100644
--- a/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
+++ b/icon-themes/breeze_svg/cmd/32/numberformatstandard.svg
@@ -1 +1 @@
-http://www.w3.org/2000/svg";>
\ No newline at end of file
+http://www.w3.org/2000/svg";>
\ No newline at end of file
diff --git a/icon-themes/breeze_svg/cmd/lc_numberformatstandard.svg 
b/icon-themes/breeze_svg/cmd/lc_numberformatstandard.svg
index 2ebb

[Libreoffice-commits] core.git: sc/source

2022-06-17 Thread Eike Rathke (via logerrit)
 sc/source/core/tool/odffmap.cxx |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit f804b8d0b1fc0c215c8883c76344b2d256d5c003
Author: Eike Rathke 
AuthorDate: Fri Jun 17 23:53:34 2022 +0200
Commit: Eike Rathke 
CommitDate: Sat Jun 18 01:53:49 2022 +0200

Remove comment of long removed MapDupToInternal field

Change-Id: I0fd78eb1ff1fedf0ddb9728b06a3ee6de7973329
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136066
Reviewed-by: Eike Rathke 
Tested-by: Jenkins

diff --git a/sc/source/core/tool/odffmap.cxx b/sc/source/core/tool/odffmap.cxx
index 112854f4a71c..1a469208fc35 100644
--- a/sc/source/core/tool/odffmap.cxx
+++ b/sc/source/core/tool/odffmap.cxx
@@ -19,8 +19,8 @@
 
 #include 
 
-// ODFF, English, MapDupToInternal when writing ODFF, Programmatical, ODF_11
-// functions duplicated to internal when writing ODFF are listed in static 
const XclFunctionInfo saFuncTable_4[]
+// ODFF, English, Programmatical, ODF_11
+// Functions duplicated to internal when writing ODFF are listed in static 
const XclFunctionInfo saFuncTable_4[]
 const ScCompiler::AddInMap ScCompiler::g_aAddInMap[] =
 {
 { "ORG.OPENOFFICE.WEEKS", "WEEKS", 
"com.sun.star.sheet.addin.DateFunctions.getDiffWeeks", 
"COM.SUN.STAR.SHEET.ADDIN.DATEFUNCTIONS.GETDIFFWEEKS" },


[Libreoffice-commits] core.git: helpcontent2

2022-06-17 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 72a33ebe0a50f289d1842881638ae763c2f2449c
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 20:03:01 2022 -0300
Commit: Gerrit Code Review 
CommitDate: Sat Jun 18 01:03:01 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to 65290dc95fe2efb330ac54ecf9d771984b4e5c9d
  - TDF#147862 (part) Update toolbar contents Help pages

+ Upgraded the Tools toolbar help page
+ several fixes in embeded files
+ bug147862 still work in progress

Change-Id: I35238075f6a917a8d7c39bfb5cbf6a5a6ebc783b
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136063
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/helpcontent2 b/helpcontent2
index 3647d4f0a70c..65290dc95fe2 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a
+Subproject commit 65290dc95fe2efb330ac54ecf9d771984b4e5c9d


[Libreoffice-commits] help.git: source/text

2022-06-17 Thread Olivier Hallot (via logerrit)
 source/text/shared/00/0406.xhp|   15 +++-
 source/text/shared/01/0305.xhp|9 
 source/text/shared/01/0306.xhp|6 +--
 source/text/shared/01/0602.xhp|2 -
 source/text/shared/01/0603.xhp|   27 ++
 source/text/swriter/00/0004.xhp   |   42 ---
 source/text/swriter/00/0403.xhp   |9 +---
 source/text/swriter/00/0406.xhp   |2 -
 source/text/swriter/01/0312.xhp   |4 +-
 source/text/swriter/01/0603.xhp   |   25 ++---
 source/text/swriter/02/1801.xhp   |   47 +++---
 source/text/swriter/02/1812.xhp   |9 ++--
 source/text/swriter/02/1813.xhp   |   19 ++
 source/text/swriter/main0200.xhp  |8 ++--
 source/text/swriter/track_changes_toolbar.xhp |4 +-
 15 files changed, 115 insertions(+), 113 deletions(-)

New commits:
commit 65290dc95fe2efb330ac54ecf9d771984b4e5c9d
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 16:17:02 2022 -0300
Commit: Olivier Hallot 
CommitDate: Sat Jun 18 01:02:59 2022 +0200

TDF#147862 (part) Update toolbar contents Help pages

+ Upgraded the Tools toolbar help page
+ several fixes in embeded files
+ bug147862 still work in progress

Change-Id: I35238075f6a917a8d7c39bfb5cbf6a5a6ebc783b
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136063
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/source/text/shared/00/0406.xhp 
b/source/text/shared/00/0406.xhp
index a6903a822..901af13de 100644
--- a/source/text/shared/00/0406.xhp
+++ b/source/text/shared/00/0406.xhp
@@ -68,7 +68,20 @@
 Choose Tools - Spelling, then click 
Options.
 
 Choose 
Tools - Thesaurus.
-CommandCtrl+F7
+CommandCtrl+F7
+On the 
Tools bar, click
+
+
+
+
+Icon Thesaurus
+
+
+
+Thesaurus
+
+
+
 
 
 Choose 
Tools - Color Replacer ($[officename] Draw and $[officename] 
Impress).
diff --git a/source/text/shared/01/0305.xhp 
b/source/text/shared/01/0305.xhp
index 915910a56..64214960f 100644
--- a/source/text/shared/01/0305.xhp
+++ b/source/text/shared/01/0305.xhp
@@ -32,11 +32,18 @@
 tools bar
 
 
-Tools Bar
+Tools Bar
   Shows or hides the Tools 
bar.
 
 
   
 
+The Tools 
bar contains the following icons:
+
+
+
+
+
+
 
 
diff --git a/source/text/shared/01/0306.xhp 
b/source/text/shared/01/0306.xhp
index 08f8bd1b2..f6cc05e2b 100644
--- a/source/text/shared/01/0306.xhp
+++ b/source/text/shared/01/0306.xhp
@@ -39,10 +39,10 @@
 
 
 can remove this switch when there are related 
topics for BASE and DRAW
-
-
+
+
 
-
+
 
 
 
diff --git a/source/text/shared/01/0602.xhp 
b/source/text/shared/01/0602.xhp
index ab0549fd7..5f0186e93 100644
--- a/source/text/shared/01/0602.xhp
+++ b/source/text/shared/01/0602.xhp
@@ -30,7 +30,7 @@
 
 
 
-Thesaurus
+Thesaurus
 Opens a dialog box to replace the 
current word with a synonym, or a related term.
 
 
diff --git a/source/text/shared/01/0603.xhp 
b/source/text/shared/01/0603.xhp
index 1dbcd9b8b..4d7cda45a 100644
--- a/source/text/shared/01/0603.xhp
+++ b/source/text/shared/01/0603.xhp
@@ -1,6 +1,4 @@
 
-
-
 
-
 
 
 
@@ -31,7 +28,7 @@
 
 
 
-Color 
Replacer
+Color Replacer
 Opens the Color Replacer dialog, where you can replace colors in bitmap 
and meta file graphics.
 
 You can 
replace up to four different colors at one time.
@@ -46,12 +43,12 @@
 
 
 
-
+
 
 Icon

 
-
+
 Color 
Replacer
 
 
@@ -60,39 +57,39 @@
 
 Select one of the four source color boxes. Move the mouse 
pointer over the selected image, and then click the color that you want to 
replace.
 
-Color 
Replacer color
+Color Replacer color
 Displays the color in the selected image that directly underlies the 
current mouse pointer position. This features only works if the Color Replacer 
tool is selected.
 
-Replace
+Replace
 Replaces the selected source colors in 
the current image with the colors that you specify in the Replace with 
boxes.
-Colors
+Colors
 Lists the 
source colors and the replacement colors.
 
 
 
 
-Source 
color checkbox
+Source color checkbox
 Select this checkbox to replace the current Source color 
with the color that you specify in the Replace with 
box.
 
-Source 
color
+Source color
 Displays the color in the selected image that you want to replace. To 
set the source color, click here, click the Color Replacer, and then click a 
color in the selected image.
 
 
 
 
-Tolerance
+Tolerance
 Set the tolerance for replacing a source color in the source image. To 
replace colors that are similar to the color that you selected, enter a low 
value. To replace a wider range of colors, enter

[Libreoffice-commits] core.git: helpcontent2

2022-06-17 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit d8bc56ca9a6ce3fffb4ba2379c6a3f39211f6271
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 16:41:07 2022 -0300
Commit: Gerrit Code Review 
CommitDate: Fri Jun 17 21:41:07 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a
  - Refactor table into list in redlining_enter.xhp

Change-Id: Iba8074cd05c199f75d122955ebd4099262f7cde1
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136062
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/helpcontent2 b/helpcontent2
index 665f218e5e02..3647d4f0a70c 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 665f218e5e027ab3ad56bf6066d98d8323555ab3
+Subproject commit 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a


[Libreoffice-commits] help.git: source/text

2022-06-17 Thread Olivier Hallot (via logerrit)
 source/text/shared/guide/redlining_enter.xhp |   37 ---
 1 file changed, 11 insertions(+), 26 deletions(-)

New commits:
commit 3647d4f0a70cfdf67d03e725ceff0b2b1d14505a
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 14:05:53 2022 -0300
Commit: Olivier Hallot 
CommitDate: Fri Jun 17 21:41:04 2022 +0200

Refactor table into list in redlining_enter.xhp

Change-Id: Iba8074cd05c199f75d122955ebd4099262f7cde1
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136062
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/source/text/shared/guide/redlining_enter.xhp 
b/source/text/shared/guide/redlining_enter.xhp
index 397aa4fdf..dc8a94a03 100644
--- a/source/text/shared/guide/redlining_enter.xhp
+++ b/source/text/shared/guide/redlining_enter.xhp
@@ -36,32 +36,17 @@
 
   The review function is available in 
%PRODUCTNAME for text documents and spreadsheet documents.
   Not all 
changes are recorded. For example, the changing of a tab stop from align left 
to align right is not recorded. However, all usual changes made by a 
proofreader are recorded, such as additions, deletions, text alterations, and 
usual formatting.
-  
- 
-
-   1.
-
-
-   To start recording changes, open the document to be edited and 
choose Edit - Track Changes and then choose 
Record.
-
- 
- 
-
-   2.
-
-
-   Now start making your changes. You will note that all new text 
passages that you enter are underlined in color, while all text that you delete 
remains visible but is crossed out and shown in color.
-
- 
- 
-
-   3.
-
-
-   If you move to a marked change with the mouse pointer, you 
will see a reference to the type of change, the author, date and time of day 
for the change in the Help Tip. If the Extended Tips are also enabled, you will 
also see any available comments on this change.
-
- 
-  
+  
+ 
+To 
start recording changes, open the document to be edited and choose Edit - 
Track Changes and then choose Record.
+ 
+ 
+Now 
start making your changes. You will note that all new text passages that you 
enter are underlined in color, while all text that you delete remains visible 
but is crossed out and shown in color.
+ 
+ 
+If 
you move to a marked change with the mouse pointer, you will see a reference to 
the type of change, the author, date and time of day for the change in the Help 
Tip. If the Extended Tips are also enabled, you will also see any available 
comments on this change.
+ 
+  
 
 Changes in a 
spreadsheet document are highlighted by a border around the cells; when you 
point to the cell you can see more detailed information on this change in the 
Help Tip.
 You can enter 
a comment on each recorded change by placing the cursor in the area of the 
change and then choosing Edit - Track Changes - Comment. In 
addition to Extended Tips, the comment is also displayed in the list in the 
Manage 
Changes dialog.


[Libreoffice-commits] core.git: sfx2/source

2022-06-17 Thread xuenhua (via logerrit)
 sfx2/source/sidebar/SidebarController.cxx |9 +++--
 1 file changed, 7 insertions(+), 2 deletions(-)

New commits:
commit 0ec2b93c28093c80572c43f7be261630bd85f232
Author: xuenhua 
AuthorDate: Wed Jun 1 15:29:49 2022 +0800
Commit: Caolán McNamara 
CommitDate: Fri Jun 17 20:52:05 2022 +0200

tdf#149431 Fix the sidebar's width

When click the wider sidebar and then go back to the narrow one in Writer,
the narrow one becomes the same width as wider one, it's not suitable
and doesn't look good. Fix the width to smallest width unless you drag
the splitter. Take the maximum width from the smallest width and
mnWidthOnSplitterButtonDown.

Change-Id: I60aaab84593d59ac28b96c2d3c3bd62a4bbddbbe
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135220
Tested-by: Jenkins
Tested-by: Caolán McNamara 
Reviewed-by: Caolán McNamara 

diff --git a/sfx2/source/sidebar/SidebarController.cxx 
b/sfx2/source/sidebar/SidebarController.cxx
index cff76a95850b..088384641efd 100644
--- a/sfx2/source/sidebar/SidebarController.cxx
+++ b/sfx2/source/sidebar/SidebarController.cxx
@@ -506,6 +506,8 @@ void SidebarController::ProcessNewWidth (const sal_Int32 
nNewWidth)
 {
 // Deck became large enough to be shown.  Show it.
 mnSavedSidebarWidth = nNewWidth;
+// Store nNewWidth to mnWidthOnSplitterButtonDown when dragging 
sidebar Splitter
+mnWidthOnSplitterButtonDown = nNewWidth;
 if (!*mbIsDeckOpen)
 RequestOpenDeck();
 }
@@ -653,8 +655,12 @@ void SidebarController::OpenThenToggleDeck (
 if (mpCurrentDeck && mpTabBar)
 {
 sal_Int32 nRequestedWidth = mpCurrentDeck->GetMinimalWidth() + 
TabBar::GetDefaultWidth();
-if (mnSavedSidebarWidth < nRequestedWidth)
+// if sidebar was dragged
+if(mnWidthOnSplitterButtonDown > 0 && mnWidthOnSplitterButtonDown > 
nRequestedWidth){
+SetChildWindowWidth(mnWidthOnSplitterButtonDown);
+}else{
 SetChildWindowWidth(nRequestedWidth);
+}
 }
 }
 
@@ -1060,7 +1066,6 @@ IMPL_LINK(SidebarController, WindowEventHandler, 
VclWindowEvent&, rEvent, void)
 case VclEventId::WindowMouseButtonUp:
 {
 ProcessNewWidth(mpParentWindow->GetSizePixel().Width());
-mnWidthOnSplitterButtonDown = 0;
 break;
 }
 


[Libreoffice-commits] core.git: include/tools tools/source

2022-06-17 Thread Jan-Marek Glogowski (via logerrit)
 include/tools/gen.hxx|   30 +-
 tools/source/generic/gen.cxx |   17 -
 2 files changed, 29 insertions(+), 18 deletions(-)

New commits:
commit 80d801cf07b6583e824ad89c3c750b076118f41d
Author: Jan-Marek Glogowski 
AuthorDate: Tue Jun 14 05:37:30 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Fri Jun 17 20:41:28 2022 +0200

Rectangle: split SetSize into SetWidth/SetHeight

... and inline the functions.

Change-Id: I9285c72e8524f8f0a2d242bfd4cd29edf6d1ed73
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135811
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/include/tools/gen.hxx b/include/tools/gen.hxx
index 7a8e66e2a6ff..ab8b443ca403 100644
--- a/include/tools/gen.hxx
+++ b/include/tools/gen.hxx
@@ -537,7 +537,9 @@ public:
 /// Set the top edge of the rectangle to y, preserving the height
 inline void SetPosY(tools::Long y);
 inline void SetPos( const Point& rPoint );
-voidSetSize( const Size& rSize );
+inline void SetWidth(tools::Long);
+inline void SetHeight(tools::Long);
+inline void SetSize(const Size&);
 
 constexpr Point GetPos() const { return TopLeft(); }
 constexpr Size GetSize() const { return { GetWidth(), GetHeight() }; }
@@ -671,6 +673,32 @@ inline void tools::Rectangle::SetPos( const Point& rPoint )
 SetPosY(rPoint.Y());
 }
 
+inline void tools::Rectangle::SetWidth(tools::Long nWidth)
+{
+if (nWidth < 0)
+nRight = nLeft + nWidth + 1;
+else if (nWidth > 0)
+nRight = nLeft + nWidth - 1;
+else
+SetWidthEmpty();
+}
+
+inline void tools::Rectangle::SetHeight(tools::Long nHeight)
+{
+if (nHeight < 0)
+nBottom = nTop + nHeight + 1;
+else if (nHeight > 0)
+nBottom = nTop + nHeight - 1;
+else
+SetHeightEmpty();
+}
+
+inline void tools::Rectangle::SetSize(const Size& rSize)
+{
+SetWidth(rSize.Width());
+SetHeight(rSize.Height());
+}
+
 constexpr inline tools::Long tools::Rectangle::GetWidth() const
 {
 tools::Long n = 0;
diff --git a/tools/source/generic/gen.cxx b/tools/source/generic/gen.cxx
index 27120d6abbd1..069b7482cfba 100644
--- a/tools/source/generic/gen.cxx
+++ b/tools/source/generic/gen.cxx
@@ -42,23 +42,6 @@ size_t Pair::GetHashValue() const
 return hash;
 }
 
-void tools::Rectangle::SetSize( const Size& rSize )
-{
-if ( rSize.Width() < 0 )
-nRight  = nLeft + rSize.Width() +1;
-else if ( rSize.Width() > 0 )
-nRight  = nLeft + rSize.Width() -1;
-else
-SetWidthEmpty();
-
-if ( rSize.Height() < 0 )
-nBottom  = nTop + rSize.Height() +1;
-else if ( rSize.Height() > 0 )
-nBottom  = nTop + rSize.Height() -1;
-else
-SetHeightEmpty();
-}
-
 void tools::Rectangle::SaturatingSetSize(const Size& rSize)
 {
 if (rSize.Width() < 0)


[Libreoffice-commits] core.git: include/vcl vcl/inc

2022-06-17 Thread Jan-Marek Glogowski (via logerrit)
 include/vcl/WindowPosSize.hxx |5 +++--
 include/vcl/windowstate.hxx   |   29 +
 vcl/inc/salgeom.hxx   |2 +-
 3 files changed, 33 insertions(+), 3 deletions(-)

New commits:
commit e2a8b4a420ab0f726c43ec6c609d17211cd6ed11
Author: Jan-Marek Glogowski 
AuthorDate: Sun Jun 12 08:01:32 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Fri Jun 17 20:27:50 2022 +0200

Fix and add ostreams for vcl::WindowPosSize

... and inheriting classes.

Follow-up on commit ea5a0918c8c32309821ab239c4b95f4d6a3b5c12
("VCL add vcl::WindowPosSize abstract class").

Change-Id: I4733cd4619f91fe1ba05c208a650be591ecf5d8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135806
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/include/vcl/WindowPosSize.hxx b/include/vcl/WindowPosSize.hxx
index ed52488be33a..6c5484c47b30 100644
--- a/include/vcl/WindowPosSize.hxx
+++ b/include/vcl/WindowPosSize.hxx
@@ -124,9 +124,10 @@ public:
 void setPosSize(const Point& rPos, const Size& rSize) { setPosSize({ rPos, 
rSize }); }
 };
 
-inline std::ostream& operator<<(std::ostream& s, const WindowPosSize& rGeom)
+inline std::ostream& operator<<(std::ostream& s, const WindowPosSize& rPosSize)
 {
-s << rGeom.width() << "x" << rGeom.height() << "@(" << rGeom.x() << "," << 
rGeom.y() << ")";
+s << rPosSize.width() << "x" << rPosSize.height() << "@(" << rPosSize.x() 
<< "," << rPosSize.y()
+  << ")";
 return s;
 }
 
diff --git a/include/vcl/windowstate.hxx b/include/vcl/windowstate.hxx
index 772d5c397f76..ed3cbf1a7f6e 100644
--- a/include/vcl/windowstate.hxx
+++ b/include/vcl/windowstate.hxx
@@ -115,6 +115,35 @@ template <> struct typed_flags : 
is_typed_flags(rData.state()) << 
std::dec;
+else
+s << "?";
+return s;
+}
+
+} // namespace vcl
+
 #endif // INCLUDED_VCL_WINDOWSTATE_HXX
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/inc/salgeom.hxx b/vcl/inc/salgeom.hxx
index 63675b6d9ceb..1b19931c5c50 100644
--- a/vcl/inc/salgeom.hxx
+++ b/vcl/inc/salgeom.hxx
@@ -98,7 +98,7 @@ public:
 
 inline std::ostream& operator<<(std::ostream& s, const SalFrameGeometry& rGeom)
 {
-s << static_cast(&rGeom) << ":{" << 
rGeom.leftDecoration() << ","
+s << *static_cast(&rGeom) << ":{" << 
rGeom.leftDecoration() << ","
   << rGeom.topDecoration() << "," << rGeom.rightDecoration() << "," << 
rGeom.bottomDecoration()
   << "}s" << rGeom.screen();
 return s;


Re: How to write OOXML attribute 'vert' of element to ODF?

2022-06-17 Thread Regina Henschel

Hi Mark,

Mark Hung schrieb am 17.06.2022 um 17:17:

Hi Regina,

Regina Henschel > 於 2022年6月16日 週四 晚上8:49寫道:


Hi all,

Currently the "vert" attribute of  element is connected to
TextPreRotateAngle property. vert="vert" produces
TextPreRotateAngle=-90
and vert="vert270" produces TextPreRotateAngle=-270. When converting it
to ODF it produces draw:text-rotate-angle="-90" and
draw:text-rotate-angle="-270".

That approach does not work, because the ODF attribute
draw:text-rotate-angle produces a rotation of the text area rectangle,
same as the 'rot' attribute of element  in OOXML. Try with
attached file the export to ODF and reload to see the problem.

For using draw:text-rotate-angle attribute it would be necessary to
change the values of the draw:text-areas attribute in addition. But
this
requires introducing additional equations and it conflicts with the
definitions of the predefined shapes of the presets.

My idea is to introduce a new loext:text-direction attribute of the
 element, which can carry each of the values of
the OOXML attribute 'vert'. "Each" needs to be discussed, perhaps
better
to exclude values eaVert and mongolianVert, which in fact are writing
modes TB_RL and TB_LR. Possible values would be ("eaVert"), "horz",
("mongolianVert"), "vert", "vert270", "wordArtVert" and
"wordArtVertRtl".


It's not clear to me why you think eaVert, and mongolianVert should be 
excluded here.

Maybe you can explain further.


vert="eaVert" in a shape describes the same as WritingMode2::RL_TB and 
WritingMode::RL_TB. vert="mongolianVert" in a shape describes the same 
as WringingMode::TB_LR. Setting the writing mode is already used for 
"eaVert" in 
https://opengrok.libreoffice.org/xref/core/oox/source/shape/WpsContext.cxx?r=adf7d6ef#70
So it might be better to use that too in 
https://opengrok.libreoffice.org/xref/core/oox/source/drawingml/textbodypropertiescontext.cxx?r=486a11ad#117


AFAIK, we can currently not use WritingMode2 in these places. But 
because WritingMode is deprecated, it might be more seminal to improve 
the implementation to use WritingMode2. And then be able to use "TB_LR" 
for "mongolianVert". We are already able to render "TB_LR" in Writer 
text frames, but not for text in custom shapes.


Both "eaVert" and "mongolianVert" are not pure geometrical, but consider 
east asian scripts, so that such characters are excluded from the rotation.




It seems to me that:
- horz, vert, vert270 are effectively horizontal (LR_TB or RL_TB) with 
different rotation angles.


Yes. That makes it possible to render "vert" and "vert270" by 
incorporating the "TextPreRotateAngle" into aTextBoxMatrix in

https://opengrok.libreoffice.org/xref/core/svx/source/sdr/contact/viewcontactofsdrobjcustomshape.cxx?r=b739bdab#160

The same matrix gets later the "TextRotateAngle" incorporated, which 
describes the rotation of the text area rectangle. And only for that one 
a corresponding attribute is available in ODF.



CJK text ( along its upright axis ) is perpendicular to the run direction.

- eaVert, wordArtVertRtl : TB_RL. CJK text is parallel to the run direction.

- mongolianVert, wordArtVert: TB_LR. CJK text is parallel to the run 
direction.


CJK characters are not rotated for eaVert and mongolianVert.



Both wordArtVertRtl and wordArtVert don't apply rotation to Latin 
scripts - which I think is something missing in LibreOffice.


wordArtVertRTL and wordArtVert are currently not implemented in LO, but 
the rendering in PowerPoint is so, that the CJK characters are not rotated.



We don't have the attribute to keep the state. We always render Latin 
script text in vertical writing as same as in horizontal writing, only 
rotate the whole run.


Not always. We can render WritingMode::TB_RL (=eaVert) in custom shapes, 
both with and without attached text frame. For import from pptx, I think 
the error is in 
https://opengrok.libreoffice.org/xref/core/oox/source/drawingml/textbodypropertiescontext.cxx?r=486a11ad#116. 
But I have not yet tested it, because first I want a clear separation of 
"TextPreRotateAngle" (attribute 'vert' in OOXML) and "TextRotateAngle" 
(attribute 'rot' in OOXML).


Kind regards
Regina


[Libreoffice-commits] core.git: vcl/inc vcl/win

2022-06-17 Thread Jan-Marek Glogowski (via logerrit)
 vcl/inc/win/salframe.h  |   10 +-
 vcl/win/window/salframe.cxx |  201 +---
 2 files changed, 88 insertions(+), 123 deletions(-)

New commits:
commit 8b6000f6075725b2e17b8fa745251ea96d7185f1
Author: Jan-Marek Glogowski 
AuthorDate: Mon Jun 13 10:26:18 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Fri Jun 17 19:58:08 2022 +0200

WIN drop window state redundancies

So on Windows a window's state is stored in:
- maGeometry, inherited from SalFrame
- maState, which is the same type then maGeometry
- mnWidth and mnHeight, which are just set, never read
- mbFullScreen, which can be encoded in the vcl::WindowState

IMHO we can get rid of mnWidth, mnHeight and mbFullScreen. Which
leaves the mystery of the extra maState. But at least it looks
like we can simply cache an vcl::WindowState instead.

And this is a little start to make WinSalFrame variable members
private; it'll be a long way...

And it also changes a SW_SHOWMAXIMIZED to SW_SHOWMINIMIZED in the
cleaned UpdateFrameState(), which looks like an error.

Change-Id: I5895313d87a6f81371e2b77af6c813d35f591725
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135809
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/vcl/inc/win/salframe.h b/vcl/inc/win/salframe.h
index 0e3cbba81253..bbf3506a723f 100644
--- a/vcl/inc/win/salframe.h
+++ b/vcl/inc/win/salframe.h
@@ -33,6 +33,8 @@ class WinSalGraphics;
 
 class WinSalFrame final: public SalFrame
 {
+vcl::WindowState m_eState;
+
 public:
 HWNDmhWnd;  // Window handle
 HCURSOR mhCursor;   // cursor handle
@@ -43,10 +45,7 @@ public:
 HMENU   mSelectedhMenu; // the menu where 
highlighting is currently going on
 HMENU   mLastActivatedhMenu;// the menu that was most 
recently opened
 SystemEnvData   maSysData;  // system data
-vcl::WindowData maState; ///< frame state
 int mnShowState;// show state
-LONGmnWidth;// client width in pixeln
-LONGmnHeight;   // client height in pixeln
 int mnMinWidth; // min. client width in 
pixeln
 int mnMinHeight;// min. client height in 
pixeln
 int mnMaxWidth; // max. client width in 
pixeln
@@ -64,7 +63,6 @@ public:
 boolmbSizeBorder;   // has window a sizeable 
border
 boolmbNoIcon;   // is a window without an 
icon
 boolmbFloatWin; // is a FloatingWindow
-boolmbFullScreen;   // TRUE: in full screen 
mode
 boolmbPresentation; // TRUE: Presentation Mode 
running
 boolmbInShow;   // inside a show call
 boolmbRestoreMaximize;  // Restore-Maximize
@@ -141,6 +139,10 @@ public:
 virtual voidBeginSetClipRegion( sal_uInt32 nRects ) 
override;
 virtual voidUnionClipRegion( tools::Long nX, tools::Long 
nY, tools::Long nWidth, tools::Long nHeight ) override;
 virtual voidEndSetClipRegion() override;
+
+constexpr vcl::WindowState state() const { return m_eState; }
+void UpdateFrameState();
+constexpr bool isFullScreen() const { return bool(m_eState & 
vcl::WindowState::FullScreen); }
 };
 
 void ImplSalGetWorkArea( HWND hWnd, RECT *pRect, const RECT *pParentRect );
diff --git a/vcl/win/window/salframe.cxx b/vcl/win/window/salframe.cxx
index 2b2bd6cb7b72..567d95eec233 100644
--- a/vcl/win/window/salframe.cxx
+++ b/vcl/win/window/salframe.cxx
@@ -128,7 +128,7 @@ bool WinSalFrame::mbInReparent = false;
 // Macros for support of WM_UNICHAR & Keyman 6.0
 #define Uni_SupplementaryPlanesStart0x1
 
-static void UpdateFrameGeometry( HWND hWnd, WinSalFrame* pFrame );
+static void UpdateFrameGeometry(WinSalFrame* pFrame);
 static void SetMaximizedFrameGeometry( HWND hWnd, WinSalFrame* pFrame, RECT* 
pParentRect = nullptr );
 
 static void SetGeometrySize(vcl::WindowPosSize& rWinPosSize, const Size& rSize)
@@ -137,57 +137,37 @@ static void SetGeometrySize(vcl::WindowPosSize& 
rWinPosSize, const Size& rSize)
 rWinPosSize.setHeight(rSize.Height() < 0 ? 0 : rSize.Height());
 }
 
-static void UpdateGeometry(WinSalFrame* pFrame, RECT& aRect)
+// If called with UpdateFrameGeometry, it must be called after it, as 
UpdateFrameGeometry
+// updates the geometry depending on the old state!
+void WinSalFrame::UpdateFrameState()
 {
-RECT aRect2 = aRect;
-AdjustWindowRectEx(&aRect2, GetWindowStyle(pFrame->mhWnd),
-   FALSE, GetWindowExStyle(pFrame->mhWnd)

[Libreoffice-commits] core.git: vcl/inc vcl/qt5

2022-06-17 Thread Michael Weghorn (via logerrit)
 vcl/inc/qt5/QtAccessibleEventListener.hxx |3 
 vcl/qt5/QtAccessibleEventListener.cxx |  115 +-
 2 files changed, 116 insertions(+), 2 deletions(-)

New commits:
commit 8c3e8af0e60865ec6d38e2117efdb4ed2f10a20c
Author: Michael Weghorn 
AuthorDate: Fri Jun 17 17:29:19 2022 +0200
Commit: Michael Weghorn 
CommitDate: Fri Jun 17 19:30:29 2022 +0200

qt a11y: Forward STATE_CHANGED event as such

Handle `AccessibleEventId::STATE_CHANGED` by
sending a corresponding `QAccessibleStateChangeEvent`.

The previous way of sending a `QAccessible::ForegroundChanged`
event looked rather arbitrary and had no effect in practice,
since that type of event is currently ignored in Qt's AT-SPI adapter
anyway.

At this point in time, the Qt library doesn't forward
changes of all states to the AT-SPI layer. Most notably,
it ignores changes to the focused state.
(Qt itself uses events of type `QAccessible::Focus`
instead of `QAccessibleStateChangeEvent` with the `focused`
state set to notify about focus changes, but that's not exactly the
same, and e.g. causes Orca to ignore some focus changes).
I have submitted a change to Qt to implement
forwarding of `QAccessibleStateChangeEvent`s for the
focused state to the AT-SPI layer, currently awaiting
review. [1]

With that Qt change in place, Orca still ignored these
events in LibreOffice message dialogs, since those
use a11y role `ALERT`, which wasn't previously considered
when trying to retrieve a potential dialog that an
a11y object belonged to.
The corresponding Orca merge request [2] has just been merged.

With these two in place, Orca now announces the focused
button when switching focus using the tab key
e.g. in the "Save document?" dialog when using the qt6 VCL plugin.
(Most other things in the LO UI are still usually not announced.)

For some reason, forwarding changes to state `AccessibleStateType::ACTIVE`
resulted in Orca becoming unresponsive (stop talking) quite quickly.
That needs further analysis, so that state change isn't forwarded
to Qt for now.

[1] https://codereview.qt-project.org/c/qt/qtbase/+/416510
[2] https://gitlab.gnome.org/GNOME/orca/-/merge_requests/127

Change-Id: I81c9a0f5ec8c74f95943d3073bba5b304f995d31
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136057
Tested-by: Jenkins
Reviewed-by: Michael Weghorn 

diff --git a/vcl/inc/qt5/QtAccessibleEventListener.hxx 
b/vcl/inc/qt5/QtAccessibleEventListener.hxx
index a73f6d31f2f8..1103dc9da598 100644
--- a/vcl/inc/qt5/QtAccessibleEventListener.hxx
+++ b/vcl/inc/qt5/QtAccessibleEventListener.hxx
@@ -33,6 +33,9 @@ public:
 private:
 css::uno::Reference m_xAccessible;
 QtAccessibleWidget* m_pAccessibleWidget;
+
+static void HandleStateChangedEvent(QAccessibleInterface* 
pQAccessibleInterface,
+const 
css::accessibility::AccessibleEventObject& rEvent);
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt5/QtAccessibleEventListener.cxx 
b/vcl/qt5/QtAccessibleEventListener.cxx
index 515584351c74..ee9acc651599 100644
--- a/vcl/qt5/QtAccessibleEventListener.cxx
+++ b/vcl/qt5/QtAccessibleEventListener.cxx
@@ -23,6 +23,7 @@
 #include 
 
 #include 
+#include 
 #include 
 #include 
 #include 
@@ -41,6 +42,117 @@ QtAccessibleEventListener::QtAccessibleEventListener(const 
Reference>= nState;
+// States in 'QAccessibleStateChangeEvent' indicate what states have 
changed, so if e.g.
+// an object loses focus (not just if it gains it), 'focus' state needs to 
be set to 'true',
+// so retrieve the old/previous value from the event if necessary.
+if (nState == AccessibleStateType::INVALID)
+rEvent.OldValue >>= nState;
+
+switch (nState)
+{
+case AccessibleStateType::ACTIVE:
+// ignore for now, since it somehow causes Orca to become 
unresponsive quite quickly
+// TODO: analyze further and fix root cause
+/*
+aState.active = true;
+break;
+*/
+return;
+case AccessibleStateType::BUSY:
+aState.busy = true;
+break;
+case AccessibleStateType::CHECKED:
+aState.checked = true;
+break;
+case AccessibleStateType::COLLAPSE:
+aState.collapsed = true;
+break;
+case AccessibleStateType::DEFAULT:
+aState.defaultButton = true;
+break;
+case AccessibleStateType::ENABLED:
+aState.disabled = true;
+break;
+case AccessibleStateType::EDITABLE:
+aState.editable = true;
+break;
+case AccessibleStateType::EXPANDABLE:
+aState.expandable = true;
+break;
+case AccessibleStateType::EXPANDED:
+   

Diane Leigh license statement

2022-06-17 Thread Diane Leigh
 All of my past & future contributions to LibreOffice may be
   licensed under the MPLv2/LGPLv3+ dual license.


[Libreoffice-commits] core.git: include/vcl vcl/inc vcl/source vcl/unx

2022-06-17 Thread Jan-Marek Glogowski (via logerrit)
 include/vcl/windowstate.hxx  |1 +
 vcl/inc/window.h |2 --
 vcl/source/window/syswin.cxx |8 +++-
 vcl/unx/gtk3/gtkinst.cxx |4 +---
 4 files changed, 5 insertions(+), 10 deletions(-)

New commits:
commit 2e509b886f1d77ef158579385b55f1f94cfbc710
Author: Jan-Marek Glogowski 
AuthorDate: Sun Jun 12 17:42:05 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Fri Jun 17 19:14:05 2022 +0200

Convert ImplWindowStateFromStr to WindowData(str)

To have a constructor as the counterpart of the toStr() function.
Better then some unrelated independant function.

Change-Id: Iba4cb3d400a92704753db6b35d12f2189b23077e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135807
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/include/vcl/windowstate.hxx b/include/vcl/windowstate.hxx
index b78162ddf52e..772d5c397f76 100644
--- a/include/vcl/windowstate.hxx
+++ b/include/vcl/windowstate.hxx
@@ -80,6 +80,7 @@ public:
 , mnMaximizedHeight(0)
 {
 }
+WindowData(std::string_view rStr);
 
 // serialize values to a string (the original WindowState representation)
 OString toStr() const;
diff --git a/vcl/inc/window.h b/vcl/inc/window.h
index 18e1a3e1e417..3021e8bc7b6b 100644
--- a/vcl/inc/window.h
+++ b/vcl/inc/window.h
@@ -433,8 +433,6 @@ bool ImplLOKHandleMouseEvent( const VclPtr& 
xWindow, MouseNotifyEve
 
 void ImplHandleResize( vcl::Window* pWindow, tools::Long nNewWidth, 
tools::Long nNewHeight );
 
-VCL_DLLPUBLIC void ImplWindowStateFromStr(vcl::WindowData& rData, 
std::string_view rStr);
-
 VCL_DLLPUBLIC css::uno::Reference
 
FindFocusedEditableText(css::uno::Reference
 const&);
 
diff --git a/vcl/source/window/syswin.cxx b/vcl/source/window/syswin.cxx
index 113b2da02689..5a5baf380e71 100644
--- a/vcl/source/window/syswin.cxx
+++ b/vcl/source/window/syswin.cxx
@@ -399,8 +399,9 @@ const Size& SystemWindow::GetMaxOutputSizePixel() const
 return mpImplData->maMaxOutSize;
 }
 
-void ImplWindowStateFromStr(vcl::WindowData& rData, std::string_view rStr)
+vcl::WindowData::WindowData(std::string_view rStr)
 {
+vcl::WindowData& rData = *this;
 vcl::WindowDataMask nValidMask = vcl::WindowDataMask::NONE;
 sal_Int32 nIndex  = 0;
 
@@ -826,10 +827,7 @@ void SystemWindow::SetWindowState(std::string_view rStr)
 {
 if (rStr.empty())
 return;
-
-vcl::WindowData aData;
-ImplWindowStateFromStr( aData, rStr );
-SetWindowState( aData );
+SetWindowState(vcl::WindowData(rStr));
 }
 
 OString SystemWindow::GetWindowState(vcl::WindowDataMask nMask) const
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx
index a49e32dc8cfa..6959f80698b0 100644
--- a/vcl/unx/gtk3/gtkinst.cxx
+++ b/vcl/unx/gtk3/gtkinst.cxx
@@ -6334,9 +6334,7 @@ public:
 
 virtual void set_window_state(const OString& rStr) override
 {
-vcl::WindowData aData;
-ImplWindowStateFromStr( aData, rStr );
-
+const vcl::WindowData aData(rStr);
 const auto nMask = aData.mask();
 const auto nState = aData.state() & vcl::WindowState::SystemMask;
 


[Libreoffice-commits] core.git: Branch 'feature/chartdatatable' - 13 commits - chart2/source oox/inc oox/source

2022-06-17 Thread Tomaž Vajngerl (via logerrit)
Rebased ref, commits from common ancestor:
commit 8ab457543b0e3444029bb46c29111aa11f2c04ba
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 17 16:38:54 2022 +0200
Commit: Tomaž Vajngerl 
CommitDate: Fri Jun 17 17:52:17 2022 +0200

chart2: remove unneeded class prefix in ObjectHierarchy.cxx

Change-Id: Iee007f7ff4d9665ee089712e7ba98090a8090609

diff --git a/chart2/source/controller/main/ObjectHierarchy.cxx 
b/chart2/source/controller/main/ObjectHierarchy.cxx
index ab1fa891377e..c696a94d8fcd 100644
--- a/chart2/source/controller/main/ObjectHierarchy.cxx
+++ b/chart2/source/controller/main/ObjectHierarchy.cxx
@@ -115,7 +115,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 ObjectIdentifier aDiaOID;
 if( xDiagram.is() )
 aDiaOID = ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForObject( 
static_cast(xDiagram.get()), xChartDocument ) );
-ObjectHierarchy::tChildContainer aTopLevelContainer;
+tChildContainer aTopLevelContainer;
 
 // First Level
 
@@ -158,7 +158,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 createDiagramTree( aTopLevelContainer, xChartDocument, xDiagram );
 else
 {
-ObjectHierarchy::tChildContainer aSubContainer;
+tChildContainer aSubContainer;
 createDiagramTree( aSubContainer, xChartDocument, xDiagram );
 if( !aSubContainer.empty() )
 m_aChildMap[ aDiaOID ] = aSubContainer;
@@ -179,11 +179,11 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 aTopLevelContainer.emplace_back( 
ObjectIdentifier::createClassifiedIdentifier( OBJECTTYPE_PAGE, u"" ) );
 
 if( ! aTopLevelContainer.empty())
-m_aChildMap[ ObjectHierarchy::getRootNodeOID() ] = aTopLevelContainer;
+m_aChildMap[ObjectHierarchy::getRootNodeOID()] = aTopLevelContainer;
 }
 
 void ObjectHierarchy::createLegendTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -199,7 +199,7 @@ void ObjectHierarchy::createLegendTree(
 rtl::Reference< SvxShapeGroupAnyD > xLegendShapeContainer =
 dynamic_cast(
 m_pExplicitValueProvider->getShapeForCID( 
aLegendOID.getObjectCID() ).get() );
-ObjectHierarchy::tChildContainer aLegendEntryOIDs;
+tChildContainer aLegendEntryOIDs;
 lcl_getChildOIDs( aLegendEntryOIDs, xLegendShapeContainer );
 
 m_aChildMap[ aLegendOID ] = aLegendEntryOIDs;
@@ -207,7 +207,7 @@ void ObjectHierarchy::createLegendTree(
 }
 
 void ObjectHierarchy::createAxesTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -271,7 +271,7 @@ void ObjectHierarchy::createAxesTree(
 }
 
 void ObjectHierarchy::createWallAndFloor(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 sal_Int32 nDimensionCount = DiagramHelper::getDimension( xDiagram );
@@ -289,7 +289,7 @@ void ObjectHierarchy::createWallAndFloor(
 }
 
 void ObjectHierarchy::createDiagramTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram )
 {
@@ -307,7 +307,7 @@ void ObjectHierarchy::createDiagramTree(
 }
 
 void ObjectHierarchy::createDataSeriesTree(
-ObjectHierarchy::tChildContainer & rOutDiagramSubContainer,
+tChildContainer & rOutDiagramSubContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 try
@@ -334,7 +334,7 @@ void ObjectHierarchy::createDataSeriesTree(
 ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForParticle( aSeriesParticle ) ) );
 rOutDiagramSubContainer.push_back( aSeriesOID );
 
-ObjectHierarchy::tChildContainer aSeriesSubContainer;
+tChildContainer aSeriesSubContainer;
 
 rtl::Reference< DataSeries > const & xSeries = 
aSeriesSeq[nSeriesIdx];
 
@@ -406,7 +406,7 @@ void ObjectHierarchy::createDataSeriesTree(
 }
 }
 
-void ObjectHierarchy::createAdditionalShapesTree( 
ObjectHierarchy::tChildContainer& rContainer )
+void ObjectHierarchy::createAdditionalShapesTree(tChildContainer& rContainer)
 {
 try
 {
@@ -453,7 +453,7 @@ const ObjectHierarchy::tChildContainer & 
ObjectHierarchy::getChildren( const Obj
 if( aIt != m_aChildMap.end())
 return aIt->second;
 }
-static const ObjectHierarchy::tChildContainer EMPTY;
+static const tChildContainer EMPTY;
 return EMPTY;
 }
 
@@ -463,13 +463,13 @@ con

[Libreoffice-commits] core.git: offapi/com

2022-06-17 Thread Mike Kaganski (via logerrit)
 offapi/com/sun/star/view/XMultiSelectionSupplier.idl |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 5e0b95494093de2849c5154b98917e1beab2a708
Author: Mike Kaganski 
AuthorDate: Fri Jun 17 15:15:16 2022 +0200
Commit: Mike Kaganski 
CommitDate: Fri Jun 17 18:19:20 2022 +0200

Drop a bogus slash

... added in commit eae791e82c8e138cc983c3e7058cc4e9dafa4002
  Author Jens-Heiner Rechtien 
  Date   Wed Jun 27 11:30:00 2007 +
INTEGRATION: CWS awttree01 (1.1.2); FILE ADDED

where it was misplaced (intended to be , not /).

Commit  1501e17b889b28e7394596ce4f98eab1c5b00d8f
  Author Rüdiger Timm 
  Date   Wed Jan 30 07:20:16 2008 +
INTEGRATION: CWS dba24d (1.2.92); FILE MERGED

added '/' before the '>', but kept the incorrect initial one.

Later commit 928b8640c0d1a9c49249100efbdd70f8c1090b07
  Author Michael Stahl 
  Date   Sun Apr 28 00:44:31 2013 +0200
*api: convert

removed the correctly placed slashes. This is a leftover.

Change-Id: I800f28de02dd8447509bc236614cab05c2b8c0df
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136037
Tested-by: Mike Kaganski 
Reviewed-by: Mike Kaganski 

diff --git a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl 
b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
index e6e4c48c97fe..937d3d347013 100644
--- a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
+++ b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
@@ -41,7 +41,7 @@ interface XMultiSelectionSupplier: XSelectionSupplier
 either an Object that is selectable or a sequence of objects that 
are selectable.
 
 @returns
-`TRUE`/, if Selection was added to the current 
selection.
+`TRUE`, if Selection was added to the current selection.
 `FALSE`, if Selection or parts of Selection 
could not be
 added to the current selection. For example, if the selection 
already contains
 objects that are forbidden to be selected together with 
Selection


[Libreoffice-commits] core.git: vcl/inc vcl/qt5

2022-06-17 Thread Jan-Marek Glogowski (via logerrit)
 vcl/inc/qt5/QtWidget.hxx |   24 +++-
 vcl/qt5/QtWidget.cxx |   25 -
 2 files changed, 15 insertions(+), 34 deletions(-)

New commits:
commit 393c9f736b10d1ea82979e9c2c43c8f91ba5831d
Author: Jan-Marek Glogowski 
AuthorDate: Tue Apr 19 16:00:31 2022 +0200
Commit: Jan-Marek Glogowski 
CommitDate: Fri Jun 17 17:27:16 2022 +0200

Qt use QEvent::type to handle the event correctly

No need for an extra function parameter.

Change-Id: Iedb949b45ad3f161121110e2db2132b6c3cb706e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135894
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski 

diff --git a/vcl/inc/qt5/QtWidget.hxx b/vcl/inc/qt5/QtWidget.hxx
index e644e7f70cd9..e61357198027 100644
--- a/vcl/inc/qt5/QtWidget.hxx
+++ b/vcl/inc/qt5/QtWidget.hxx
@@ -42,17 +42,10 @@ class QtWidget : public QWidget
 int m_nDeltaX;
 int m_nDeltaY;
 
-enum class ButtonKeyState
-{
-Pressed,
-Released
-};
-
 static void commitText(QtFrame&, const QString& aText);
 static void deleteReplacementText(QtFrame& rFrame, int nReplacementStart,
   int nReplacementLength);
-static bool handleKeyEvent(QtFrame&, const QWidget&, QKeyEvent*, const 
ButtonKeyState);
-static void handleMouseButtonEvent(const QtFrame&, const QMouseEvent*, 
const ButtonKeyState);
+static bool handleKeyEvent(QtFrame&, const QWidget&, QKeyEvent*);
 static void handleMouseEnterLeaveEvents(const QtFrame&, QEvent*);
 static void fillSalAbstractMouseEvent(const QtFrame& rFrame, const 
QInputEvent* pQEvent,
   const QPoint& rPos, Qt::MouseButtons 
eButtons, int nWidth,
@@ -101,23 +94,12 @@ public:
 // key events might be propagated further down => call base on false
 static inline bool handleKeyReleaseEvent(QtFrame&, const QWidget&, 
QKeyEvent*);
 // mouse events are always accepted
-static inline void handleMousePressEvent(const QtFrame&, const 
QMouseEvent*);
-static inline void handleMouseReleaseEvent(const QtFrame&, const 
QMouseEvent*);
+static void handleMouseButtonEvent(const QtFrame&, const QMouseEvent*);
 };
 
 bool QtWidget::handleKeyReleaseEvent(QtFrame& rFrame, const QWidget& rWidget, 
QKeyEvent* pEvent)
 {
-return handleKeyEvent(rFrame, rWidget, pEvent, ButtonKeyState::Released);
-}
-
-void QtWidget::handleMousePressEvent(const QtFrame& rFrame, const QMouseEvent* 
pEvent)
-{
-handleMouseButtonEvent(rFrame, pEvent, ButtonKeyState::Pressed);
-}
-
-void QtWidget::handleMouseReleaseEvent(const QtFrame& rFrame, const 
QMouseEvent* pEvent)
-{
-handleMouseButtonEvent(rFrame, pEvent, ButtonKeyState::Released);
+return handleKeyEvent(rFrame, rWidget, pEvent);
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt5/QtWidget.cxx b/vcl/qt5/QtWidget.cxx
index 5c6fc002ac22..e26e1e3aee1f 100644
--- a/vcl/qt5/QtWidget.cxx
+++ b/vcl/qt5/QtWidget.cxx
@@ -153,8 +153,7 @@ void QtWidget::fillSalAbstractMouseEvent(const QtFrame& 
rFrame, const QInputEven
 #define FILL_SAME(rFrame, nWidth)  
\
 fillSalAbstractMouseEvent(rFrame, pEvent, pEvent->pos(), 
pEvent->buttons(), nWidth, aEvent)
 
-void QtWidget::handleMouseButtonEvent(const QtFrame& rFrame, const 
QMouseEvent* pEvent,
-  const ButtonKeyState eState)
+void QtWidget::handleMouseButtonEvent(const QtFrame& rFrame, const 
QMouseEvent* pEvent)
 {
 SalMouseEvent aEvent;
 FILL_SAME(rFrame, rFrame.GetQWidget()->width());
@@ -175,7 +174,7 @@ void QtWidget::handleMouseButtonEvent(const QtFrame& 
rFrame, const QMouseEvent*
 }
 
 SalEvent nEventType;
-if (eState == ButtonKeyState::Pressed)
+if (pEvent->type() == QEvent::MouseButtonPress)
 nEventType = SalEvent::MouseButtonDown;
 else
 nEventType = SalEvent::MouseButtonUp;
@@ -184,13 +183,13 @@ void QtWidget::handleMouseButtonEvent(const QtFrame& 
rFrame, const QMouseEvent*
 
 void QtWidget::mousePressEvent(QMouseEvent* pEvent)
 {
-handleMousePressEvent(m_rFrame, pEvent);
+handleMouseButtonEvent(m_rFrame, pEvent);
 if (m_rFrame.isPopup()
 && !geometry().translated(geometry().topLeft() * 
-1).contains(pEvent->pos()))
 closePopup();
 }
 
-void QtWidget::mouseReleaseEvent(QMouseEvent* pEvent) { 
handleMouseReleaseEvent(m_rFrame, pEvent); }
+void QtWidget::mouseReleaseEvent(QMouseEvent* pEvent) { 
handleMouseButtonEvent(m_rFrame, pEvent); }
 
 void QtWidget::mouseMoveEvent(QMouseEvent* pEvent)
 {
@@ -514,11 +513,12 @@ void QtWidget::deleteReplacementText(QtFrame& rFrame, int 
nReplacementStart, int
 rFrame.CallCallback(SalEvent::DeleteSurroundingTextRequest, &aEvt);
 }
 
-bool QtWidget::handleKeyEvent(QtFrame& rFrame, const QWidget& rWidget, 
QKeyEvent* pEvent,
-  const ButtonKeyState eState)
+bool Q

Re: How to write OOXML attribute 'vert' of element to ODF?

2022-06-17 Thread Mark Hung
Hi Regina,

Regina Henschel  於 2022年6月16日 週四 晚上8:49寫道:

> Hi all,
>
> Currently the "vert" attribute of  element is connected to
> TextPreRotateAngle property. vert="vert" produces TextPreRotateAngle=-90
> and vert="vert270" produces TextPreRotateAngle=-270. When converting it
> to ODF it produces draw:text-rotate-angle="-90" and
> draw:text-rotate-angle="-270".
>
> That approach does not work, because the ODF attribute
> draw:text-rotate-angle produces a rotation of the text area rectangle,
> same as the 'rot' attribute of element  in OOXML. Try with
> attached file the export to ODF and reload to see the problem.
>
> For using draw:text-rotate-angle attribute it would be necessary to
> change the values of the draw:text-areas attribute in addition. But this
> requires introducing additional equations and it conflicts with the
> definitions of the predefined shapes of the presets.
>
> My idea is to introduce a new loext:text-direction attribute of the
>  element, which can carry each of the values of
> the OOXML attribute 'vert'. "Each" needs to be discussed, perhaps better
> to exclude values eaVert and mongolianVert, which in fact are writing
> modes TB_RL and TB_LR. Possible values would be ("eaVert"), "horz",
> ("mongolianVert"), "vert", "vert270", "wordArtVert" and "wordArtVertRtl".
>
>
It's not clear to me why you think eaVert, and mongolianVert should be
excluded here.
Maybe you can explain further.

It seems to me that:
- horz, vert, vert270 are effectively horizontal (LR_TB or RL_TB) with
different rotation angles.
CJK text ( along its upright axis ) is perpendicular to the run direction.

- eaVert, wordArtVertRtl : TB_RL. CJK text is parallel to the run direction.

- mongolianVert, wordArtVert: TB_LR. CJK text is parallel to the run
direction.

Both wordArtVertRtl and wordArtVert don't apply rotation to Latin scripts -
which I think is something missing in LibreOffice.
We don't have the attribute to keep the state. We always render Latin
script text in vertical writing as same as in horizontal writing, only
rotate the whole run.


> The CustomShapeGeometry property, which is a sequence, would get a new
> property "TextDirection". Import from OOXML or from ODF-extended would
> put the value into it without any rotate-angle calculations. Evaluation
> of the attribute would be at rendering time in
>
> ViewContactOfSdrObjCustomShape::createViewIndependentPrimitive2DSequence().

The current used attribute TextPreRotateAngle would be removed.
> Currently it can be used in the CustomShapeGeometry sequence via macro,
> but is not published in the API and has no UI.
>
> Currently we have a confusion of attribute 'vert' and attribute 'rot'
> resulting in bug 124437 (assigning the angle of the 'rot' attribute to
> TextPreRotateAngle, which produces sheared text) and bug 127457 (value
> of attribute 'vert' overwrites value of 'rot'). Therefore I prefer an
> enum (or constants in API or string?) so that such errors cannot happen.
>
> What do you think?
>
> Kind regards,
> Regina
>


-- 
Mark Hung


[Libreoffice-commits] core.git: sc/inc sc/source

2022-06-17 Thread Noel Grandin (via logerrit)
 sc/inc/cellvalue.hxx   |   13 +++
 sc/inc/dociter.hxx |2 
 sc/source/core/data/attarray.cxx   |8 +-
 sc/source/core/data/cellvalue.cxx  |   56 -
 sc/source/core/data/column2.cxx|2 
 sc/source/core/data/column4.cxx|2 
 sc/source/core/data/conditio.cxx   |4 -
 sc/source/core/data/dociter.cxx|2 
 sc/source/core/data/documen8.cxx   |4 -
 sc/source/core/data/documentimport.cxx |3 
 sc/source/core/data/table3.cxx |2 
 sc/source/core/data/table4.cxx |4 -
 sc/source/core/data/table6.cxx |4 -
 sc/source/core/data/validat.cxx|4 -
 sc/source/core/tool/cellform.cxx   |2 
 sc/source/core/tool/chgtrack.cxx   |8 +-
 sc/source/filter/excel/xetable.cxx |2 
 sc/source/filter/excel/xicontent.cxx   |2 
 sc/source/filter/html/htmlexp.cxx  |2 
 sc/source/filter/rtf/rtfexp.cxx|2 
 sc/source/filter/xcl97/XclExpChangeTrack.cxx   |6 -
 sc/source/filter/xml/XMLChangeTrackingExportHelper.cxx |   10 +--
 sc/source/filter/xml/xmlcelli.cxx  |2 
 sc/source/filter/xml/xmlexprt.cxx  |4 -
 sc/source/ui/app/transobj.cxx  |2 
 sc/source/ui/docshell/docsh.cxx|2 
 sc/source/ui/docshell/docsh8.cxx   |4 -
 sc/source/ui/undo/undocell.cxx |2 
 sc/source/ui/unoobj/cellsuno.cxx   |2 
 sc/source/ui/unoobj/textuno.cxx|2 
 sc/source/ui/view/gridwin.cxx  |4 -
 sc/source/ui/view/output2.cxx  |8 +-
 sc/source/ui/view/spellcheckcontext.cxx|2 
 sc/source/ui/view/spelleng.cxx |2 
 sc/source/ui/view/tabvwsha.cxx |2 
 sc/source/ui/view/viewfun4.cxx |2 
 sc/source/ui/view/viewfunc.cxx |2 
 37 files changed, 97 insertions(+), 89 deletions(-)

New commits:
commit c78193b32152122e9b71151b1b463b2dff99f42f
Author: Noel Grandin 
AuthorDate: Fri Jun 17 16:00:06 2022 +0200
Commit: Noel Grandin 
CommitDate: Fri Jun 17 17:00:11 2022 +0200

create getter for ScCellValue::mpEditText

so we can assert that it has the correct tag type

Change-Id: I984c22ae2527d652f2d4194227dc1173793300c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136054
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/sc/inc/cellvalue.hxx b/sc/inc/cellvalue.hxx
index 643889e2c154..192e499bbb25 100644
--- a/sc/inc/cellvalue.hxx
+++ b/sc/inc/cellvalue.hxx
@@ -40,7 +40,7 @@ public:
 union {
 double mfValue1;
 svl::SharedString* mpString;
-EditTextObject* mpEditText;
+EditTextObject* mpEditText1;
 ScFormulaCell* mpFormula;
 };
 
@@ -64,6 +64,14 @@ public:
 CellType getType() const { return meType; }
 double getDouble() const { assert(meType == CELLTYPE_VALUE); return 
mfValue1; }
 svl::SharedString* getSharedString() const { assert(meType == 
CELLTYPE_STRING); return mpString; }
+EditTextObject* getEditText() const { assert(meType == CELLTYPE_EDIT); 
return mpEditText1; }
+EditTextObject* releaseEditText()
+{
+assert(meType == CELLTYPE_EDIT);
+auto p = mpEditText1;
+mpEditText1 = nullptr;
+return p;
+}
 
 /**
  * Take cell value from specified position in specified document.
@@ -115,7 +123,7 @@ public:
 union {
 double mfValue1;
 const svl::SharedString* mpString;
-const EditTextObject* mpEditText;
+const EditTextObject* mpEditText1;
 ScFormulaCell* mpFormula;
 };
 
@@ -136,6 +144,7 @@ public:
 CellType getType() const { return meType; }
 double getDouble() const { assert(meType == CELLTYPE_VALUE); return 
mfValue1; }
 const svl::SharedString* getSharedString() const { assert(meType == 
CELLTYPE_STRING); return mpString; }
+const EditTextObject* getEditText() const { assert(meType == 
CELLTYPE_EDIT); return mpEditText1; }
 
 /**
  * Take cell value from specified position in specified document.
diff --git a/sc/inc/dociter.hxx b/sc/inc/dociter.hxx
index 622d36332d97..fc1609d6daab 100644
--- a/sc/inc/dociter.hxx
+++ b/sc/inc/dociter.hxx
@@ -234,7 +234,7 @@ public:
 
 CellType getType() const { return maCurCell.getType();}
 OUString getString() const;
-const EditTextObject* getEditText() const { return maCurCell.mpEditText;}
+   

[Libreoffice-commits] core.git: Branch 'feature/chartdatatable' - 325 commits - accessibility/inc accessibility/Library_acc.mk accessibility/source android/source basic/source binaryurp/source bin/cra

2022-06-17 Thread Tomaž Vajngerl (via logerrit)
Rebased ref, commits from common ancestor:
commit d469ffb22f9fe23b541730c15ba384392ebe21ce
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 17 16:38:54 2022 +0200
Commit: Tomaž Vajngerl 
CommitDate: Fri Jun 17 16:55:44 2022 +0200

chart2: remove unneeded class prefix in ObjectHierarchy.cxx

Change-Id: Iee007f7ff4d9665ee089712e7ba98090a8090609

diff --git a/chart2/source/controller/main/ObjectHierarchy.cxx 
b/chart2/source/controller/main/ObjectHierarchy.cxx
index ab1fa891377e..c696a94d8fcd 100644
--- a/chart2/source/controller/main/ObjectHierarchy.cxx
+++ b/chart2/source/controller/main/ObjectHierarchy.cxx
@@ -115,7 +115,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 ObjectIdentifier aDiaOID;
 if( xDiagram.is() )
 aDiaOID = ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForObject( 
static_cast(xDiagram.get()), xChartDocument ) );
-ObjectHierarchy::tChildContainer aTopLevelContainer;
+tChildContainer aTopLevelContainer;
 
 // First Level
 
@@ -158,7 +158,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 createDiagramTree( aTopLevelContainer, xChartDocument, xDiagram );
 else
 {
-ObjectHierarchy::tChildContainer aSubContainer;
+tChildContainer aSubContainer;
 createDiagramTree( aSubContainer, xChartDocument, xDiagram );
 if( !aSubContainer.empty() )
 m_aChildMap[ aDiaOID ] = aSubContainer;
@@ -179,11 +179,11 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 aTopLevelContainer.emplace_back( 
ObjectIdentifier::createClassifiedIdentifier( OBJECTTYPE_PAGE, u"" ) );
 
 if( ! aTopLevelContainer.empty())
-m_aChildMap[ ObjectHierarchy::getRootNodeOID() ] = aTopLevelContainer;
+m_aChildMap[ObjectHierarchy::getRootNodeOID()] = aTopLevelContainer;
 }
 
 void ObjectHierarchy::createLegendTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -199,7 +199,7 @@ void ObjectHierarchy::createLegendTree(
 rtl::Reference< SvxShapeGroupAnyD > xLegendShapeContainer =
 dynamic_cast(
 m_pExplicitValueProvider->getShapeForCID( 
aLegendOID.getObjectCID() ).get() );
-ObjectHierarchy::tChildContainer aLegendEntryOIDs;
+tChildContainer aLegendEntryOIDs;
 lcl_getChildOIDs( aLegendEntryOIDs, xLegendShapeContainer );
 
 m_aChildMap[ aLegendOID ] = aLegendEntryOIDs;
@@ -207,7 +207,7 @@ void ObjectHierarchy::createLegendTree(
 }
 
 void ObjectHierarchy::createAxesTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -271,7 +271,7 @@ void ObjectHierarchy::createAxesTree(
 }
 
 void ObjectHierarchy::createWallAndFloor(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 sal_Int32 nDimensionCount = DiagramHelper::getDimension( xDiagram );
@@ -289,7 +289,7 @@ void ObjectHierarchy::createWallAndFloor(
 }
 
 void ObjectHierarchy::createDiagramTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram )
 {
@@ -307,7 +307,7 @@ void ObjectHierarchy::createDiagramTree(
 }
 
 void ObjectHierarchy::createDataSeriesTree(
-ObjectHierarchy::tChildContainer & rOutDiagramSubContainer,
+tChildContainer & rOutDiagramSubContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 try
@@ -334,7 +334,7 @@ void ObjectHierarchy::createDataSeriesTree(
 ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForParticle( aSeriesParticle ) ) );
 rOutDiagramSubContainer.push_back( aSeriesOID );
 
-ObjectHierarchy::tChildContainer aSeriesSubContainer;
+tChildContainer aSeriesSubContainer;
 
 rtl::Reference< DataSeries > const & xSeries = 
aSeriesSeq[nSeriesIdx];
 
@@ -406,7 +406,7 @@ void ObjectHierarchy::createDataSeriesTree(
 }
 }
 
-void ObjectHierarchy::createAdditionalShapesTree( 
ObjectHierarchy::tChildContainer& rContainer )
+void ObjectHierarchy::createAdditionalShapesTree(tChildContainer& rContainer)
 {
 try
 {
@@ -453,7 +453,7 @@ const ObjectHierarchy::tChildContainer & 
ObjectHierarchy::getChildren( const Obj
 if( aIt != m_aChildMap.end())
 return aIt->second;
 }
-static const ObjectHierarchy::tChildContainer EMPTY;
+static const tChildContainer EMPTY;
 return EMPTY;
 }
 
@@ -463,13 +463,13 @@ con

[Libreoffice-commits] core.git: Branch 'feature/chartdatatable' - 3 commits - chart2/source

2022-06-17 Thread Tomaž Vajngerl (via logerrit)
 chart2/source/controller/inc/ObjectHierarchy.hxx  |   24 +++
 chart2/source/controller/main/ObjectHierarchy.cxx |   34 +++---
 2 files changed, 28 insertions(+), 30 deletions(-)

New commits:
commit fd5eb88a0f054d962d56886cd733ff0fcb077884
Author: Tomaž Vajngerl 
AuthorDate: Fri Jun 17 16:38:54 2022 +0200
Commit: Tomaž Vajngerl 
CommitDate: Fri Jun 17 16:38:54 2022 +0200

chart2: remove unneeded class prefix in ObjectHierarchy.cxx

Change-Id: Iee007f7ff4d9665ee089712e7ba98090a8090609

diff --git a/chart2/source/controller/main/ObjectHierarchy.cxx 
b/chart2/source/controller/main/ObjectHierarchy.cxx
index 81324e432e7d..197d9b854925 100644
--- a/chart2/source/controller/main/ObjectHierarchy.cxx
+++ b/chart2/source/controller/main/ObjectHierarchy.cxx
@@ -114,7 +114,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 ObjectIdentifier aDiaOID;
 if( xDiagram.is() )
 aDiaOID = ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForObject( 
static_cast(xDiagram.get()), xChartDocument ) );
-ObjectHierarchy::tChildContainer aTopLevelContainer;
+tChildContainer aTopLevelContainer;
 
 // First Level
 
@@ -157,7 +157,7 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 createDiagramTree( aTopLevelContainer, xChartDocument, xDiagram );
 else
 {
-ObjectHierarchy::tChildContainer aSubContainer;
+tChildContainer aSubContainer;
 createDiagramTree( aSubContainer, xChartDocument, xDiagram );
 if( !aSubContainer.empty() )
 m_aChildMap[ aDiaOID ] = aSubContainer;
@@ -178,11 +178,11 @@ void ObjectHierarchy::createTree( const 
rtl::Reference<::chart::ChartModel>& xCh
 aTopLevelContainer.emplace_back( 
ObjectIdentifier::createClassifiedIdentifier( OBJECTTYPE_PAGE, u"" ) );
 
 if( ! aTopLevelContainer.empty())
-m_aChildMap[ ObjectHierarchy::getRootNodeOID() ] = aTopLevelContainer;
+m_aChildMap[ObjectHierarchy::getRootNodeOID()] = aTopLevelContainer;
 }
 
 void ObjectHierarchy::createLegendTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -198,7 +198,7 @@ void ObjectHierarchy::createLegendTree(
 rtl::Reference< SvxShapeGroupAnyD > xLegendShapeContainer =
 dynamic_cast(
 m_pExplicitValueProvider->getShapeForCID( 
aLegendOID.getObjectCID() ).get() );
-ObjectHierarchy::tChildContainer aLegendEntryOIDs;
+tChildContainer aLegendEntryOIDs;
 lcl_getChildOIDs( aLegendEntryOIDs, xLegendShapeContainer );
 
 m_aChildMap[ aLegendOID ] = aLegendEntryOIDs;
@@ -206,7 +206,7 @@ void ObjectHierarchy::createLegendTree(
 }
 
 void ObjectHierarchy::createAxesTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram  )
 {
@@ -270,7 +270,7 @@ void ObjectHierarchy::createAxesTree(
 }
 
 void ObjectHierarchy::createWallAndFloor(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 sal_Int32 nDimensionCount = DiagramHelper::getDimension( xDiagram );
@@ -288,7 +288,7 @@ void ObjectHierarchy::createWallAndFloor(
 }
 
 void ObjectHierarchy::createDiagramTree(
-ObjectHierarchy::tChildContainer & rContainer,
+tChildContainer & rContainer,
 const rtl::Reference<::chart::ChartModel> & xChartDoc,
 const rtl::Reference< Diagram > & xDiagram )
 {
@@ -306,7 +306,7 @@ void ObjectHierarchy::createDiagramTree(
 }
 
 void ObjectHierarchy::createDataSeriesTree(
-ObjectHierarchy::tChildContainer & rOutDiagramSubContainer,
+tChildContainer & rOutDiagramSubContainer,
 const rtl::Reference< Diagram > & xDiagram )
 {
 try
@@ -333,7 +333,7 @@ void ObjectHierarchy::createDataSeriesTree(
 ObjectIdentifier( 
ObjectIdentifier::createClassifiedIdentifierForParticle( aSeriesParticle ) ) );
 rOutDiagramSubContainer.push_back( aSeriesOID );
 
-ObjectHierarchy::tChildContainer aSeriesSubContainer;
+tChildContainer aSeriesSubContainer;
 
 rtl::Reference< DataSeries > const & xSeries = 
aSeriesSeq[nSeriesIdx];
 
@@ -405,7 +405,7 @@ void ObjectHierarchy::createDataSeriesTree(
 }
 }
 
-void ObjectHierarchy::createAdditionalShapesTree( 
ObjectHierarchy::tChildContainer& rContainer )
+void ObjectHierarchy::createAdditionalShapesTree(tChildContainer& rContainer)
 {
 try
 {
@@ -452,7 +452,7 @@ const ObjectHierarchy::tChildContainer & 
ObjectHierarchy::getChildren( const Obj
 if( aIt != m_aChildMap.end())
  

[Libreoffice-commits] core.git: offapi/com

2022-06-17 Thread Mike Kaganski (via logerrit)
 offapi/com/sun/star/view/XMultiSelectionSupplier.idl |6 --
 1 file changed, 6 deletions(-)

New commits:
commit 69e5d752ef20f5cd5b3a429a3546ae46bbb5f62a
Author: Mike Kaganski 
AuthorDate: Fri Jun 17 14:12:08 2022 +0200
Commit: Mike Kaganski 
CommitDate: Fri Jun 17 16:34:06 2022 +0200

Drop wrong '@returns' documentation

Caused this warning:

  
/home/tdf/jenkins/workspace/gerrit_windows/offapi/com/sun/star/view/XMultiSelectionSupplier.idl:60:
  warning: found documented return type for 
com::sun::star::view::XMultiSelectionSupplier::removeSelection
  that does not return anything

Change-Id: Iee156519c2075293b8305627ed22d586143c8688
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136033
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 

diff --git a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl 
b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
index 15724f171717..e6e4c48c97fe 100644
--- a/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
+++ b/offapi/com/sun/star/view/XMultiSelectionSupplier.idl
@@ -60,12 +60,6 @@ interface XMultiSelectionSupplier: XSelectionSupplier
 @param Selection
 either an Object that is selectable or a sequence of objects that 
are selectable.
 
-@returns
-`TRUE`/, if Selection was added to the current 
selection.
-`FALSE`, if Selection or parts of Selection 
could not be
-added to the current selection. For example, if the selection 
already contains
-objects that are forbidden to be selected together with 
Selection.
-
 @throws com::sun::star::lang::IllegalArgumentException
 If Selection is not a selectable object for this 
XMultiSelectionSupplier.
 Removing an object from the selection that is not part of the 
selection should not raise this exception


[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-1' - configure.ac

2022-06-17 Thread Thorsten Behrens (via logerrit)
 configure.ac |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 1a5b56b609930441c2ee70a46afb250731b5def4
Author: Thorsten Behrens 
AuthorDate: Fri Jun 17 16:12:52 2022 +0200
Commit: Thorsten Behrens 
CommitDate: Fri Jun 17 16:12:52 2022 +0200

Bump version to 6.1.7.35

Change-Id: I2af0f13bb6224fb0f3ad95909be45cadc7475442

diff --git a/configure.ac b/configure.ac
index de4f83a6606c..84c66a9de130 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl in order to create a configure script.
 # several non-alphanumeric characters, those are split off and used only for 
the
 # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no 
idea.
 
-AC_INIT([LibreOffice powered by 
CIB],[6.1.7.34],[],[],[https://libreoffice.cib.eu/])
+AC_INIT([LibreOffice powered by 
CIB],[6.1.7.35],[],[],[https://libreoffice.cib.eu/])
 
 AC_PREREQ([2.59])
 


[Libreoffice-commits] core.git: sc/inc sc/qa sc/source

2022-06-17 Thread Noel Grandin (via logerrit)
 sc/inc/cellvalue.hxx   |2 ++
 sc/qa/unit/ucalc_sharedformula.cxx |2 +-
 sc/source/core/data/column3.cxx|2 +-
 sc/source/core/data/column4.cxx|4 ++--
 sc/source/core/data/conditio.cxx   |2 +-
 sc/source/core/data/dociter.cxx|2 +-
 sc/source/core/data/documen8.cxx   |4 ++--
 sc/source/core/data/documentimport.cxx |4 ++--
 sc/source/core/data/table3.cxx |6 +++---
 sc/source/core/data/table4.cxx |4 ++--
 sc/source/core/data/validat.cxx|2 +-
 sc/source/core/tool/cellform.cxx   |2 +-
 sc/source/core/tool/chgtrack.cxx   |4 ++--
 sc/source/filter/excel/xetable.cxx |2 +-
 sc/source/filter/xcl97/XclExpChangeTrack.cxx   |2 +-
 sc/source/filter/xml/XMLChangeTrackingExportHelper.cxx |4 ++--
 sc/source/ui/docshell/docsh.cxx|4 ++--
 sc/source/ui/undo/undocell.cxx |2 +-
 sc/source/ui/view/spellcheckcontext.cxx|6 +++---
 sc/source/ui/view/tabvwsh5.cxx |2 +-
 20 files changed, 32 insertions(+), 30 deletions(-)

New commits:
commit 12b817140641a94ebb3ef8271c5e955eb80e56f2
Author: Noel Grandin 
AuthorDate: Thu Jun 16 17:57:37 2022 +0200
Commit: Noel Grandin 
CommitDate: Fri Jun 17 15:59:42 2022 +0200

create getter for ScCellValue::mpString

so we can assert that it has the correct tag type

Change-Id: I8933919aefc2bb22694a283b54dc3de11d16e5a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136002
Tested-by: Jenkins
Reviewed-by: Noel Grandin 

diff --git a/sc/inc/cellvalue.hxx b/sc/inc/cellvalue.hxx
index 9513fcfc99d5..643889e2c154 100644
--- a/sc/inc/cellvalue.hxx
+++ b/sc/inc/cellvalue.hxx
@@ -63,6 +63,7 @@ public:
 
 CellType getType() const { return meType; }
 double getDouble() const { assert(meType == CELLTYPE_VALUE); return 
mfValue1; }
+svl::SharedString* getSharedString() const { assert(meType == 
CELLTYPE_STRING); return mpString; }
 
 /**
  * Take cell value from specified position in specified document.
@@ -134,6 +135,7 @@ public:
 
 CellType getType() const { return meType; }
 double getDouble() const { assert(meType == CELLTYPE_VALUE); return 
mfValue1; }
+const svl::SharedString* getSharedString() const { assert(meType == 
CELLTYPE_STRING); return mpString; }
 
 /**
  * Take cell value from specified position in specified document.
diff --git a/sc/qa/unit/ucalc_sharedformula.cxx 
b/sc/qa/unit/ucalc_sharedformula.cxx
index 64f248c91cf8..69f3e3be3d42 100644
--- a/sc/qa/unit/ucalc_sharedformula.cxx
+++ b/sc/qa/unit/ucalc_sharedformula.cxx
@@ -284,7 +284,7 @@ void TestSharedFormula::testSharedFormulas()
 ScCellValue aCell(svl::SharedString("Test"));
 CPPUNIT_ASSERT_EQUAL_MESSAGE("This should be a string value.", 
CELLTYPE_STRING, aCell.getType());
 aCell.commit(*m_pDoc, aPos);
-CPPUNIT_ASSERT_EQUAL(aCell.mpString->getString(), m_pDoc->GetString(aPos));
+CPPUNIT_ASSERT_EQUAL(aCell.getSharedString()->getString(), 
m_pDoc->GetString(aPos));
 aPos.SetRow(16);
 pFC = m_pDoc->GetFormulaCell(aPos);
 CPPUNIT_ASSERT(pFC);
diff --git a/sc/source/core/data/column3.cxx b/sc/source/core/data/column3.cxx
index e8a14b75b498..7586b000768d 100644
--- a/sc/source/core/data/column3.cxx
+++ b/sc/source/core/data/column3.cxx
@@ -2885,7 +2885,7 @@ public:
 rColumn.SetValue(aBlockPos, r.mnRow, 
r.maValue.getDouble(), false);
 break;
 case CELLTYPE_STRING:
-rColumn.SetRawString(aBlockPos, r.mnRow, 
*r.maValue.mpString, false);
+rColumn.SetRawString(aBlockPos, r.mnRow, 
*r.maValue.getSharedString(), false);
 break;
 default:
 ;
diff --git a/sc/source/core/data/column4.cxx b/sc/source/core/data/column4.cxx
index 7861ed5ce55e..6c710d9ed22e 100644
--- a/sc/source/core/data/column4.cxx
+++ b/sc/source/core/data/column4.cxx
@@ -291,8 +291,8 @@ void ScColumn::CopyOneCellFromClip( 
sc::CopyFromClipContext& rCxt, SCROW nRow1,
 // same document. If not, re-intern shared strings.
 svl::SharedStringPool* pSharedStringPool = (bSameDocPool ? 
nullptr : &rDocument.GetSharedStringPool());
 svl::SharedString aStr = (pSharedStringPool ?
-pSharedStringPool->intern( 
rSrcCell.mpString->getString()) :
-*rSrcCell.mpString);
+pSharedStringPool->intern( 
rSrcCell.getSharedString()-> getString()) :
+*rSrcCell.getSharedString());
 
 std::vector aStrs(nDestSize, aStr);
   

[Libreoffice-commits] core.git: offapi/com

2022-06-17 Thread Mike Kaganski (via logerrit)
 offapi/com/sun/star/embed/XInplaceObject.idl |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c1eba8d34a5ea13e6317c7820507d717ace4ec5c
Author: Mike Kaganski 
AuthorDate: Fri Jun 17 14:05:12 2022 +0200
Commit: Mike Kaganski 
CommitDate: Fri Jun 17 15:20:34 2022 +0200

Change '@returns' into '@param'

That was causing the warning:

  
/home/tdf/jenkins/workspace/gerrit_windows/offapi/com/sun/star/embed/XInplaceObject.idl:85:
 warning:
  found documented return type for 
com::sun::star::embed::XInplaceObject::translateAccelerators that
  does not return anything

A similar 'translateAccelerators' is in XInplaceClient.idl.

Change-Id: I9abcb22ce8f460e2d26202542fef74b7e6a27ea6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136032
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 

diff --git a/offapi/com/sun/star/embed/XInplaceObject.idl 
b/offapi/com/sun/star/embed/XInplaceObject.idl
index ba04393aaa3e..dd41dcfa5697 100644
--- a/offapi/com/sun/star/embed/XInplaceObject.idl
+++ b/offapi/com/sun/star/embed/XInplaceObject.idl
@@ -82,7 +82,7 @@ published interface XInplaceObject: 
com::sun::star::uno::XInterface
 /** provides accelerator table the container wants to use during inplace
 editing.
 
-@return
+@param aKeys
 an accelerator table from container
 
 @throws com::sun::star::embed::WrongStateException


[Libreoffice-commits] core.git: offapi/com

2022-06-17 Thread Mike Kaganski (via logerrit)
 offapi/com/sun/star/sheet/XDataPilotTable2.idl |2 --
 1 file changed, 2 deletions(-)

New commits:
commit dfdeb1bd67a7e1ce3bad26e5d02b54e4ece5f0f2
Author: Mike Kaganski 
AuthorDate: Fri Jun 17 14:01:13 2022 +0200
Commit: Mike Kaganski 
CommitDate: Fri Jun 17 14:49:57 2022 +0200

Drop useless '@returns `VOID`'

... which caused the warning:

  
/home/tdf/jenkins/workspace/gerrit_windows/offapi/com/sun/star/sheet/XDataPilotTable2.idl:62:
 warning: found documented return type for 
com::sun::star::sheet::XDataPilotTable2::insertDrillDownSheet that does not 
return anything

Change-Id: I028820dc11ed8110278f2a655f1ad0c26d7b91cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136031
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 

diff --git a/offapi/com/sun/star/sheet/XDataPilotTable2.idl 
b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
index 0d8a58283b25..d3dd6becd5a3 100644
--- a/offapi/com/sun/star/sheet/XDataPilotTable2.idl
+++ b/offapi/com/sun/star/sheet/XDataPilotTable2.idl
@@ -69,8 +69,6 @@ interface XDataPilotTable2: 
com::sun::star::sheet::XDataPilotTable
 is empty, no new sheet is inserted.
 
 @param aAddr address of a result cell
-
-@returns `VOID`
  */
 void insertDrillDownSheet( [in] com::sun::star::table::CellAddress aAddr );
 


[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - compilerplugins/clang desktop/source include/vcl sc/qa sw/qa vcl/headless vcl/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 compilerplugins/clang/constantparam.constructors.results |2 -
 desktop/source/lib/init.cxx  |6 +--
 include/vcl/virdev.hxx   |8 ++---
 sc/qa/unit/tiledrendering/tiledrendering.cxx |6 +--
 sw/qa/extras/tiledrendering/tiledrendering.cxx   |   24 +++
 vcl/headless/svpvd.cxx   |   24 ++-
 vcl/source/gdi/virdev.cxx|   19 ++-
 7 files changed, 44 insertions(+), 45 deletions(-)

New commits:
commit 7727c61b1c7c52b211c0f9ac0cd59fab680be679
Author: Luboš Luňák 
AuthorDate: Fri Jun 10 12:33:53 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:34:25 2022 +0200

make VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer() LOK-only

Because it's used only for LOK, and SvpSalVirtualDevice::CreateSurface()
otherwise wouldn't know whether to apply LOK DPI settings or not
(since this might be called for LOK tiled painting, when it should,
or it might be called from somewhere else while LOK is active, in which
case this should be handled normally). Getting that mismatched can cause
things like https://github.com/CollaboraOnline/online/issues/4834 .

Change-Id: I1df7b8a169c8ef2e799731a6695a032948536582
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135588
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 
(cherry picked from commit 91b98efc2a5cf41d9442f90d7cb37075721519e0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135710

diff --git a/compilerplugins/clang/constantparam.constructors.results 
b/compilerplugins/clang/constantparam.constructors.results
index bbb7f36f287a..c8348bc45827 100644
--- a/compilerplugins/clang/constantparam.constructors.results
+++ b/compilerplugins/clang/constantparam.constructors.results
@@ -527,7 +527,7 @@ include/vcl/transfer.hxx:358
 const class rtl::OUString & rDestDoc
 ""
 include/vcl/virdev.hxx:164
-_Bool VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer(const class 
Size &,const class Fraction &,const class Point &,unsigned char *)
+_Bool VirtualDevice::SetOutputSizePixelScaleOffsetAndLOKBuffer(const class 
Size &,const class Fraction &,const class Point &,unsigned char *)
 const class Point & rNewOffset
 Point()
 include/vcl/weld.hxx:635
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index edc206cb4122..52fd35a23104 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -3481,7 +3481,7 @@ static void doc_paintTile(LibreOfficeKitDocument* pThis,
 // Set background to transparent by default.
 pDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
 
-pDevice->SetOutputSizePixelScaleOffsetAndBuffer(
+pDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(
 Size(nCanvasWidth, nCanvasHeight), Fraction(1.0), Point(),
 pBuffer);
 
@@ -5726,7 +5726,7 @@ unsigned char* 
doc_renderFontOrientation(SAL_UNUSED_PARAMETER LibreOfficeKitDocu
 
 memset(pBuffer, 0, nFontWidth * nFontHeight * 4);
 aDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
-aDevice->SetOutputSizePixelScaleOffsetAndBuffer(
+aDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(
 Size(nFontWidth, nFontHeight), Fraction(1.0), Point(),
 pBuffer);
 
@@ -5826,7 +5826,7 @@ static void 
doc_paintWindowForView(LibreOfficeKitDocument* pThis, unsigned nLOKW
 ScopedVclPtrInstance pDevice(DeviceFormat::DEFAULT);
 pDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
 
-pDevice->SetOutputSizePixelScaleOffsetAndBuffer(Size(nWidth, nHeight), 
Fraction(1.0), Point(), pBuffer);
+pDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(Size(nWidth, nHeight), 
Fraction(1.0), Point(), pBuffer);
 
 MapMode aMapMode(pDevice->GetMapMode());
 aMapMode.SetOrigin(Point(-(nX / fDPIScale), -(nY / fDPIScale)));
diff --git a/include/vcl/virdev.hxx b/include/vcl/virdev.hxx
index 459660eb71cd..b611e7f8aecd 100644
--- a/include/vcl/virdev.hxx
+++ b/include/vcl/virdev.hxx
@@ -154,10 +154,10 @@ public:
 virtual voidEnableRTL( bool bEnable = true ) override;
 
 boolSetOutputSizePixel( const Size& rNewSize, bool bErase 
= true );
-boolSetOutputSizePixelScaleOffsetAndBuffer( const Size& 
rNewSize,
-const 
Fraction& rScale,
-const Point& 
rNewOffset,
-sal_uInt8* 
pBuffer);
+boolSetOutputSizePixelScaleOffsetAndLOKBuffer( const Size& 
rNewSize,
+   const 
Fraction& rScale,
+   const 
Point& rNewOffset,
+  

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - sc/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 sc/source/core/data/table7.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit cdb6f964f6bd7170f3f1d1e167c6558f75c77884
Author: Luboš Luňák 
AuthorDate: Wed Jun 15 09:29:20 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:31:05 2022 +0200

allocate column in ScTable::DeleteBeforeCopyFromClip() (tdf#149554)

Change-Id: I22607f1dd0ec1c083f6a52a2ecccb976fc133687
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135864
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 
(cherry picked from commit e445eac863ac616fb99c9d6bf5510b965fd15957)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135950
Tested-by: Jenkins CollaboraOffice 

diff --git a/sc/source/core/data/table7.cxx b/sc/source/core/data/table7.cxx
index f7576361c8a1..9af01cba748e 100644
--- a/sc/source/core/data/table7.cxx
+++ b/sc/source/core/data/table7.cxx
@@ -115,7 +115,7 @@ void ScTable::DeleteBeforeCopyFromClip(
 if (nClipCol > aClipRange.aEnd.Col())
 nClipCol = aClipRange.aStart.Col(); // loop through columns.
 
-const ScColumn& rClipCol = rClipTab.aCol[nClipCol];
+const ScColumn& rClipCol = 
const_cast(rClipTab).CreateColumnIfNotExists(nClipCol);
 aCol[nCol].DeleteBeforeCopyFromClip(rCxt, rClipCol, 
rBroadcastSpans);
 }
 }


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - sc/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 sc/source/core/data/table2.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 232a982d0f0d9cee356bd4491c717463d718986d
Author: Luboš Luňák 
AuthorDate: Mon Jun 13 19:51:43 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:29:59 2022 +0200

allocate columns in ScTable::TransposeClip() (tdf#149554)

Change-Id: I2ae151ed9656884bca6963ba09bdf236e09096b7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135774
Tested-by: Xisco Fauli 
Reviewed-by: Luboš Luňák 
(cherry picked from commit ef1be22efb3e1625da1683ea98392cc41657b1cd)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135748
Tested-by: Jenkins CollaboraOffice 

diff --git a/sc/source/core/data/table2.cxx b/sc/source/core/data/table2.cxx
index e42a6e69de4a..32c1e34bbff4 100644
--- a/sc/source/core/data/table2.cxx
+++ b/sc/source/core/data/table2.cxx
@@ -990,7 +990,7 @@ void ScTable::TransposeClip(SCCOL nCol1, SCROW nRow1, SCCOL 
nCol2, SCROW nRow2,
 {
 bool bWasCut = rDocument.IsCutMode();
 
-for (SCCOL nCol=nCol1; nCol<=nCol2; nCol++)
+for (SCCOL nCol : GetWritableColumnsRange(nCol1, nCol2))
 {
 std::vector aFilteredRows;
 


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - compilerplugins/clang desktop/source include/vcl sc/qa sw/qa vcl/headless vcl/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 compilerplugins/clang/constantparam.constructors.results |2 -
 desktop/source/lib/init.cxx  |6 +--
 include/vcl/virdev.hxx   |8 ++---
 sc/qa/unit/tiledrendering/tiledrendering.cxx |6 +--
 sw/qa/extras/tiledrendering/tiledrendering.cxx   |   22 ++---
 vcl/headless/svpvd.cxx   |   24 ++-
 vcl/source/gdi/virdev.cxx|   19 ++-
 7 files changed, 43 insertions(+), 44 deletions(-)

New commits:
commit ffe7e9bb1f099b1d517ab6a082793fa58330eccd
Author: Luboš Luňák 
AuthorDate: Fri Jun 10 12:33:53 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:29:32 2022 +0200

make VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer() LOK-only

Because it's used only for LOK, and SvpSalVirtualDevice::CreateSurface()
otherwise wouldn't know whether to apply LOK DPI settings or not
(since this might be called for LOK tiled painting, when it should,
or it might be called from somewhere else while LOK is active, in which
case this should be handled normally). Getting that mismatched can cause
things like https://github.com/CollaboraOnline/online/issues/4834 .

Change-Id: I1df7b8a169c8ef2e799731a6695a032948536582
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135546
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Luboš Luňák 

diff --git a/compilerplugins/clang/constantparam.constructors.results 
b/compilerplugins/clang/constantparam.constructors.results
index bbb7f36f287a..c8348bc45827 100644
--- a/compilerplugins/clang/constantparam.constructors.results
+++ b/compilerplugins/clang/constantparam.constructors.results
@@ -527,7 +527,7 @@ include/vcl/transfer.hxx:358
 const class rtl::OUString & rDestDoc
 ""
 include/vcl/virdev.hxx:164
-_Bool VirtualDevice::SetOutputSizePixelScaleOffsetAndBuffer(const class 
Size &,const class Fraction &,const class Point &,unsigned char *)
+_Bool VirtualDevice::SetOutputSizePixelScaleOffsetAndLOKBuffer(const class 
Size &,const class Fraction &,const class Point &,unsigned char *)
 const class Point & rNewOffset
 Point()
 include/vcl/weld.hxx:635
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index 51167cf7871b..5b4434b75e22 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -3489,7 +3489,7 @@ static void doc_paintTile(LibreOfficeKitDocument* pThis,
 // Set background to transparent by default.
 pDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
 
-pDevice->SetOutputSizePixelScaleOffsetAndBuffer(
+pDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(
 Size(nCanvasWidth, nCanvasHeight), Fraction(1.0), Point(),
 pBuffer);
 
@@ -5734,7 +5734,7 @@ unsigned char* 
doc_renderFontOrientation(SAL_UNUSED_PARAMETER LibreOfficeKitDocu
 
 memset(pBuffer, 0, nFontWidth * nFontHeight * 4);
 aDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
-aDevice->SetOutputSizePixelScaleOffsetAndBuffer(
+aDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(
 Size(nFontWidth, nFontHeight), Fraction(1.0), Point(),
 pBuffer);
 
@@ -5834,7 +5834,7 @@ static void 
doc_paintWindowForView(LibreOfficeKitDocument* pThis, unsigned nLOKW
 ScopedVclPtrInstance pDevice(DeviceFormat::DEFAULT);
 pDevice->SetBackground(Wallpaper(COL_TRANSPARENT));
 
-pDevice->SetOutputSizePixelScaleOffsetAndBuffer(Size(nWidth, nHeight), 
Fraction(1.0), Point(), pBuffer);
+pDevice->SetOutputSizePixelScaleOffsetAndLOKBuffer(Size(nWidth, nHeight), 
Fraction(1.0), Point(), pBuffer);
 
 MapMode aMapMode(pDevice->GetMapMode());
 aMapMode.SetOrigin(Point(-(nX / fDPIScale), -(nY / fDPIScale)));
diff --git a/include/vcl/virdev.hxx b/include/vcl/virdev.hxx
index 459660eb71cd..b611e7f8aecd 100644
--- a/include/vcl/virdev.hxx
+++ b/include/vcl/virdev.hxx
@@ -154,10 +154,10 @@ public:
 virtual voidEnableRTL( bool bEnable = true ) override;
 
 boolSetOutputSizePixel( const Size& rNewSize, bool bErase 
= true );
-boolSetOutputSizePixelScaleOffsetAndBuffer( const Size& 
rNewSize,
-const 
Fraction& rScale,
-const Point& 
rNewOffset,
-sal_uInt8* 
pBuffer);
+boolSetOutputSizePixelScaleOffsetAndLOKBuffer( const Size& 
rNewSize,
+   const 
Fraction& rScale,
+   const 
Point& rNewOffset,
+   sal_uInt8* 
pBuffer);
 
 boolSetOutputSize( const Size& rNewSize )
  

[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - sc/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 sc/source/core/data/table1.cxx |   24 
 1 file changed, 12 insertions(+), 12 deletions(-)

New commits:
commit f4c43f8fc8c08f9ad0a63504a3067eca6b8b2c00
Author: Luboš Luňák 
AuthorDate: Fri Jun 10 17:39:46 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:27:46 2022 +0200

find last data row before searching for first data row

GetLastDataRow() is more efficient than iterating every cell
with HasDataAt(), so first reduce the row range from the end
(in case the whole range is empty cells it's just one call).

Change-Id: Idc494795f68492ed8b05b2cd575598a9c5868b7f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135605
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 
(cherry picked from commit 7689bf445264d1b54038ec0b8d134c26847af40f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135552
Tested-by: Jenkins CollaboraOffice 

diff --git a/sc/source/core/data/table1.cxx b/sc/source/core/data/table1.cxx
index e65aa194f9f7..43dcd6abee20 100644
--- a/sc/source/core/data/table1.cxx
+++ b/sc/source/core/data/table1.cxx
@@ -1118,6 +1118,18 @@ bool ScTable::ShrinkToUsedDataArea( bool& o_bShrunk, 
SCCOL& rStartCol, SCROW& rS
 
 if (!bColumnsOnly)
 {
+while (rStartRow < rEndRow)
+{
+SCROW nLastDataRow = GetLastDataRow(rStartCol, rEndCol, rEndRow, 
pDataAreaExtras);
+if (0 <= nLastDataRow && nLastDataRow < rEndRow)
+{
+rEndRow = std::max( rStartRow, nLastDataRow);
+o_bShrunk = true;
+}
+else
+break;  // while
+}
+
 if (!bStickyTopRow)
 {
 while (rStartRow < rEndRow)
@@ -1137,18 +1149,6 @@ bool ScTable::ShrinkToUsedDataArea( bool& o_bShrunk, 
SCCOL& rStartCol, SCROW& rS
 break;  // while
 }
 }
-
-while (rStartRow < rEndRow)
-{
-SCROW nLastDataRow = GetLastDataRow(rStartCol, rEndCol, rEndRow, 
pDataAreaExtras);
-if (0 <= nLastDataRow && nLastDataRow < rEndRow)
-{
-rEndRow = std::max( rStartRow, nLastDataRow);
-o_bShrunk = true;
-}
-else
-break;  // while
-}
 }
 
 return rStartCol != rEndCol || (bColumnsOnly ?


[Libreoffice-commits] core.git: Branch 'distro/collabora/co-22.05' - desktop/inc desktop/source

2022-06-17 Thread Luboš Luňák (via logerrit)
 desktop/inc/lib/init.hxx|2 +-
 desktop/source/lib/init.cxx |8 
 2 files changed, 5 insertions(+), 5 deletions(-)

New commits:
commit 6373b1cc38c45e2b54649738ad89438a5b5320e3
Author: Luboš Luňák 
AuthorDate: Wed Jun 8 15:23:22 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:27:15 2022 +0200

use recursive mutex for LOK queue

Callbacks may be invoked while calling getLOKPayload(), which
would try to lock the mutex again. I actually originally expected
this possibility, as the comment and moving the data to
temporaries in CallbackFlushHandler::enqueueUpdatedTypes()
shows, I just didn't realize the used mutex wasn't recursive
and so would deadlock.

Change-Id: I2b5c4b6b4c1a3933a32ae4641830877e085f2b6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135499
Tested-by: Jenkins
Reviewed-by: Michael Meeks 
(cherry picked from commit 118bafcfd1ce4a26ec9df912197ebd466d1bd497)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135387
Tested-by: Jenkins CollaboraOffice 
Reviewed-by: Luboš Luňák 

diff --git a/desktop/inc/lib/init.hxx b/desktop/inc/lib/init.hxx
index 6132a7a302cc..b7f3722dff1c 100644
--- a/desktop/inc/lib/init.hxx
+++ b/desktop/inc/lib/init.hxx
@@ -220,7 +220,7 @@ namespace desktop {
 LibreOfficeKitCallback m_pCallback;
 void *m_pData;
 int m_nDisableCallbacks;
-std::mutex m_mutex;
+std::recursive_mutex m_mutex;
 class TimeoutIdle : public Timer
 {
 public:
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index ac644c8b02ba..51167cf7871b 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -1460,7 +1460,7 @@ void 
CallbackFlushHandler::libreOfficeKitViewInvalidateTilesCallback(const tools
 void CallbackFlushHandler::libreOfficeKitViewUpdatedCallback(int nType)
 {
 assert(isUpdatedType( nType ));
-std::unique_lock lock(m_mutex);
+std::unique_lock lock(m_mutex);
 SAL_INFO("lok", "Updated: [" << nType << "]");
 setUpdatedType(nType, true);
 }
@@ -1468,7 +1468,7 @@ void 
CallbackFlushHandler::libreOfficeKitViewUpdatedCallback(int nType)
 void CallbackFlushHandler::libreOfficeKitViewUpdatedCallbackPerViewId(int 
nType, int nViewId, int nSourceViewId)
 {
 assert(isUpdatedTypePerViewId( nType ));
-std::unique_lock lock(m_mutex);
+std::unique_lock lock(m_mutex);
 SAL_INFO("lok", "Updated: [" << nType << "]");
 setUpdatedTypePerViewId(nType, nViewId, nSourceViewId, true);
 }
@@ -1539,7 +1539,7 @@ void CallbackFlushHandler::queue(const int type, 
CallbackData& aCallbackData)
 return;
 }
 
-std::unique_lock lock(m_mutex);
+std::unique_lock lock(m_mutex);
 
 // Update types should be received via the updated callbacks for 
performance,
 // getting them as normal callbacks is technically not wrong, but probably 
should be avoided.
@@ -2133,7 +2133,7 @@ void CallbackFlushHandler::Invoke()
 viewShell->flushPendingLOKInvalidateTiles();
 }
 
-std::scoped_lock lock(m_mutex);
+std::unique_lock lock(m_mutex);
 
 // Append messages for updated types, fetch them only now.
 enqueueUpdatedTypes();


[Libreoffice-commits] core.git: oox/source sd/qa

2022-06-17 Thread Mike Kaganski (via logerrit)
 oox/source/drawingml/fillproperties.cxx |   92 +---
 sd/qa/unit/data/pptx/croppedTo0.pptx|binary
 sd/qa/unit/import-tests2.cxx|   10 +++
 3 files changed, 48 insertions(+), 54 deletions(-)

New commits:
commit 5772cef244dbee5834efbc693bc714d89ae6301d
Author: Mike Kaganski 
AuthorDate: Wed Jun 15 18:33:38 2022 +0300
Commit: Mike Kaganski 
CommitDate: Fri Jun 17 14:25:54 2022 +0200

tdf#134210: Reimplement cropping from srcRect and fillRect

This avoids the scaling after the crop, since scaling is performed
anyway when applying BitmapMode_STRETCH. This improves resulting
bitmap quality.

Also consider the "crop to zero" case (when the sum of cropped
parts is equal to 100%). In that case, just use an empty graphic
as the fill bitmap.

This makes the differences between srcRect and fillRect processing
explicit, simplifies the code, avoids extra rounding inaccuracies,
and takes care of the edge cases that were considered in commit
2859ec288f2c1323ea3123d82cb1684b349ff598
  Author Miklos Vajna 
  Date   Wed Jun 15 15:52:18 2022 +0200
oox: fix div by zero in lclCalculateCropPercentage()

The change in SdImportTest2::testTdf134210 is because we now don't
scale the cropped image. The previous value was an interpolated
color, while the new value is the actual color of pixel [0, 41] of
the original image.

Change-Id: I24fa9928cff32bcaa6a7b3e34def14700fddd7ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135917
Tested-by: Jenkins
Reviewed-by: Mike Kaganski 

diff --git a/oox/source/drawingml/fillproperties.cxx 
b/oox/source/drawingml/fillproperties.cxx
index 93fea51194ef..9270201920b3 100644
--- a/oox/source/drawingml/fillproperties.cxx
+++ b/oox/source/drawingml/fillproperties.cxx
@@ -88,67 +88,55 @@ Reference< XGraphic > 
lclRotateGraphic(uno::Reference const &
 return aReturnGraphic.GetXGraphic();
 }
 
-void lclCalculateCropPercentage(uno::Reference const & 
xGraphic, geometry::IntegerRectangle2D &aFillRect)
+using Quotients = std::tuple;
+Quotients getQuotients(geometry::IntegerRectangle2D aRelRect, double hDiv, 
double vDiv)
 {
-::Graphic aGraphic(xGraphic);
-assert (aGraphic.GetType() == GraphicType::Bitmap);
-
-BitmapEx aBitmapEx(aGraphic.GetBitmapEx());
-
-sal_Int32 nScaledWidth = aBitmapEx.GetSizePixel().Width();
-sal_Int32 nScaledHeight = aBitmapEx.GetSizePixel().Height();
-
-sal_Int32 nOrigWidth = (nScaledWidth * (10 - aFillRect.X1 - 
aFillRect.X2)) / 10;
-if (nOrigWidth == 0)
-{
-nOrigWidth = 1;
-}
-sal_Int32 nOrigHeight = (nScaledHeight * (10 - aFillRect.Y1 - 
aFillRect.Y2)) / 10;
-if (nOrigHeight == 0)
-{
-nOrigHeight = 1;
-}
+return { aRelRect.X1 / hDiv, aRelRect.Y1 / vDiv, aRelRect.X2 / hDiv, 
aRelRect.Y2 / vDiv };
+}
 
-sal_Int32 nLeftPercentage = nScaledWidth * aFillRect.X1 / nOrigWidth;
-sal_Int32 nRightPercentage = nScaledWidth * aFillRect.X2 / nOrigWidth;
-sal_Int32 nTopPercentage = nScaledHeight * aFillRect.Y1 / nOrigHeight;
-sal_Int32 nBottomPercentage = nScaledHeight * aFillRect.Y2 / nOrigHeight;
+// ECMA-376 Part 1 20.1.8.55 srcRect (Source Rectangle)
+std::optional CropQuotientsFromSrcRect(geometry::IntegerRectangle2D 
aSrcRect)
+{
+// Currently the following precondition is guaranteed in 
GraphicProperties::pushToPropMap
+assert(aSrcRect.X1 >= 0 && aSrcRect.X2 >= 0 && aSrcRect.Y1 >= 0 && 
aSrcRect.Y2 >= 0);
+if (aSrcRect.X1 + aSrcRect.X2 >= 100'000 || aSrcRect.Y1 + aSrcRect.Y2 >= 
100'000)
+return {}; // Cropped everything
+return getQuotients(aSrcRect, 100'000.0, 100'000.0);
+}
 
-aFillRect.X1 = -nLeftPercentage;
-aFillRect.X2 = -nRightPercentage;
-aFillRect.Y1 = -nTopPercentage;
-aFillRect.Y2 = -nBottomPercentage;
+// ECMA-376 Part 1 20.1.8.30 fillRect (Fill Rectangle)
+std::optional 
CropQuotientsFromFillRect(geometry::IntegerRectangle2D aFillRect)
+{
+// Currently the following precondition is guaranteed in 
FillProperties::pushToPropMap
+assert(aFillRect.X1 <= 0 && aFillRect.X2 <= 0 && aFillRect.Y1 <= 0 && 
aFillRect.Y2 <= 0);
+// Negative divisor and negative relative offset give positive value 
wanted in lclCropGraphic
+return getQuotients(aFillRect, -100'000.0 + aFillRect.X1 + aFillRect.X2,
+-100'000.0 + aFillRect.Y1 + aFillRect.Y2);
 }
 
-// Crops a piece of the bitmap. Takes negative aFillRect values. Negative 
values means "crop",
-// positive values means "grow" bitmap with empty spaces. lclCropGraphic 
doesn't handle growing.
-Reference< XGraphic > lclCropGraphic(uno::Reference const & 
xGraphic, geometry::IntegerRectangle2D aFillRect)
+// Crops a piece of the bitmap. lclCropGraphic doesn't handle growing.
+Reference lclCropGraphic(uno::Reference const& 
xGraphic,
+   std::optional quotients)
 

[Libreoffice-commits] core.git: external/skia

2022-06-17 Thread Luboš Luňák (via logerrit)
 external/skia/UnpackedTarball_skia.mk |1 
 external/skia/tdf148624.patch.1   |   60 ++
 2 files changed, 61 insertions(+)

New commits:
commit 4dab8afe89c57318cc7503ae051963de89a6cd25
Author: Luboš Luňák 
AuthorDate: Fri Jun 17 10:38:03 2022 +0200
Commit: Luboš Luňák 
CommitDate: Fri Jun 17 14:23:25 2022 +0200

upstream Skia fix for Vulkan crash on texture binding (tdf#148624)

Change-Id: Ic16a516bfde04aba0336baca58f605d6cf9fd413
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136011
Tested-by: Jenkins
Reviewed-by: Luboš Luňák 

diff --git a/external/skia/UnpackedTarball_skia.mk 
b/external/skia/UnpackedTarball_skia.mk
index 99c70d557eee..7670b7798fbd 100644
--- a/external/skia/UnpackedTarball_skia.mk
+++ b/external/skia/UnpackedTarball_skia.mk
@@ -37,6 +37,7 @@ skia_patches := \
 fix-graphite-ifdef.patch.1 \
 allow-no-es2restrictions.patch.1 \
 vk_mem_alloc.patch.1 \
+tdf148624.patch.1 \
 
 $(eval $(call gb_UnpackedTarball_set_patchlevel,skia,1))
 
diff --git a/external/skia/tdf148624.patch.1 b/external/skia/tdf148624.patch.1
new file mode 100644
index ..c42beca22903
--- /dev/null
+++ b/external/skia/tdf148624.patch.1
@@ -0,0 +1,60 @@
+commit b2cecde549c76cbd1c8b7d0cee2c6799936c1e7a
+Author: Greg Daniel 
+Date:   Thu Jun 16 11:29:08 2022 -0400
+
+Fix not using texture barrier on StrokeTessOp.
+
+Previously we were overwriting the renderpassXferBarriers flag on
+ProgramInfo to set it to kNone. This flag is meant to say whether or not
+the entire render pass uses barriers or not. This is needed in Vulkan
+because all pipelines in a render pass that has an input attachment
+must bind the input attachment regardless if it is used or not. So the
+pipeline must be created with a layout for an input attachment
+descriptor set.
+
+This change just removes to performance optimization to only use the
+barrier on the stencil and not fill draw. This use case shouldn't
+come up too often and also shouldn't be a big perf hit regardless.
+The way GrAppliedClip is created/used it is hard for us to create
+multiple different Pipeline objects: one for stencil and one for the
+fill.
+
+Bug: skia:13402
+Change-Id: I15ce74b4d41b90d3dd4169a1f4fb77ed87c8b26d
+Reviewed-on: https://skia-review.googlesource.com/c/skia/+/549898
+Reviewed-by: Michael Ludwig 
+Commit-Queue: Greg Daniel 
+
+diff --git a/src/gpu/ganesh/ops/StrokeTessellateOp.cpp 
b/src/gpu/ganesh/ops/StrokeTessellateOp.cpp
+index 8f47441eb9..de8153cd0f 100644
+--- a/src/gpu/ganesh/ops/StrokeTessellateOp.cpp
 b/src/gpu/ganesh/ops/StrokeTessellateOp.cpp
+@@ -179,7 +179,12 @@ void 
StrokeTessellateOp::prePrepareTessellator(GrTessellationShader::ProgramArgs
+ fStencilProgram = GrTessellationShader::MakeProgram(args, 
fTessellationShader, pipeline,
+ &kMarkStencil);
+ fillStencil = &kTestAndResetStencil;
+-args.fXferBarrierFlags = GrXferBarrierFlags::kNone;
++// TODO: Currently if we have a texture barrier for a dst read it 
will get put in before
++// both the stencil draw and the fill draw. In reality we only really 
need the barrier
++// once to guard the reads of the color buffer in the fill from the 
previous writes. Maybe
++// we can investigate how to remove one of these barriers but it is 
probably not something
++// that is required a lot and thus the extra barrier shouldn't be too 
much of a perf hit to
++// general Skia use.
+ }
+ 
+ fFillProgram = GrTessellationShader::MakeProgram(args, 
fTessellationShader, pipeline,
+diff --git a/src/gpu/ganesh/vk/GrVkPipelineStateBuilder.cpp 
b/src/gpu/ganesh/vk/GrVkPipelineStateBuilder.cpp
+index 54bc7f857a..0d61b8c4cb 100644
+--- a/src/gpu/ganesh/vk/GrVkPipelineStateBuilder.cpp
 b/src/gpu/ganesh/vk/GrVkPipelineStateBuilder.cpp
+@@ -279,6 +279,10 @@ GrVkPipelineState* 
GrVkPipelineStateBuilder::finalize(const GrProgramDesc& desc,
+ }
+ }
+ 
++// The vulkan spec says that if a subpass has an input attachment, then 
the input attachment
++// descriptor set must be bound to all pipelines in that subpass. This 
includes pipelines that
++// don't actually use the input attachment. Thus we look at the 
renderPassBarriers and not just
++// the DstProxyView barrier flags to determine if we use the input 
attachment.
+ bool usesInput = SkToBool(fProgramInfo.renderPassBarriers() & 
GrXferBarrierFlags::kTexture);
+ uint32_t layoutCount =
+ usesInput ? GrVkUniformHandler::kDescSetCount : 
(GrVkUniformHandler::kDescSetCount - 1);


[Libreoffice-commits] core.git: framework/source

2022-06-17 Thread Maxim Monastirsky (via logerrit)
 framework/source/uielement/toolbarwrapper.cxx |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 230a988c9011ffc365070acf9ecd750825b0b1ec
Author: Maxim Monastirsky 
AuthorDate: Thu Jun 16 13:24:24 2022 +0300
Commit: Maxim Monastirsky 
CommitDate: Fri Jun 17 14:00:14 2022 +0200

tdf#125040 Ignore the default context

This isn't a meaningful context, but a way to represent
a lack of context. Typically it's a temporary state,
followed by a proper context being set. The problem
becomes apparent when a context deactivation is caused
by switching to another document window, as the further
activation will happen only when the former window is
focused again. This makes the contextual controls
disappear in the meantime.

Change-Id: I96c8356acb2434c579dc74407043b55eb5374a0f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136010
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky 

diff --git a/framework/source/uielement/toolbarwrapper.cxx 
b/framework/source/uielement/toolbarwrapper.cxx
index 9acbe7ca7b55..8f3937ef094f 100644
--- a/framework/source/uielement/toolbarwrapper.cxx
+++ b/framework/source/uielement/toolbarwrapper.cxx
@@ -269,7 +269,7 @@ void SAL_CALL ToolBarWrapper::notifyContextChangeEvent( 
const ContextChangeEvent
 if ( m_bDisposed )
 throw DisposedException();
 
-if ( aEvent.ContextName.isEmpty() )
+if ( aEvent.ContextName.isEmpty() || aEvent.ContextName == "default" )
 return;
 
 const OUString aContextToolbar( m_aResourceURL + "-" + 
aEvent.ContextName.toAsciiLowerCase() );


[Libreoffice-commits] core.git: helpcontent2

2022-06-17 Thread Olivier Hallot (via logerrit)
 helpcontent2 |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit c175b00d784a1e702ac6e757c78322dfb4175309
Author: Olivier Hallot 
AuthorDate: Fri Jun 17 13:47:27 2022 +0200
Commit: Gerrit Code Review 
CommitDate: Fri Jun 17 13:47:27 2022 +0200

Update git submodules

* Update helpcontent2 from branch 'master'
  to 665f218e5e027ab3ad56bf6066d98d8323555ab3
  - Mute l10n

Change-Id: Ie3f063c53f424293da59e85e4a34334f37d4324c
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136021
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/helpcontent2 b/helpcontent2
index 9f035d777141..665f218e5e02 16
--- a/helpcontent2
+++ b/helpcontent2
@@ -1 +1 @@
-Subproject commit 9f035d777141d5f039a85d6f64b627eaf73b8079
+Subproject commit 665f218e5e027ab3ad56bf6066d98d8323555ab3


[Libreoffice-commits] help.git: source/text

2022-06-17 Thread Olivier Hallot (via logerrit)
 source/text/smath/guide/limits.xhp |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit 665f218e5e027ab3ad56bf6066d98d8323555ab3
Author: Olivier Hallot 
AuthorDate: Thu Jun 16 21:37:54 2022 +0200
Commit: Olivier Hallot 
CommitDate: Fri Jun 17 13:47:26 2022 +0200

Mute l10n

Change-Id: Ie3f063c53f424293da59e85e4a34334f37d4324c
Reviewed-on: https://gerrit.libreoffice.org/c/help/+/136021
Tested-by: Jenkins
Reviewed-by: Olivier Hallot 

diff --git a/source/text/smath/guide/limits.xhp 
b/source/text/smath/guide/limits.xhp
index 282f1fb66..65b4d02c0 100644
--- a/source/text/smath/guide/limits.xhp
+++ b/source/text/smath/guide/limits.xhp
@@ -33,7 +33,7 @@
 You want to 
insert a summation formula like "summation of s^k from k = 0 to n" at the 
cursor in a Writer text document.
 
 
-
+
 You see the 
Math input window and the Elements pane on the left.
 
 
@@ -64,7 +64,7 @@
 In the same 
way, you can enter an Integral formula with limits. When you click an icon from 
the Elements pane, the assigned text command is inserted in the input window. 
If you know the text commands, you can enter the commands directly in the input 
window.
 
 
-
+
 
 
 Click in the 
input window and enter the following line:


[Libreoffice-commits] core.git: sc/qa

2022-06-17 Thread Xisco Fauli (via logerrit)
 sc/qa/extras/vba-macro-test.cxx |   45 
 1 file changed, 45 insertions(+)

New commits:
commit bf195037e2e59c46a8b7d149aedb79357e5ea978
Author: Xisco Fauli 
AuthorDate: Fri Jun 17 12:03:38 2022 +0200
Commit: Xisco Fauli 
CommitDate: Fri Jun 17 13:24:31 2022 +0200

tdf#149579: sc_vba_macro_test: Add unittest

Change-Id: I2cb673d9b42ea28b19fc408f2be86456258fcbe4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136013
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/extras/vba-macro-test.cxx b/sc/qa/extras/vba-macro-test.cxx
index 456b57822566..71c3b9033da1 100644
--- a/sc/qa/extras/vba-macro-test.cxx
+++ b/sc/qa/extras/vba-macro-test.cxx
@@ -63,6 +63,7 @@ public:
 void testMacroKeyBinding();
 
 void testVba();
+void testTdf149579();
 void testVbaRangeSort();
 void testTdf107885();
 void testTdf131562();
@@ -83,6 +84,7 @@ public:
 CPPUNIT_TEST(testMacroKeyBinding);
 
 CPPUNIT_TEST(testVba);
+CPPUNIT_TEST(testTdf149579);
 CPPUNIT_TEST(testVbaRangeSort);
 CPPUNIT_TEST(testTdf107885);
 CPPUNIT_TEST(testTdf131562);
@@ -596,6 +598,49 @@ void VBAMacroTest::testVba()
 }
 }
 
+void VBAMacroTest::testTdf149579()
+{
+auto xComponent = loadFromDesktop("private:factory/scalc");
+
+css::uno::Reference xDocScr(xComponent, 
uno::UNO_QUERY_THROW);
+auto xLibs = xDocScr->getBasicLibraries();
+auto xLibrary = xLibs->createLibrary("TestLibrary");
+xLibrary->insertByName("TestModule",
+   uno::Any(OUString("Option VBASupport 1\n"
+ "Sub TestTdf149579\n"
+ "Range(\"A1\").Sort 
Key1:=Range(\"A1\")\n"
+ "End Sub\n")));
+
+uno::Any aRet;
+uno::Sequence aOutParamIndex;
+uno::Sequence aOutParam;
+
+SfxObjectShell* pFoundShell = 
SfxObjectShell::GetShellFromComponent(xComponent);
+ScDocShell* pDocSh = static_cast(pFoundShell);
+CPPUNIT_ASSERT(pDocSh);
+ScDocument& rDoc = pDocSh->GetDocument();
+
+rDoc.SetValue(ScAddress(0, 0, 0), 5.0);
+rDoc.SetValue(ScAddress(0, 1, 0), 10.0);
+rDoc.SetValue(ScAddress(0, 2, 0), 1.0);
+
+// Without the fix in place, this call would have crashed in debug builds 
with failed assertion
+ErrCode result = SfxObjectShell::CallXScript(
+xComponent,
+
"vnd.sun.Star.script:TestLibrary.TestModule.TestTdf149579?language=Basic&location=document",
+{}, aRet, aOutParamIndex, aOutParam);
+CPPUNIT_ASSERT_EQUAL(ERRCODE_NONE, result);
+
+// Without the fix in place, this test would have failed with
+// - Expected: 1
+// - Actual  : 5
+CPPUNIT_ASSERT_EQUAL(1.0, rDoc.GetValue(ScAddress(0, 0, 0)));
+CPPUNIT_ASSERT_EQUAL(5.0, rDoc.GetValue(ScAddress(0, 1, 0)));
+CPPUNIT_ASSERT_EQUAL(10.0, rDoc.GetValue(ScAddress(0, 2, 0)));
+
+pDocSh->DoClose();
+}
+
 void VBAMacroTest::testVbaRangeSort()
 {
 auto xComponent = loadFromDesktop("private:factory/scalc");


[Libreoffice-commits] core.git: sc/qa

2022-06-17 Thread Xisco Fauli (via logerrit)
 sc/qa/uitest/calc_tests9/tdf149529.py |   52 ++
 sc/qa/uitest/data/tdf149529.ods   |binary
 2 files changed, 52 insertions(+)

New commits:
commit 1328ff3ddc2646b6061baf31ebe5d7c84513d263
Author: Xisco Fauli 
AuthorDate: Fri Jun 17 11:11:41 2022 +0200
Commit: Xisco Fauli 
CommitDate: Fri Jun 17 13:24:05 2022 +0200

tdf#149529: sc: Add UItest

Change-Id: I21a20c2d9d5922ac622d6b5858d500cdb3fc65ea
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136012
Tested-by: Jenkins
Reviewed-by: Xisco Fauli 

diff --git a/sc/qa/uitest/calc_tests9/tdf149529.py 
b/sc/qa/uitest/calc_tests9/tdf149529.py
new file mode 100644
index ..59f6826e3332
--- /dev/null
+++ b/sc/qa/uitest/calc_tests9/tdf149529.py
@@ -0,0 +1,52 @@
+# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*-
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+
+from uitest.framework import UITestCase
+from uitest.uihelper.common import get_state_as_dict, get_url_for_data_file
+from uitest.uihelper.common import select_by_text
+from libreoffice.uno.propertyvalue import mkPropertyValues
+from libreoffice.calc.document import get_cell_by_position
+
+class Tdf149529(UITestCase):
+
+   def test_tdf149529(self):
+with self.ui_test.create_doc_in_start_center("calc") as document:
+
+with self.ui_test.execute_dialog_through_command(".uno:Insert") as 
xDialog:
+xBrowse = xDialog.getChild("browse")
+xFromFile = xDialog.getChild("fromfile")
+xTables = xDialog.getChild("tables")
+
+self.assertEqual("false", 
get_state_as_dict(xBrowse)['Enabled'])
+self.assertEqual("0", get_state_as_dict(xTables)['Children'])
+
+xFromFile.executeAction("CLICK", tuple())
+
+self.assertEqual("true", get_state_as_dict(xBrowse)['Enabled'])
+
+with self.ui_test.execute_blocking_action(
+xBrowse.executeAction, args=('CLICK', ()), 
close_button="") as dialog:
+xFileName = dialog.getChild("file_name")
+xFileName.executeAction("TYPE", mkPropertyValues({"TEXT": 
get_url_for_data_file("tdf149529.ods")}))
+xOpen = dialog.getChild("open")
+xOpen.executeAction("CLICK", tuple())
+
+self.ui_test.wait_until_property_is_updated(xTables, 
"Children", "1")
+self.assertEqual("Codes", 
get_state_as_dict(xTables.getChild('0'))['Text'])
+
+self.assertEqual("GROUP", get_cell_by_position(document, 0, 0, 
0).getString())
+
+with 
self.ui_test.execute_dialog_through_command(".uno:ConditionalFormatManagerDialog")
 as xCondFormatMgr:
+xList = xCondFormatMgr.getChild("CONTAINER")
+self.assertEqual("1", get_state_as_dict(xList)['Children'])
+self.assertEqual("P6:P10\tColorScale", 
get_state_as_dict(xList.getChild('0'))['Text'])
+
+# Without the fix in place, this test would have crashed here
+
+# vim: set shiftwidth=4 softtabstop=4 expandtab:
diff --git a/sc/qa/uitest/data/tdf149529.ods b/sc/qa/uitest/data/tdf149529.ods
new file mode 100644
index ..994b9d1ab332
Binary files /dev/null and b/sc/qa/uitest/data/tdf149529.ods differ


[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - sw/qa sw/source

2022-06-17 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/htmlexport/htmlexport.cxx  |   41 
 sw/source/filter/html/htmlatr.cxx   |   12 +++--
 sw/source/filter/html/htmlnumwriter.cxx |4 ++-
 sw/source/filter/html/wrthtml.hxx   |3 +-
 4 files changed, 56 insertions(+), 4 deletions(-)

New commits:
commit 8581413deb7715dde56b84739e71301f12a4e326
Author: Miklos Vajna 
AuthorDate: Thu Jun 16 15:55:23 2022 +0200
Commit: Michael Stahl 
CommitDate: Fri Jun 17 10:33:18 2022 +0200

sw HTML export, XHTML mode: fix lost  with a list header + item

There is a general mismatch between XHTML and Writer lists: XHTML can
only contain list items (for ordered or unordered lists), while Writer
can contain list headers and list items. List headers have no bullet or
number at the start, list items are the normal text nodes.

Commit 8c2607ae3ce143586e623532b8ae5288277ec3ac (sw HTML export, XHTML
mode: fix lost  when last list item is not numbered, 2022-02-21)
fixed the list item end side of this problem: if all text nodes in a
list are headers, then don't write ul/ol at all, otherwise end list
headers with  as well to make sure the output XML is valid.
However, this created a mis-match, the starting  for list headers in
a list which have non-header text nodes at as was not adapted.

Fix the problem by extending OutHTML_SwFormat() so list headers in a
list with non-header text nodes always have a  and , and this
condition is the same on the start/end side.

Calculating if at least one text node is non-header in a list may not be
cheap, so reuse the already calculated info from
OutHTML_NumberBulletListStart() in OutHTML_SwFormat().

Change-Id: I3817a489f16166fc5b4c33ee64e2283c41a4402c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135999
Reviewed-by: Miklos Vajna 
Tested-by: Jenkins
(cherry picked from commit b2bee5a4db5552c4d408800908ca717b4ea2564a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135990
Reviewed-by: Xisco Fauli 
(cherry picked from commit 472a40b022ef685610faa663421a00cfe6121c24)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136019
Reviewed-by: Michael Stahl 

diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx 
b/sw/qa/extras/htmlexport/htmlexport.cxx
index f95f08d4c6de..cc30027f906d 100644
--- a/sw/qa/extras/htmlexport/htmlexport.cxx
+++ b/sw/qa/extras/htmlexport/htmlexport.cxx
@@ -1534,6 +1534,47 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, 
testPartiallyNumberedList)
 
"/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:ol/reqif-xhtml:li/reqif-xhtml:p",
 2);
 }
 
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testListHeaderAndItem)
+{
+// Given a document with a list, first para is not numbered, but the 
second is:
+loadURL("private:factory/swriter", nullptr);
+SwXTextDocument* pTextDoc = 
dynamic_cast(mxComponent.get());
+SwWrtShell* pWrtShell = pTextDoc->GetDocShell()->GetWrtShell();
+pWrtShell->Insert("not numbered");
+SwDoc* pDoc = pWrtShell->GetDoc();
+sal_uInt16 nPos = pDoc->MakeNumRule(pDoc->GetUniqueNumRuleName());
+SwNumRule* pNumRule = pDoc->GetNumRuleTable()[nPos];
+{
+SwNode& rNode = pWrtShell->GetCursor()->GetPoint()->nNode.GetNode();
+SwTextNode& rTextNode = *rNode.GetTextNode();
+rTextNode.SetAttr(SwNumRuleItem(pNumRule->GetName()));
+rTextNode.SetCountedInList(false);
+}
+pWrtShell->SplitNode();
+pWrtShell->Insert2("numbered");
+{
+SwNode& rNode = pWrtShell->GetCursor()->GetPoint()->nNode.GetNode();
+SwTextNode& rTextNode = *rNode.GetTextNode();
+rTextNode.SetAttr(SwNumRuleItem(pNumRule->GetName()));
+}
+
+// When exporting to ReqIF:
+ExportToReqif();
+
+// Then make sure the output is well-formed xhtml:
+SvMemoryStream aStream;
+HtmlExportTest::wrapFragment(maTempFile, aStream);
+xmlDocUniquePtr pXmlDoc = parseXmlStream(&aStream);
+// Without the accompanying fix in place, this test would have failed:
+// Entity: line 3: parser error : Opening and ending tag mismatch: ol line 
3 and li
+// not 
numbered
+CPPUNIT_ASSERT(pXmlDoc);
+// Make sure that in case the list has a header and an item, then both are 
wrapped in an 
+// element.
+assertXPath(pXmlDoc,
+
"/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:ol/reqif-xhtml:li/reqif-xhtml:p",
 2);
+}
+
 CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testBlockQuoteNoMargin)
 {
 // Given a document with some text, para style set to Quotations, no 
bottom margin:
diff --git a/sw/source/filter/html/htmlatr.cxx 
b/sw/source/filter/html/htmlatr.cxx
index c7c227b46864..60a7f1556c71 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -686,11 +686,12 @@ static void OutHTML_SwFormat( Writer& rWrt, const 
SwFormat& rFormat,
 if( nNewDefListLvl != rHWrt.m_nDefListLvl )

[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - pyuno/source

2022-06-17 Thread Stephan Bergmann (via logerrit)
 pyuno/source/loader/pyuno_loader.cxx |2 ++
 1 file changed, 2 insertions(+)

New commits:
commit e90f3bef395cd4a1dd0302202476531a6ecb735d
Author: Stephan Bergmann 
AuthorDate: Thu Jun 16 18:58:18 2022 +0200
Commit: Michael Stahl 
CommitDate: Fri Jun 17 10:23:26 2022 +0200

rhbz#2097411 Avoid obsolete PyThreadState_Delete crashing Python 3.11

1fb53a637597f76bea86514b62ddfad34f60c889 "pyuno_loader::CreateInstance: 
delete
the initial PyThreadState" had added the PyThreadState_Delete for claimed
benefits but whose details appear lost to history (cf. the comment thread
starting at


"pyuno_loader::CreateInstance: delete the initial PyThreadState").  And at 
least
a recent master Linux --enable-python=fully-internal build with the bundled
Python 3.8.12 appears to succeed `make check` just fine with the
PyThreadState_Delete temporarily removed.

But on the other hand, building against upcoming Python 3.11 now started to 
make
CppunitTest_services fail with

> Fatal Python error: init_threadstate: thread state already initialized
> Python runtime state: initialized
> Thread 0x81c8b020 (most recent call first):
>   
> Fatal exception: Signal 6
> Stack:
> 
/builddir/build/BUILD/libreoffice-7.3.4.2/instdir/program/libuno_sal.so.3(+0x37c28)[0x81be7c28]
> 
/builddir/build/BUILD/libreoffice-7.3.4.2/instdir/program/libuno_sal.so.3(+0x37e40)[0x81be7e40]
> linux-vdso.so.1(__kernel_rt_sigreturn+0x0)[0x81ccb7ec]
> /lib64/libc.so.6(+0x82878)[0x81742878]
> /lib64/libc.so.6(raise+0x20)[0x816fae00]
> /lib64/libc.so.6(abort+0xe8)[0x816e72b8]
> /lib64/libpython3.11.so.1.0(+0x104e28)[0xfffee4de4e28]
> /lib64/libpython3.11.so.1.0(+0x105200)[0xfffee4de5200]
> 
/lib64/libpython3.11.so.1.0(PyThread_get_thread_native_id+0x0)[0xfffee4ed6764]
> /lib64/libpython3.11.so.1.0(PyThreadState_New+0x14)[0xfffee4ed6628]
> 
/builddir/build/BUILD/libreoffice-7.3.4.2/instdir/program/libpyuno.so(_ZN5pyuno14PyThreadAttachC2EP3_is+0x78)[0xfffee4c8c52c]
> 
/builddir/build/BUILD/libreoffice-7.3.4.2/instdir/program/libpythonloaderlo.so(pyuno_Loader_get_implementation+0x5c)[0xfffee5243060]
> 
/builddir/build/BUILD/libreoffice-7.3.4.2/instdir/program/libuno_cppuhelpergcc3.so.3(+0x544b4)[0x815544b4]

because of the PyThreadState_Delete.  (The deleted PyThreadState, while not
reused again directly, is still recorded in the state obtained from
PyInterpreterState_Head() later.)

So conservatively keep the PyThreadState_Delete of unclear benefit for older
Python versions and only drop it for 3.11 where it is known to have negative
effects now.

Change-Id: I9b99f1e947f0b165ddc95c2bfbd764858dda39db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136006
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann 
(cherry picked from commit 1638b4f78af70b7b97d0a081ed51390dd87bf1f9)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136025
Reviewed-by: Michael Stahl 

diff --git a/pyuno/source/loader/pyuno_loader.cxx 
b/pyuno/source/loader/pyuno_loader.cxx
index 0db6e637a2a7..4a69c410db25 100644
--- a/pyuno/source/loader/pyuno_loader.cxx
+++ b/pyuno/source/loader/pyuno_loader.cxx
@@ -229,10 +229,12 @@ void pythonInit() {
 
 PyThreadState *tstate = PyThreadState_Get();
 PyEval_ReleaseThread( tstate );
+#if PY_VERSION_HEX < 0x030B
 // This tstate is never used again, so delete it here.
 // This prevents an assertion in PyThreadState_Swap on the
 // PyThreadAttach below.
 PyThreadState_Delete(tstate);
+#endif
 }
 
 }


[Libreoffice-commits] core.git: Branch 'distro/vector/vector-7.0' - sw/qa sw/source

2022-06-17 Thread Miklos Vajna (via logerrit)
 sw/qa/extras/htmlexport/htmlexport.cxx  |   41 
 sw/source/filter/html/htmlatr.cxx   |   12 +++--
 sw/source/filter/html/htmlnumwriter.cxx |4 ++-
 sw/source/filter/html/wrthtml.hxx   |3 +-
 4 files changed, 56 insertions(+), 4 deletions(-)

New commits:
commit eb0cd13590ae93410d831e689922c263ea75face
Author: Miklos Vajna 
AuthorDate: Thu Jun 16 15:55:23 2022 +0200
Commit: Miklos Vajna 
CommitDate: Fri Jun 17 08:50:48 2022 +0200

sw HTML export, XHTML mode: fix lost  with a list header + item

There is a general mismatch between XHTML and Writer lists: XHTML can
only contain list items (for ordered or unordered lists), while Writer
can contain list headers and list items. List headers have no bullet or
number at the start, list items are the normal text nodes.

Commit 8c2607ae3ce143586e623532b8ae5288277ec3ac (sw HTML export, XHTML
mode: fix lost  when last list item is not numbered, 2022-02-21)
fixed the list item end side of this problem: if all text nodes in a
list are headers, then don't write ul/ol at all, otherwise end list
headers with  as well to make sure the output XML is valid.
However, this created a mis-match, the starting  for list headers in
a list which have non-header text nodes at as was not adapted.

Fix the problem by extending OutHTML_SwFormat() so list headers in a
list with non-header text nodes always have a  and , and this
condition is the same on the start/end side.

Calculating if at least one text node is non-header in a list may not be
cheap, so reuse the already calculated info from
OutHTML_NumberBulletListStart() in OutHTML_SwFormat().

(cherry picked from commit b2bee5a4db5552c4d408800908ca717b4ea2564a)

Change-Id: I3817a489f16166fc5b4c33ee64e2283c41a4402c

diff --git a/sw/qa/extras/htmlexport/htmlexport.cxx 
b/sw/qa/extras/htmlexport/htmlexport.cxx
index 7b9128e8d32a..1d03d107fd09 100644
--- a/sw/qa/extras/htmlexport/htmlexport.cxx
+++ b/sw/qa/extras/htmlexport/htmlexport.cxx
@@ -1512,6 +1512,47 @@ CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, 
testPartiallyNumberedList)
 
"/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:ol/reqif-xhtml:li/reqif-xhtml:p",
 2);
 }
 
+CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testListHeaderAndItem)
+{
+// Given a document with a list, first para is not numbered, but the 
second is:
+loadURL("private:factory/swriter", nullptr);
+SwXTextDocument* pTextDoc = 
dynamic_cast(mxComponent.get());
+SwWrtShell* pWrtShell = pTextDoc->GetDocShell()->GetWrtShell();
+pWrtShell->Insert("not numbered");
+SwDoc* pDoc = pWrtShell->GetDoc();
+sal_uInt16 nPos = pDoc->MakeNumRule(pDoc->GetUniqueNumRuleName());
+SwNumRule* pNumRule = pDoc->GetNumRuleTable()[nPos];
+{
+SwNode& rNode = pWrtShell->GetCursor()->GetPoint()->nNode.GetNode();
+SwTextNode& rTextNode = *rNode.GetTextNode();
+rTextNode.SetAttr(SwNumRuleItem(pNumRule->GetName()));
+rTextNode.SetCountedInList(false);
+}
+pWrtShell->SplitNode();
+pWrtShell->Insert2("numbered");
+{
+SwNode& rNode = pWrtShell->GetCursor()->GetPoint()->nNode.GetNode();
+SwTextNode& rTextNode = *rNode.GetTextNode();
+rTextNode.SetAttr(SwNumRuleItem(pNumRule->GetName()));
+}
+
+// When exporting to ReqIF:
+ExportToReqif();
+
+// Then make sure the output is well-formed xhtml:
+SvMemoryStream aStream;
+HtmlExportTest::wrapFragment(maTempFile, aStream);
+xmlDocUniquePtr pXmlDoc = parseXmlStream(&aStream);
+// Without the accompanying fix in place, this test would have failed:
+// Entity: line 3: parser error : Opening and ending tag mismatch: ol line 
3 and li
+// not 
numbered
+CPPUNIT_ASSERT(pXmlDoc);
+// Make sure that in case the list has a header and an item, then both are 
wrapped in an 
+// element.
+assertXPath(pXmlDoc,
+
"/reqif-xhtml:html/reqif-xhtml:div/reqif-xhtml:ol/reqif-xhtml:li/reqif-xhtml:p",
 2);
+}
+
 CPPUNIT_TEST_FIXTURE(SwHtmlDomExportTest, testBlockQuoteNoMargin)
 {
 // Given a document with some text, para style set to Quotations, no 
bottom margin:
diff --git a/sw/source/filter/html/htmlatr.cxx 
b/sw/source/filter/html/htmlatr.cxx
index 8f8d0c1fa080..24ae4cbc1713 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -686,11 +686,12 @@ static void OutHTML_SwFormat( Writer& rWrt, const 
SwFormat& rFormat,
 if( nNewDefListLvl != rHWrt.m_nDefListLvl )
 rHWrt.OutAndSetDefList( nNewDefListLvl );
 
+bool bAtLeastOneNumbered = false;
 // if necessary, start a bulleted or numbered list
 if( rInfo.bInNumberBulletList )
 {
 OSL_ENSURE( !rHWrt.m_nDefListLvl, "DL cannot be inside OL!" );
-OutHTML_NumberBulletListStart( rHWrt, aNumInfo );
+OutHTML_NumberBulletListStart( rHWrt, aNumInfo, b

[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - sw/source

2022-06-17 Thread Michael Stahl (via logerrit)
 sw/source/core/attr/swatrset.cxx |   17 +
 1 file changed, 17 insertions(+)

New commits:
commit cdf48e57da6b8a6a5eb4131340fa2c14be135714
Author: Michael Stahl 
AuthorDate: Fri Mar 18 21:30:07 2022 +0100
Commit: Michael Stahl 
CommitDate: Fri Jun 17 09:41:54 2022 +0200

tdf#134759 sw: clear items in SwAttrSet::CopyToModify()

Setting new items but not clearing existing items smells like an
obvious omission. Why would we want a union of two nodes' items?

This improves things a bit for the bugdoc, but now it ends up with a
different wrong list on the node 254.

Change-Id: I3f5db0a4f81ac6e9af56d1faaefc2cb107dff597
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131841
Tested-by: Jenkins
Reviewed-by: Michael Stahl 
(cherry picked from commit 3707c0b4ff683ac6f0942a176ebcb8d824b567ee)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136015
Tested-by: Michael Stahl 

diff --git a/sw/source/core/attr/swatrset.cxx b/sw/source/core/attr/swatrset.cxx
index e50116d58459..de014a521d2e 100644
--- a/sw/source/core/attr/swatrset.cxx
+++ b/sw/source/core/attr/swatrset.cxx
@@ -423,6 +423,23 @@ void SwAttrSet::CopyToModify( sw::BroadcastingModify& rMod 
) const
 pFormat->SetFormatAttr( *this );
 }
 }
+if (pCNd && pCNd->HasSwAttrSet())
+{
+SfxWhichIter it(*this);
+std::vector toClear;
+for (sal_uInt16 nWhich = it.FirstWhich(); nWhich != 0; nWhich = 
it.NextWhich())
+{
+if (GetItemState(nWhich, false) != SfxItemState::SET
+&& pCNd->GetSwAttrSet().GetItemState(nWhich, false) == 
SfxItemState::SET)
+{
+toClear.emplace_back(nWhich);
+}
+}
+if (!toClear.empty())
+{
+pCNd->ResetAttr(toClear);
+}
+}
 }
 #if OSL_DEBUG_LEVEL > 0
 else


[Libreoffice-commits] core.git: Branch 'libreoffice-7-3' - sc/inc sc/source

2022-06-17 Thread Eike Rathke (via logerrit)
 sc/inc/listenercalls.hxx  |6 --
 sc/source/ui/unoobj/listenercalls.cxx |2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

New commits:
commit 0750bc969ac515fb9390f02ddcaa022c846f2d8a
Author: Eike Rathke 
AuthorDate: Thu Jun 16 21:44:40 2022 +0200
Commit: Xisco Fauli 
CommitDate: Fri Jun 17 09:22:39 2022 +0200

Resolves: tdf#147822 ScUnoListenerEntry container must be std::list

... instead of std::vector to not get invalidated iterators when
the container is resized.

Regression from

commit f8defe59ff75df2b516ee407f1dac22b0ac72a19
CommitDate: Wed Sep 6 22:45:10 2017 +0200

Replace some lists by vectors in unoobj (sc)

which was bad for this case.

Change-Id: I8d3a001242865cadc82b359a3198906d26373a41
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136007
Reviewed-by: Eike Rathke 
Tested-by: Jenkins
(cherry picked from commit 7a0a0e23b7e81c1ee0601824a4ee990a2178f98b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136023
Reviewed-by: Xisco Fauli 

diff --git a/sc/inc/listenercalls.hxx b/sc/inc/listenercalls.hxx
index ff835a048b1a..acb009937fa1 100644
--- a/sc/inc/listenercalls.hxx
+++ b/sc/inc/listenercalls.hxx
@@ -19,7 +19,7 @@
 
 #pragma once
 
-#include 
+#include 
 #include 
 #include 
 
@@ -48,7 +48,9 @@ struct ScUnoListenerEntry
 class ScUnoListenerCalls
 {
 private:
-::std::vector aEntries;
+// Must be list, not vector, to not invalidate iterators, see
+// ExecuteAndClear() implementation.
+::std::list aEntries;
 
 public:
 ScUnoListenerCalls();
diff --git a/sc/source/ui/unoobj/listenercalls.cxx 
b/sc/source/ui/unoobj/listenercalls.cxx
index 2d9a23083ca8..7ff7c7df0956 100644
--- a/sc/source/ui/unoobj/listenercalls.cxx
+++ b/sc/source/ui/unoobj/listenercalls.cxx
@@ -44,7 +44,7 @@ void ScUnoListenerCalls::ExecuteAndClear()
 //  During each modified() call, Add may be called again.
 //  These new calls are executed here, too.
 
-std::vector::iterator aItr(aEntries.begin());
+std::list::iterator aItr(aEntries.begin());
 while (aItr != aEntries.end())
 {
 ScUnoListenerEntry aEntry = *aItr;


[Libreoffice-commits] core.git: Branch 'libreoffice-7-4' - binaryurp/source

2022-06-17 Thread Noel Grandin (via logerrit)
 binaryurp/source/binaryurp.component |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit f3c74dff11e57d5a8f90e2f7aba1fcd99843675e
Author: Noel Grandin 
AuthorDate: Wed Jun 15 14:08:33 2022 +0200
Commit: Xisco Fauli 
CommitDate: Fri Jun 17 09:18:19 2022 +0200

BridgeFactory should be a singleton

regression from
commit 9be078ae0d4cc4e4c01952bb42c9bb5943bbde86
Date:   Sat Jul 4 09:12:35 2020 +0200
binaryurp: create instances with uno constructors

Change-Id: Ib7a7316fdee4afffac35b282adaf437ff8bdd009
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135904
Tested-by: Jenkins
Reviewed-by: Noel Grandin 
(cherry picked from commit 7531f027c742a601c13a7a849dfae795a148d899)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/135989
Reviewed-by: Xisco Fauli 

diff --git a/binaryurp/source/binaryurp.component 
b/binaryurp/source/binaryurp.component
index e2581c76411e..b5b0f4da102f 100644
--- a/binaryurp/source/binaryurp.component
+++ b/binaryurp/source/binaryurp.component
@@ -20,7 +20,7 @@
 http://openoffice.org/2010/uno-components";>
   
+
constructor="com_sun_star_comp_bridge_BridgeFactory_get_implementation" 
single-instance="true">