[Libreoffice-commits] core.git: Branch 'distro/collabora/co-2021' - 20 commits - config_host.mk.in configure.ac dbaccess/source download.lst external/curl formula/source include/formula include/svtools include/vcl readlicense_oo/license reportdesign/source RepositoryExternal.mk sc/qa scripting/source sc/source sd/source sfx2/source solenv/gbuild svl/source svtools/source svx/source sw/source sw/uiconfig vcl/source vcl/unx writerfilter/source
Caolán McNamara (via logerrit)
logerrit at kemper.freedesktop.org
Mon Aug 16 10:21:44 UTC 2021
RepositoryExternal.mk | 2
config_host.mk.in | 1
configure.ac | 1
dbaccess/source/ui/app/AppDetailView.cxx | 1
download.lst | 4
external/curl/ExternalPackage_curl.mk | 4
external/curl/ExternalProject_curl.mk | 7
external/curl/UnpackedTarball_curl.mk | 1
external/curl/curl-7.26.0_win-proxy.patch | 2
external/curl/curl-ios.patch.1 | 17
external/curl/curl-msvc-disable-protocols.patch.1 | 7
external/curl/zlib.patch.0 | 4
formula/source/ui/dlg/funcutl.cxx | 54
include/formula/funcutl.hxx | 18
include/svtools/brwbox.hxx | 1
include/svtools/editbrowsebox.hxx | 26
include/vcl/customweld.hxx | 9
readlicense_oo/license/CREDITS.fodt | 4246 +++++++++++-----------
reportdesign/source/ui/dlg/GroupsSorting.cxx | 4
reportdesign/source/ui/inc/GroupsSorting.hxx | 2
sc/qa/extras/macros-test.cxx | 30
sc/qa/extras/testdocuments/tdf143582.ods |binary
sc/source/core/data/table6.cxx | 8
sc/source/filter/oox/excelfilter.cxx | 8
sc/source/filter/xml/xmlimprt.cxx | 3
sc/source/ui/app/inputwin.cxx | 1
sc/source/ui/docshell/arealink.cxx | 3
sc/source/ui/docshell/docsh.cxx | 25
sc/source/ui/docshell/docsh4.cxx | 90
sc/source/ui/inc/docsh.hxx | 1
scripting/source/basprov/basscript.cxx | 2
sd/source/ui/animations/CustomAnimationPane.cxx | 2
sd/source/ui/remotecontrol/Communicator.cxx | 15
sd/source/ui/sidebar/SlideBackground.cxx | 4
sfx2/source/control/recentdocsview.cxx | 1
sfx2/source/control/recentdocsviewitem.cxx | 1
solenv/gbuild/platform/com_MSC_class.mk | 4
solenv/gbuild/platform/com_MSC_defs.mk | 12
svl/source/numbers/zforfind.cxx | 16
svtools/source/brwbox/brwbox2.cxx | 4
svtools/source/brwbox/ebbcontrols.cxx | 24
svtools/source/brwbox/editbrowsebox.cxx | 11
svx/source/dialog/weldeditview.cxx | 3
svx/source/fmcomp/gridcell.cxx | 103
svx/source/inc/findtextfield.hxx | 2
svx/source/inc/gridcell.hxx | 23
svx/source/tbxctrls/fillctrl.cxx | 5
svx/source/tbxctrls/tbunosearchcontrollers.cxx | 6
sw/source/core/crsr/crsrsh.cxx | 1
sw/source/core/inc/wrong.hxx | 1
sw/source/core/text/wrong.cxx | 4
sw/source/filter/html/css1atr.cxx | 4
sw/source/filter/html/htmltabw.cxx | 9
sw/source/filter/html/wrthtml.hxx | 2
sw/source/ui/dbui/createaddresslistdialog.cxx | 1
sw/source/ui/dialog/uiregionsw.cxx | 1
sw/source/ui/index/cnttab.cxx | 5
sw/source/uibase/inc/conttree.hxx | 2
sw/uiconfig/swriter/ui/assignstylesdialog.ui | 1
vcl/source/app/salvtables.cxx | 9
vcl/unx/gtk3/gtk3gtkinst.cxx | 69
writerfilter/source/dmapper/TableManager.cxx | 6
62 files changed, 2516 insertions(+), 2417 deletions(-)
New commits:
commit cc31e95ae24b0a2ee734ab3aaa35b79d1ca0e9da
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Fri Aug 13 09:28:38 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 12:17:30 2021 +0200
Resolves: tdf#143795 trigger layout when content changes
Change-Id: I9ec19b55f2b46ac8dd1415f45d5e0368fa52fbfd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120366
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sd/source/ui/sidebar/SlideBackground.cxx b/sd/source/ui/sidebar/SlideBackground.cxx
index 035875e5bc20..b372b25a2282 100644
--- a/sd/source/ui/sidebar/SlideBackground.cxx
+++ b/sd/source/ui/sidebar/SlideBackground.cxx
@@ -450,6 +450,10 @@ void SlideBackground::Update()
default:
break;
}
+
+ // Need to do a relayouting, otherwise the panel size is not updated after show / hide controls
+ if (m_pPanel)
+ m_pPanel->TriggerDeckLayouting();
}
void SlideBackground::UpdateMarginBox()
commit 5edcda8f63c017d7380e489efc15e1235fe47fa3
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Aug 12 12:55:30 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:15:16 2021 +0200
Resolves: tdf#132739 two style tags where there should be just one
Change-Id: Id9c8c8cc8c5ffdd21ba79ff39a6279cf2ddc8025
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120360
Tested-by: Jenkins
Reviewed-by: Adolfo Jayme Barrientos <fitojb at ubuntu.com>
diff --git a/sw/source/filter/html/css1atr.cxx b/sw/source/filter/html/css1atr.cxx
index 7b1a5cc19be3..c401d95a788f 100644
--- a/sw/source/filter/html/css1atr.cxx
+++ b/sw/source/filter/html/css1atr.cxx
@@ -2113,10 +2113,12 @@ void SwHTMLWriter::OutCSS1_TableFrameFormatOptions( const SwFrameFormat& rFrameF
Strm().WriteChar( '\"' );
}
-void SwHTMLWriter::OutCSS1_TableCellBorderHack(SwFrameFormat const& rFrameFormat)
+void SwHTMLWriter::OutCSS1_TableCellBordersAndBG(SwFrameFormat const& rFrameFormat, const SvxBrushItem *pBrushItem)
{
SwCSS1OutMode const aMode( *this,
CSS1_OUTMODE_STYLE_OPT_ON|CSS1_OUTMODE_ENCODE|CSS1_OUTMODE_TABLEBOX, nullptr );
+ if (pBrushItem)
+ OutCSS1_SvxBrush(*this, *pBrushItem, Css1Background::Table, nullptr);
OutCSS1_SvxBox(*this, rFrameFormat.GetBox());
if (!m_bFirstCSS1Property)
{
diff --git a/sw/source/filter/html/htmltabw.cxx b/sw/source/filter/html/htmltabw.cxx
index 4c83319747b7..63812a9b3ef6 100644
--- a/sw/source/filter/html/htmltabw.cxx
+++ b/sw/source/filter/html/htmltabw.cxx
@@ -424,11 +424,14 @@ void SwHTMLWrtTable::OutTableCell( SwHTMLWriter& rWrt,
// Avoid non-CSS version in the ReqIF case.
rWrt.OutBackground( pBrushItem, false );
- if( rWrt.m_bCfgOutStyles )
- OutCSS1_TableBGStyleOpt( rWrt, *pBrushItem );
+ if (!rWrt.m_bCfgOutStyles)
+ pBrushItem = nullptr;
}
- rWrt.OutCSS1_TableCellBorderHack(*pBox->GetFrameFormat());
+ // tdf#132739 with rWrt.m_bCfgOutStyles of true bundle the brush item css
+ // properties into the same "style" tag as the borders so there is only one
+ // style tag
+ rWrt.OutCSS1_TableCellBordersAndBG(*pBox->GetFrameFormat(), pBrushItem);
sal_uInt32 nNumFormat = 0;
double nValue = 0.0;
diff --git a/sw/source/filter/html/wrthtml.hxx b/sw/source/filter/html/wrthtml.hxx
index ab282ba652ff..f82325ee50ae 100644
--- a/sw/source/filter/html/wrthtml.hxx
+++ b/sw/source/filter/html/wrthtml.hxx
@@ -484,7 +484,7 @@ public:
void writeFrameFormatOptions(HtmlWriter& aHtml, const SwFrameFormat& rFrameFormat, const OUString& rAltText, HtmlFrmOpts nFrameOpts);
void OutCSS1_TableFrameFormatOptions( const SwFrameFormat& rFrameFormat );
- void OutCSS1_TableCellBorderHack(const SwFrameFormat& rFrameFormat);
+ void OutCSS1_TableCellBordersAndBG(const SwFrameFormat& rFrameFormat, const SvxBrushItem *pBrushItem);
void OutCSS1_SectionFormatOptions( const SwFrameFormat& rFrameFormat, const SwFormatCol *pCol );
void OutCSS1_FrameFormatOptions( const SwFrameFormat& rFrameFormat, HtmlFrmOpts nFrameOpts,
const SdrObject *pSdrObj=nullptr,
commit a7958e253d159b01f68519d2c8a9d0e7554958cd
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Aug 12 16:01:51 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:15:15 2021 +0200
Resolves: tdf#143843 disable the recently-used widget during load
We show a busy-cursor but the widget can still be interacted with so
another document can be launched by clicking on another recently-used
item while the first one is still loading, and the recently-used widget
isn't prepared for this scenario so the second to complete load will
crash.
Disable the recently-used widget when its cursor is set to busy, and in
the (unlikely) case that the load doesn't complete normally (missing
document or load filter error) and the recently-used widget still exists
and its cursor is unset from busy then reenable it for user input at
that point.
Change-Id: I8f4487f3dbede14c9778e49442366bd9445f1d63
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120363
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli at libreoffice.org>
diff --git a/sfx2/source/control/recentdocsview.cxx b/sfx2/source/control/recentdocsview.cxx
index e74c354bef92..4bd614bf8836 100644
--- a/sfx2/source/control/recentdocsview.cxx
+++ b/sfx2/source/control/recentdocsview.cxx
@@ -431,6 +431,7 @@ IMPL_LINK( RecentDocsView, ExecuteHdl_Impl, void*, p, void )
{
pLoadRecentFile->pView->DispatchedLoadRecentUsedFile();
pLoadRecentFile->pView->SetPointer(PointerStyle::Arrow);
+ pLoadRecentFile->pView->Enable();
}
delete pLoadRecentFile;
diff --git a/sfx2/source/control/recentdocsviewitem.cxx b/sfx2/source/control/recentdocsviewitem.cxx
index 8a047b20ee8d..d5dafe2d0e2c 100644
--- a/sfx2/source/control/recentdocsviewitem.cxx
+++ b/sfx2/source/control/recentdocsviewitem.cxx
@@ -178,6 +178,7 @@ void RecentDocsViewItem::OpenDocument()
{
// show busy mouse pointer
mrParentView.SetPointer(PointerStyle::Wait);
+ mrParentView.Disable();
Reference<frame::XDispatch> xDispatch;
css::util::URL aTargetURL;
commit d16276bb5e717a4c4e61117694b9acb6bf25d96f
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Tue Aug 10 21:58:27 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:15:15 2021 +0200
tdf#143769 don't crash on null XFillColorItem
use same solution as:
commit 5ee0e6ab93ad791f5e79506efafd16cb7364ffb1
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date: Tue Jul 21 19:01:26 2015 +0200
avoid crash with color listbox for now
Change-Id: I36ac6513546961ec8d8d1e9437a8ef88574acbf4
Change-Id: I46c55461e5867431a6e9c838b5ef462f9581eb28
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120248
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
diff --git a/svx/source/tbxctrls/fillctrl.cxx b/svx/source/tbxctrls/fillctrl.cxx
index 788a8fe1c1a1..e327be070b16 100644
--- a/svx/source/tbxctrls/fillctrl.cxx
+++ b/svx/source/tbxctrls/fillctrl.cxx
@@ -700,10 +700,11 @@ IMPL_LINK_NOARG(SvxFillToolBoxControl, SelectFillTypeHdl, weld::ComboBox&, void)
{
mpLbFillAttr->hide();
mpToolBoxColor->show();
- const ::Color aColor = mpColorItem->GetColorValue();
- const XFillColorItem aXFillColorItem( "", aColor );
if (pSh)
{
+ const ::Color aColor = mpColorItem ? mpColorItem->GetColorValue() : COL_AUTO;
+ const XFillColorItem aXFillColorItem( "", aColor );
+
// #i122676# change FillStyle and Color in one call
pSh->GetDispatcher()->ExecuteList(
SID_ATTR_FILL_COLOR, SfxCallMode::RECORD,
commit eaf7e188e1f695e4d165838b4b40414601d28591
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Feb 18 17:22:31 2021 +0000
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:15:14 2021 +0200
Resolves: tdf#143023 explicitly connect to ControlBase focus-[in/out]
instead of listening to the generic vcl::Window/Control focus events.
The thing which really gets/loses focus is now a Widget hosted inside
the ControlBase.
also contains...
fix comment
Change-Id: Ia1783aff3fded7fd73de2b04b9aced647771a92c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119998
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
establish that DbCellControl Window member is always a ControlBase
and remove resulting known redundant dynamic_casting
Change-Id: I5f098ef1adee3ad5d2a2bc5fcd30523f980df2f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119999
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
EventWindow is always a svt::ControlBase
update DataBrowser has-focus when child widget loses focus
similar to tdf#135641 case, focus-out becomes an issue with
the bibliography editor if focus-in is seen on clicking in a cell,
then click in a GtkEntry and tab around in a circle. Without this
lose-focus support focus will be grabbed back to the cell of the
initial click on a circuit of the focus-cycle
Change-Id: I36288ed21dc4357c077f8dee55b55abf2457c2a6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111157
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
(cherry picked from commit 422a8c3218b484817a8723b57fe9845d6abb83f4)
reportdesigner focus out handler clobbering the preexisting handler
set by the databrowser, so chain one after the other
Change-Id: I5aa16635031be425b9354e5a2d6b891a81d54e55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111384
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
(cherry picked from commit 731f08e5a84817dbc3c6be6e670025d51f39cd61)
Change-Id: I012d0bea687aa6d5965a4e2f6ce3899bfc629f1b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120006
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
diff --git a/include/svtools/brwbox.hxx b/include/svtools/brwbox.hxx
index b865b0957129..c14ecdb84a07 100644
--- a/include/svtools/brwbox.hxx
+++ b/include/svtools/brwbox.hxx
@@ -588,6 +588,7 @@ public:
tools::Rectangle GetControlArea() const;
virtual bool ProcessKey(const KeyEvent& rEvt);
virtual void ChildFocusIn();
+ virtual void ChildFocusOut();
void Dispatch( sal_uInt16 nId );
void SetMode( BrowserMode nMode );
BrowserMode GetMode( ) const { return m_nCurrentMode; }
diff --git a/include/svtools/editbrowsebox.hxx b/include/svtools/editbrowsebox.hxx
index 34696522bd78..a1badb8cce80 100644
--- a/include/svtools/editbrowsebox.hxx
+++ b/include/svtools/editbrowsebox.hxx
@@ -171,9 +171,26 @@ namespace svt
virtual void SetEditableReadOnly(bool bReadOnly);
virtual bool ProcessKey(const KeyEvent& rKEvt);
+
+ // chain after the FocusInHdl
+ void SetFocusInHdl(const Link<LinkParamNone*,void>& rHdl)
+ {
+ m_aFocusInHdl = rHdl;
+ }
+
+ // chain after the FocusOutHdl
+ void SetFocusOutHdl(const Link<LinkParamNone*,void>& rHdl)
+ {
+ m_aFocusOutHdl = rHdl;
+ }
+
protected:
DECL_LINK(KeyInputHdl, const KeyEvent&, bool);
DECL_LINK(FocusInHdl, weld::Widget&, void);
+ DECL_LINK(FocusOutHdl, weld::Widget&, void);
+ private:
+ Link<LinkParamNone*,void> m_aFocusInHdl;
+ Link<LinkParamNone*,void> m_aFocusOutHdl;
};
class SVT_DLLPUBLIC EditControlBase : public ControlBase
@@ -191,6 +208,7 @@ namespace svt
weld::Entry& get_widget() { return *m_pEntry; }
virtual void connect_changed(const Link<weld::Entry&, void>& rLink) = 0;
+ virtual void connect_focus_out(const Link<weld::Widget&, void>& rLink) = 0;
protected:
void InitEditControlBase(weld::Entry* pEntry);
@@ -211,6 +229,11 @@ namespace svt
m_xWidget->connect_changed(rLink);
}
+ virtual void connect_focus_out(const Link<weld::Widget&, void>& rLink) override
+ {
+ m_xWidget->connect_focus_out(rLink);
+ }
+
protected:
std::unique_ptr<weld::Entry> m_xWidget;
};
@@ -696,6 +719,7 @@ namespace svt
virtual void dispose() override;
virtual void connect_changed(const Link<weld::Entry&, void>& rLink) override;
+ virtual void connect_focus_out(const Link<weld::Widget&, void>& rLink) override;
weld::EntryFormatter& get_formatter();
@@ -762,6 +786,7 @@ namespace svt
weld::PatternFormatter& get_formatter() { return *m_xEntryFormatter; }
virtual void connect_changed(const Link<weld::Entry&, void>& rLink) override;
+ virtual void connect_focus_out(const Link<weld::Widget&, void>& rLink) override;
virtual void dispose() override;
private:
@@ -995,6 +1020,7 @@ namespace svt
virtual bool ProcessKey(const KeyEvent& rEvt) override;
virtual void ChildFocusIn() override;
+ virtual void ChildFocusOut() override;
css::uno::Reference< css::accessibility::XAccessible > CreateAccessibleCheckBoxCell(sal_Int32 _nRow, sal_uInt16 _nColumnPos,const TriState& eState);
bool ControlHasFocus() const;
diff --git a/reportdesign/source/ui/dlg/GroupsSorting.cxx b/reportdesign/source/ui/dlg/GroupsSorting.cxx
index 42ed619445e2..eddb97499491 100644
--- a/reportdesign/source/ui/dlg/GroupsSorting.cxx
+++ b/reportdesign/source/ui/dlg/GroupsSorting.cxx
@@ -375,7 +375,7 @@ void OFieldExpressionControl::lateInit()
rComboBox.connect_changed(LINK(this,OFieldExpressionControl,CBChangeHdl));
m_pComboCell->SetHelpId(HID_RPT_FIELDEXPRESSION);
- rComboBox.connect_focus_in(LINK(m_pParent, OGroupsSortingDialog, OnControlFocusGot));
+ m_pComboCell->SetFocusInHdl(LINK(m_pParent, OGroupsSortingDialog, OnControlFocusGot));
// set browse mode
@@ -928,7 +928,7 @@ sal_Int32 OGroupsSortingDialog::getColumnDataType(const OUString& _sColumnName)
return nDataType;
}
-IMPL_LINK_NOARG(OGroupsSortingDialog, OnControlFocusGot, weld::Widget&, void )
+IMPL_LINK_NOARG(OGroupsSortingDialog, OnControlFocusGot, LinkParamNone*, void )
{
m_xHelpWindow->set_label(RptResId(STR_RPT_HELP_FIELD));
}
diff --git a/reportdesign/source/ui/inc/GroupsSorting.hxx b/reportdesign/source/ui/inc/GroupsSorting.hxx
index cd038e6164c4..7b465a5a2034 100644
--- a/reportdesign/source/ui/inc/GroupsSorting.hxx
+++ b/reportdesign/source/ui/inc/GroupsSorting.hxx
@@ -74,7 +74,7 @@ private:
DECL_LINK( OnWidgetFocusLost, weld::Widget&, void );
DECL_LINK( OnWidgetFocusGot, weld::Widget&, void );
- DECL_LINK( OnControlFocusGot, weld::Widget&, void );
+ DECL_LINK( OnControlFocusGot, LinkParamNone*, void );
DECL_LINK( LBChangeHdl, weld::ComboBox&, void );
DECL_LINK( OnFormatAction, const OString&, void );
diff --git a/svtools/source/brwbox/brwbox2.cxx b/svtools/source/brwbox/brwbox2.cxx
index 5424edfb0cf2..f5c9bc618508 100644
--- a/svtools/source/brwbox/brwbox2.cxx
+++ b/svtools/source/brwbox/brwbox2.cxx
@@ -1691,6 +1691,10 @@ void BrowseBox::ChildFocusIn()
{
}
+void BrowseBox::ChildFocusOut()
+{
+}
+
void BrowseBox::Dispatch( sal_uInt16 nId )
{
diff --git a/svtools/source/brwbox/ebbcontrols.cxx b/svtools/source/brwbox/ebbcontrols.cxx
index 32c29784ce7b..3989f6d17c7c 100644
--- a/svtools/source/brwbox/ebbcontrols.cxx
+++ b/svtools/source/brwbox/ebbcontrols.cxx
@@ -32,6 +32,7 @@ namespace svt
m_xWidget->connect_changed(LINK(this, ComboBoxControl, SelectHdl));
m_xWidget->connect_key_press(LINK(this, ControlBase, KeyInputHdl));
m_xWidget->connect_focus_in(LINK(this, ControlBase, FocusInHdl));
+ m_xWidget->connect_focus_out(LINK(this, ControlBase, FocusOutHdl));
}
void ComboBoxControl::dispose()
@@ -118,6 +119,7 @@ namespace svt
m_xWidget->connect_changed(LINK(this, ListBoxControl, SelectHdl));
m_xWidget->connect_key_press(LINK(this, ControlBase, KeyInputHdl));
m_xWidget->connect_focus_in(LINK(this, ControlBase, FocusInHdl));
+ m_xWidget->connect_focus_out(LINK(this, ControlBase, FocusOutHdl));
}
void ListBoxControl::dispose()
@@ -187,6 +189,7 @@ namespace svt
InitControlBase(m_xBox.get());
m_xBox->connect_key_press(LINK(this, ControlBase, KeyInputHdl));
m_xBox->connect_focus_in(LINK(this, ControlBase, FocusInHdl));
+ m_xBox->connect_focus_out(LINK(this, ControlBase, FocusOutHdl));
m_xBox->connect_toggled(LINK(this, CheckBoxControl, OnToggle));
}
@@ -339,6 +342,7 @@ namespace svt
m_pEntry->set_width_chars(1); // so a smaller than default width can be used
m_pEntry->connect_key_press(LINK(this, ControlBase, KeyInputHdl));
m_pEntry->connect_focus_in(LINK(this, ControlBase, FocusInHdl));
+ connect_focus_out(LINK(this, ControlBase, FocusOutHdl));
}
bool ControlBase::ProcessKey(const KeyEvent& rKEvt)
@@ -353,7 +357,14 @@ namespace svt
IMPL_LINK_NOARG(ControlBase, FocusInHdl, weld::Widget&, void)
{
- return static_cast<BrowserDataWin*>(GetParent())->GetParent()->ChildFocusIn();
+ m_aFocusInHdl.Call(nullptr);
+ static_cast<BrowserDataWin*>(GetParent())->GetParent()->ChildFocusIn();
+ }
+
+ IMPL_LINK_NOARG(ControlBase, FocusOutHdl, weld::Widget&, void)
+ {
+ m_aFocusOutHdl.Call(nullptr);
+ static_cast<BrowserDataWin*>(GetParent())->GetParent()->ChildFocusOut();
}
void EditControlBase::dispose()
@@ -393,6 +404,11 @@ namespace svt
get_formatter().connect_changed(rLink);
}
+ void FormattedControlBase::connect_focus_out(const Link<weld::Widget&, void>& rLink)
+ {
+ get_formatter().connect_focus_out(rLink);
+ }
+
weld::EntryFormatter& FormattedControlBase::get_formatter()
{
return *m_xEntryFormatter;
@@ -531,6 +547,11 @@ namespace svt
m_xEntryFormatter->connect_changed(rLink);
}
+ void PatternControl::connect_focus_out(const Link<weld::Widget&, void>& rLink)
+ {
+ m_xEntryFormatter->connect_focus_out(rLink);
+ }
+
void PatternControl::dispose()
{
m_xEntryFormatter.reset();
@@ -619,6 +640,7 @@ namespace svt
InitControlBase(m_xWidget.get());
m_xWidget->connect_key_press(LINK(this, ControlBase, KeyInputHdl));
m_xWidget->connect_focus_in(LINK(this, ControlBase, FocusInHdl));
+ m_xWidget->connect_focus_out(LINK(this, ControlBase, FocusOutHdl));
// so any the natural size doesn't have an effect
m_xWidget->set_size_request(1, 1);
}
diff --git a/svtools/source/brwbox/editbrowsebox.cxx b/svtools/source/brwbox/editbrowsebox.cxx
index 71126b5a3f4b..236897d0d96e 100644
--- a/svtools/source/brwbox/editbrowsebox.cxx
+++ b/svtools/source/brwbox/editbrowsebox.cxx
@@ -160,7 +160,6 @@ namespace svt
nEditCol = 0;
}
-
VclPtr<BrowserHeader> EditBrowseBox::CreateHeaderBar(BrowseBox* pParent)
{
pHeader = imp_CreateHeaderBar(pParent);
@@ -169,20 +168,17 @@ namespace svt
return pHeader;
}
-
VclPtr<BrowserHeader> EditBrowseBox::imp_CreateHeaderBar(BrowseBox* pParent)
{
return VclPtr<EditBrowserHeader>::Create(pParent);
}
-
void EditBrowseBox::LoseFocus()
{
BrowseBox::LoseFocus();
DetermineFocus();
}
-
void EditBrowseBox::GetFocus()
{
BrowseBox::GetFocus();
@@ -195,14 +191,12 @@ namespace svt
DetermineFocus(getRealGetFocusFlags(this));
}
-
bool EditBrowseBox::SeekRow(sal_Int32 nRow)
{
nPaintRow = nRow;
return true;
}
-
IMPL_LINK_NOARG(EditBrowseBox, StartEditHdl, void*, void)
{
nStartEvent = nullptr;
@@ -418,6 +412,11 @@ namespace svt
DetermineFocus(getRealGetFocusFlags(this));
}
+ void EditBrowseBox::ChildFocusOut()
+ {
+ DetermineFocus();
+ }
+
void EditBrowseBox::MouseButtonDown(const BrowserMouseEvent& rEvt)
{
// absorb double clicks
diff --git a/svx/source/fmcomp/gridcell.cxx b/svx/source/fmcomp/gridcell.cxx
index 5d508a0fdedf..08ca07962939 100644
--- a/svx/source/fmcomp/gridcell.cxx
+++ b/svx/source/fmcomp/gridcell.cxx
@@ -802,16 +802,12 @@ void DbCellControl::implAdjustReadOnly( const Reference< XPropertySet >& _rxMode
if ( !(m_pWindow && _rxModel.is()) )
return;
- ControlBase* pEditWindow = dynamic_cast<ControlBase*>(m_pWindow.get());
- if ( pEditWindow )
+ bool bReadOnly = m_rColumn.IsReadOnly();
+ if ( !bReadOnly )
{
- bool bReadOnly = m_rColumn.IsReadOnly();
- if ( !bReadOnly )
- {
- _rxModel->getPropertyValue( i_bReadOnly ? OUString(FM_PROP_READONLY) : OUString(FM_PROP_ISREADONLY)) >>= bReadOnly;
- }
- pEditWindow->SetEditableReadOnly(bReadOnly);
+ _rxModel->getPropertyValue( i_bReadOnly ? OUString(FM_PROP_READONLY) : OUString(FM_PROP_ISREADONLY)) >>= bReadOnly;
}
+ m_pWindow->SetEditableReadOnly(bReadOnly);
}
void DbCellControl::implAdjustEnabled( const Reference< XPropertySet >& _rxModel )
@@ -1921,7 +1917,7 @@ void DbNumericField::implAdjustGenericFieldSetting( const Reference< XPropertySe
rPaintFormatter.SetFormat( sFormatString, aAppLanguage );
}
-VclPtr<Control> DbNumericField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference<XPropertySet>& /*rxModel*/)
+VclPtr<svt::ControlBase> DbNumericField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference<XPropertySet>& /*rxModel*/)
{
return VclPtr<DoubleNumericControl>::Create(pParent, bSpinButton);
}
@@ -2041,7 +2037,7 @@ void DbCurrencyField::implAdjustGenericFieldSetting( const Reference< XPropertyS
rPaintCurrencyFormatter.SetCurrencySymbol(aStr);
}
-VclPtr<Control> DbCurrencyField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& /*rxModel*/)
+VclPtr<svt::ControlBase> DbCurrencyField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& /*rxModel*/)
{
return VclPtr<LongCurrencyControl>::Create(pParent, bSpinButton);
}
@@ -2124,7 +2120,7 @@ DbDateField::DbDateField( DbGridColumn& _rColumn )
doPropertyListening( FM_PROP_DATE_SHOW_CENTURY );
}
-VclPtr<Control> DbDateField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& rxModel)
+VclPtr<svt::ControlBase> DbDateField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& rxModel)
{
// check if there is a DropDown property set to TRUE
bool bDropDown = !hasProperty( FM_PROP_DROPDOWN, rxModel )
@@ -2250,7 +2246,7 @@ DbTimeField::DbTimeField( DbGridColumn& _rColumn )
doPropertyListening( FM_PROP_STRICTFORMAT );
}
-VclPtr<Control> DbTimeField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& /*rxModel*/ )
+VclPtr<svt::ControlBase> DbTimeField::createField(BrowserDataWin* pParent, bool bSpinButton, const Reference< XPropertySet >& /*rxModel*/ )
{
return VclPtr<TimeControl>::Create(pParent, bSpinButton);
}
@@ -2763,9 +2759,8 @@ void DbFilterField::Init(BrowserDataWin& rParent, const Reference< XRowSet >& xC
DbCellControl::Init( rParent, xCursor );
// filter cells are never readonly
- ControlBase* pAsEdit = dynamic_cast<ControlBase*>(m_pWindow.get());
- if (pAsEdit)
- pAsEdit->SetEditableReadOnly(false);
+ if (m_pWindow)
+ m_pWindow->SetEditableReadOnly(false);
}
CellControllerRef DbFilterField::CreateController() const
@@ -3089,7 +3084,6 @@ IMPL_LINK_NOARG(DbFilterField, OnClick, weld::Button&, void)
}
}
-
FmXGridCell::FmXGridCell( DbGridColumn* pColumn, std::unique_ptr<DbCellControl> _pControl )
:OComponentHelper(m_aMutex)
,m_pColumn(pColumn)
@@ -3102,23 +3096,24 @@ FmXGridCell::FmXGridCell( DbGridColumn* pColumn, std::unique_ptr<DbCellControl>
{
}
-
void FmXGridCell::init()
{
- vcl::Window* pEventWindow( getEventWindow() );
+ svt::ControlBase* pEventWindow( getEventWindow() );
if ( pEventWindow )
+ {
pEventWindow->AddEventListener( LINK( this, FmXGridCell, OnWindowEvent ) );
+ pEventWindow->SetFocusInHdl(LINK( this, FmXGridCell, OnFocusGained));
+ pEventWindow->SetFocusOutHdl(LINK( this, FmXGridCell, OnFocusLost));
+ }
}
-
-vcl::Window* FmXGridCell::getEventWindow() const
+svt::ControlBase* FmXGridCell::getEventWindow() const
{
if ( m_pCellControl )
return &m_pCellControl->GetWindow();
return nullptr;
}
-
FmXGridCell::~FmXGridCell()
{
if (!OComponentHelper::rBHelper.bDisposed)
@@ -3129,14 +3124,12 @@ FmXGridCell::~FmXGridCell()
}
-
void FmXGridCell::SetTextLineColor()
{
if (m_pCellControl)
m_pCellControl->SetTextLineColor();
}
-
void FmXGridCell::SetTextLineColor(const Color& _rColor)
{
if (m_pCellControl)
@@ -3332,78 +3325,62 @@ void SAL_CALL FmXGridCell::removeMouseMotionListener( const Reference< awt::XMou
m_aMouseMotionListeners.removeInterface( _rxListener );
}
-
void SAL_CALL FmXGridCell::addPaintListener( const Reference< awt::XPaintListener >& )
{
OSL_FAIL( "FmXGridCell::addPaintListener: not implemented" );
}
-
void SAL_CALL FmXGridCell::removePaintListener( const Reference< awt::XPaintListener >& )
{
OSL_FAIL( "FmXGridCell::removePaintListener: not implemented" );
}
-
IMPL_LINK( FmXGridCell, OnWindowEvent, VclWindowEvent&, _rEvent, void )
{
ENSURE_OR_THROW( _rEvent.GetWindow(), "illegal window" );
- onWindowEvent( _rEvent.GetId(), *_rEvent.GetWindow(), _rEvent.GetData() );
+ onWindowEvent(_rEvent.GetId(), _rEvent.GetData());
}
-
void FmXGridCell::onFocusGained( const awt::FocusEvent& _rEvent )
{
checkDisposed(OComponentHelper::rBHelper.bDisposed);
m_aFocusListeners.notifyEach( &awt::XFocusListener::focusGained, _rEvent );
}
-
void FmXGridCell::onFocusLost( const awt::FocusEvent& _rEvent )
{
checkDisposed(OComponentHelper::rBHelper.bDisposed);
m_aFocusListeners.notifyEach( &awt::XFocusListener::focusLost, _rEvent );
}
+IMPL_LINK_NOARG(FmXGridCell, OnFocusGained, LinkParamNone*, void)
+{
+ if (!m_aFocusListeners.getLength())
+ return;
+
+ awt::FocusEvent aEvent;
+ aEvent.Source = *this;
+ aEvent.Temporary = false;
-void FmXGridCell::onWindowEvent( const VclEventId _nEventId, const vcl::Window& _rWindow, const void* _pEventData )
+ onFocusGained(aEvent);
+}
+
+IMPL_LINK_NOARG(FmXGridCell, OnFocusLost, LinkParamNone*, void)
{
- switch ( _nEventId )
- {
- case VclEventId::ControlGetFocus:
- case VclEventId::WindowGetFocus:
- case VclEventId::ControlLoseFocus:
- case VclEventId::WindowLoseFocus:
- {
- if ( ( _rWindow.IsCompoundControl()
- && ( _nEventId == VclEventId::ControlGetFocus
- || _nEventId == VclEventId::ControlLoseFocus
- )
- )
- || ( !_rWindow.IsCompoundControl()
- && ( _nEventId == VclEventId::WindowGetFocus
- || _nEventId == VclEventId::WindowLoseFocus
- )
- )
- )
- {
- if ( !m_aFocusListeners.getLength() )
- break;
+ if (!m_aFocusListeners.getLength())
+ return;
- bool bFocusGained = ( _nEventId == VclEventId::ControlGetFocus ) || ( _nEventId == VclEventId::WindowGetFocus );
+ awt::FocusEvent aEvent;
+ aEvent.Source = *this;
+ aEvent.Temporary = false;
- awt::FocusEvent aEvent;
- aEvent.Source = *this;
- aEvent.FocusFlags = static_cast<sal_Int16>(_rWindow.GetGetFocusFlags());
- aEvent.Temporary = false;
+ onFocusLost(aEvent);
+}
- if ( bFocusGained )
- onFocusGained( aEvent );
- else
- onFocusLost( aEvent );
- }
- }
- break;
+void FmXGridCell::onWindowEvent(const VclEventId _nEventId, const void* _pEventData)
+{
+ switch ( _nEventId )
+ {
case VclEventId::WindowMouseButtonDown:
case VclEventId::WindowMouseButtonUp:
{
diff --git a/svx/source/inc/gridcell.hxx b/svx/source/inc/gridcell.hxx
index 3966a4954a15..6aef3de3fde9 100644
--- a/svx/source/inc/gridcell.hxx
+++ b/svx/source/inc/gridcell.hxx
@@ -211,8 +211,8 @@ private:
protected:
DbGridColumn& m_rColumn;
- VclPtr<vcl::Window> m_pPainter;
- VclPtr<vcl::Window> m_pWindow;
+ VclPtr<svt::ControlBase> m_pPainter;
+ VclPtr<svt::ControlBase> m_pWindow;
protected:
// attribute access
@@ -262,8 +262,7 @@ public:
DbCellControl(DbGridColumn& _rColumn);
virtual ~DbCellControl() override;
-
- vcl::Window& GetWindow() const
+ svt::ControlBase& GetWindow() const
{
ENSURE_OR_THROW( m_pWindow, "no window" );
return *m_pWindow;
@@ -545,7 +544,7 @@ public:
virtual ::svt::CellControllerRef CreateController() const override;
protected:
- virtual VclPtr<Control> createField(
+ virtual VclPtr<svt::ControlBase> createField(
BrowserDataWin* _pParent,
bool bSpinButton,
const css::uno::Reference< css::beans::XPropertySet >& _rxModel
@@ -565,7 +564,7 @@ protected:
virtual void updateFromModel( css::uno::Reference< css::beans::XPropertySet > _rxModel ) override;
// DbSpinField
- virtual VclPtr<Control> createField(
+ virtual VclPtr<svt::ControlBase> createField(
BrowserDataWin* _pParent,
bool bSpinButton,
const css::uno::Reference< css::beans::XPropertySet >& _rxModel
@@ -588,7 +587,7 @@ protected:
virtual void updateFromModel( css::uno::Reference< css::beans::XPropertySet > _rxModel ) override;
// DbSpinField
- virtual VclPtr<Control> createField(
+ virtual VclPtr<svt::ControlBase> createField(
BrowserDataWin* _pParent,
bool bSpinButton,
const css::uno::Reference< css::beans::XPropertySet >& _rxModel
@@ -611,7 +610,7 @@ protected:
virtual void updateFromModel( css::uno::Reference< css::beans::XPropertySet > _rxModel ) override;
// DbSpinField
- virtual VclPtr<Control> createField(
+ virtual VclPtr<svt::ControlBase> createField(
BrowserDataWin* _pParent,
bool bSpinButton,
const css::uno::Reference< css::beans::XPropertySet >& _rxModel
@@ -635,7 +634,7 @@ protected:
virtual void updateFromModel( css::uno::Reference< css::beans::XPropertySet > _rxModel ) override;
// DbSpinField
- virtual VclPtr<Control> createField(
+ virtual VclPtr<svt::ControlBase> createField(
BrowserDataWin* _pParent,
bool bSpinButton,
const css::uno::Reference< css::beans::XPropertySet >& _rxModel
@@ -776,14 +775,16 @@ public:
{ m_pCellControl->AlignControl(nAlignment);}
protected:
- void onWindowEvent( const VclEventId _nEventId, const vcl::Window& _rWindow, const void* _pEventData );
+ void onWindowEvent(const VclEventId _nEventId, const void* _pEventData);
// default implementations call our focus listeners, don't forget to call them if you override this
virtual void onFocusGained( const css::awt::FocusEvent& _rEvent );
virtual void onFocusLost( const css::awt::FocusEvent& _rEvent );
private:
- vcl::Window* getEventWindow() const;
+ svt::ControlBase* getEventWindow() const;
+ DECL_LINK(OnFocusGained, LinkParamNone*, void);
+ DECL_LINK(OnFocusLost, LinkParamNone*, void);
DECL_LINK( OnWindowEvent, VclWindowEvent&, void );
};
commit e0155f6bb6c209593bea73c87076715b7599fcbc
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Apr 22 17:26:31 2021 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:14:29 2021 +0200
undo blocking emitting focus events during grab_focus
revert...
commit f97dbac73fe149e8fed0932890d0c1d6be4869a3
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Jun 26 21:00:02 2019 +0100
infinite focus changing in toc biblio page
which blocked calling focus-changed callbacks when grab_focus is called
explicitly analogous to how we block value-changed callbacks setting
values through code but don't block them when the value is changed by
user interaction.
In retrospect that was a poor choice, so revert that and subsequent
workarounds in favour of just not calling gtk_grab_focus if the widget
already has focus.
checked:
a) tdf#138427 focus set to wrong input box
b) tdf#138078 only call GetFocus if we gained focus from an unfocused state
c) tdf#137993 ensure the toplevel vcl::Window is activated
d) tdf#136941 call focus in handler explicitly
Change-Id: I411480e2d627aa9995fb41b0aa17e9fb6d34d73f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114524
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
(cherry picked from commit db1cf111666847ce5ce93d18ae5ae8c29a4c44d6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120079
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/dbaccess/source/ui/app/AppDetailView.cxx b/dbaccess/source/ui/app/AppDetailView.cxx
index eba80dbfb4ec..6c56c6052282 100644
--- a/dbaccess/source/ui/app/AppDetailView.cxx
+++ b/dbaccess/source/ui/app/AppDetailView.cxx
@@ -84,7 +84,6 @@ void OTasksWindow::GrabFocus()
if (!m_xTreeView)
return;
m_xTreeView->grab_focus();
- FocusInHdl(*m_xTreeView);
}
bool OTasksWindow::HasChildPathFocus() const
diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx
index 361ec4c9ebaa..58c2492c5505 100644
--- a/formula/source/ui/dlg/funcutl.cxx
+++ b/formula/source/ui/dlg/funcutl.cxx
@@ -357,14 +357,6 @@ bool RefEdit::KeyInput(const KeyEvent& rKEvt)
return false;
}
-void RefEdit::GrabFocus()
-{
- bool bHadFocus = xEntry->has_focus();
- xEntry->grab_focus();
- if (!bHadFocus && xEntry->has_focus())
- GetFocus();
-}
-
void RefEdit::GetFocus()
{
maGetFocusHdl.Call(*this);
diff --git a/include/formula/funcutl.hxx b/include/formula/funcutl.hxx
index 4e008181eae7..4ed4b407c480 100644
--- a/include/formula/funcutl.hxx
+++ b/include/formula/funcutl.hxx
@@ -93,7 +93,10 @@ public:
Modify(*xEntry);
}
- void GrabFocus();
+ void GrabFocus()
+ {
+ xEntry->grab_focus();
+ }
void SelectAll()
{
diff --git a/include/vcl/customweld.hxx b/include/vcl/customweld.hxx
index b19b64bf980e..64f980732dfb 100644
--- a/include/vcl/customweld.hxx
+++ b/include/vcl/customweld.hxx
@@ -63,14 +63,7 @@ public:
}
virtual void Show() { m_pDrawingArea->show(); }
virtual void Hide() { m_pDrawingArea->hide(); }
- void GrabFocus()
- {
- bool bHadFocus = m_pDrawingArea->has_focus();
- m_pDrawingArea->grab_focus();
- // tdf#138078 only call GetFocus if we gained focus from an unfocused state
- if (!bHadFocus && m_pDrawingArea->has_focus())
- GetFocus();
- }
+ void GrabFocus() { m_pDrawingArea->grab_focus(); }
bool HasFocus() const { return m_pDrawingArea->has_focus(); }
bool IsVisible() const { return m_pDrawingArea->get_visible(); }
bool IsReallyVisible() const { return m_pDrawingArea->is_visible(); }
diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx
index 1df98a6d1cd8..282b71575e08 100644
--- a/sc/source/ui/app/inputwin.cxx
+++ b/sc/source/ui/app/inputwin.cxx
@@ -2168,6 +2168,7 @@ void ScTextWnd::StyleUpdated()
void ScTextWnd::TextGrabFocus()
{
GrabFocus();
+ GetFocus();
}
// Position window
diff --git a/svx/source/dialog/weldeditview.cxx b/svx/source/dialog/weldeditview.cxx
index 052bd8f4d8f9..5f5027b5b27f 100644
--- a/svx/source/dialog/weldeditview.cxx
+++ b/svx/source/dialog/weldeditview.cxx
@@ -180,7 +180,10 @@ bool WeldEditView::MouseButtonDown(const MouseEvent& rMEvt)
CaptureMouse();
if (!HasFocus())
+ {
GrabFocus();
+ GetFocus();
+ }
EditView* pEditView = GetEditView();
return pEditView && pEditView->MouseButtonDown(rMEvt);
diff --git a/svx/source/inc/findtextfield.hxx b/svx/source/inc/findtextfield.hxx
index 3e5de483c91a..982b70f69b59 100644
--- a/svx/source/inc/findtextfield.hxx
+++ b/svx/source/inc/findtextfield.hxx
@@ -37,8 +37,6 @@ public:
virtual ~FindTextFieldControl() override;
- virtual void GetFocus() override;
-
void Remember_Impl(const OUString& rStr);
void SetTextToSelected_Impl();
diff --git a/svx/source/tbxctrls/tbunosearchcontrollers.cxx b/svx/source/tbxctrls/tbunosearchcontrollers.cxx
index a1860eea7126..76c7d3f294be 100644
--- a/svx/source/tbxctrls/tbunosearchcontrollers.cxx
+++ b/svx/source/tbxctrls/tbunosearchcontrollers.cxx
@@ -405,12 +405,6 @@ void FindTextFieldControl::set_entry_message_type(weld::EntryMessageType eType)
m_xWidget->set_entry_message_type(eType);
}
-void FindTextFieldControl::GetFocus()
-{
- InterimItemWindow::GetFocus();
- FocusIn();
-}
-
namespace {
class SearchToolbarControllersManager
diff --git a/sw/source/ui/dbui/createaddresslistdialog.cxx b/sw/source/ui/dbui/createaddresslistdialog.cxx
index e910fc476a61..969bff35d7ad 100644
--- a/sw/source/ui/dbui/createaddresslistdialog.cxx
+++ b/sw/source/ui/dbui/createaddresslistdialog.cxx
@@ -206,7 +206,6 @@ void SwAddressControl_Impl::SetCursorTo(std::size_t nElement)
{
weld::Entry* pEdit = m_aLines[nElement]->m_xEntry.get();
pEdit->grab_focus();
- GotFocusHdl_Impl(*pEdit);
}
}
diff --git a/sw/source/uibase/inc/conttree.hxx b/sw/source/uibase/inc/conttree.hxx
index 741478f02d74..107cc3bc6f90 100644
--- a/sw/source/uibase/inc/conttree.hxx
+++ b/sw/source/uibase/inc/conttree.hxx
@@ -249,7 +249,6 @@ public:
void grab_focus()
{
m_xTreeView->grab_focus();
- FocusHdl(*m_xTreeView);
}
OUString get_selected_text() const
@@ -345,7 +344,6 @@ public:
void grab_focus()
{
m_xTreeView->grab_focus();
- FocusInHdl(*m_xTreeView);
}
void set_selection_mode(SelectionMode eMode)
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 27dff1370ade..7daa582cd565 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -258,12 +258,7 @@ void SalInstanceWidget::set_can_focus(bool bCanFocus)
m_xWidget->SetStyle(nStyle);
}
-void SalInstanceWidget::grab_focus()
-{
- disable_notify_events();
- m_xWidget->GrabFocus();
- enable_notify_events();
-}
+void SalInstanceWidget::grab_focus() { m_xWidget->GrabFocus(); }
bool SalInstanceWidget::has_focus() const { return m_xWidget->HasFocus(); }
@@ -560,8 +555,6 @@ SystemWindow* SalInstanceWidget::getSystemWindow() { return m_xWidget->GetSystem
void SalInstanceWidget::HandleEventListener(VclWindowEvent& rEvent)
{
- if (notify_events_disabled())
- return;
if (rEvent.GetId() == VclEventId::WindowGetFocus)
m_aFocusInHdl.Call(*this);
else if (rEvent.GetId() == VclEventId::WindowLoseFocus)
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index 6b3c5339019f..8254fdbd0578 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -2542,9 +2542,9 @@ public:
virtual void grab_focus() override
{
- disable_notify_events();
+ if (has_focus())
+ return;
gtk_widget_grab_focus(m_pWidget);
- enable_notify_events();
}
virtual bool has_focus() const override
@@ -8868,7 +8868,8 @@ public:
virtual void grab_focus() override
{
- disable_notify_events();
+ if (has_focus())
+ return;
gtk_widget_grab_focus(m_pWidget);
bool bHasFocusChild = gtk_container_get_focus_child(GTK_CONTAINER(m_pWidget));
if (!bHasFocusChild)
@@ -8881,7 +8882,6 @@ public:
}
if (bHasFocusChild)
gtk_widget_child_focus(gtk_container_get_focus_child(GTK_CONTAINER(m_pWidget)), GTK_DIR_TAB_FORWARD);
- enable_notify_events();
}
virtual ~GtkInstanceToolbar() override
@@ -9515,9 +9515,9 @@ public:
virtual void grab_focus() override
{
- disable_notify_events();
+ if (has_focus())
+ return;
gtk_entry_grab_focus_without_selecting(m_pEntry);
- enable_notify_events();
}
virtual void set_alignment(TxtAlign eXAlign) override
@@ -15849,12 +15849,12 @@ public:
virtual void grab_focus() override
{
- disable_notify_events();
+ if (has_focus())
+ return;
if (m_pEntry)
gtk_widget_grab_focus(m_pEntry);
else
gtk_widget_grab_focus(m_pToggleButton);
- enable_notify_events();
}
virtual bool has_focus() const override
commit d8bc16bd5119a9921955b530442f7aed1eff900b
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Feb 18 14:56:01 2021 +0000
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:12:57 2021 +0200
move async focus-in/focus-out workaround to known client that needs it
and for the normal case process immediately. Use-case is the
bibliography editor, modified uncommitted entry, click in browser
column margin area to select a new row, the entry should commit its
old contents to the old row before filling from the new row
Change-Id: Ib41d96afcfa86bcd1075b9512d4cfab593afa66d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111152
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
(cherry picked from commit c56e0c791a79dc414108e1b2fbf0f7eb38657f10)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120078
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
diff --git a/formula/source/ui/dlg/funcutl.cxx b/formula/source/ui/dlg/funcutl.cxx
index f64b6aff9bd5..361ec4c9ebaa 100644
--- a/formula/source/ui/dlg/funcutl.cxx
+++ b/formula/source/ui/dlg/funcutl.cxx
@@ -21,6 +21,7 @@
#include <formula/funcutl.hxx>
#include <formula/IControlReferenceHandler.hxx>
+#include <vcl/svapp.hxx>
#include "ControlHelper.hxx"
#include "parawin.hxx"
#include <strings.hrc>
@@ -265,9 +266,11 @@ RefEdit::RefEdit(std::unique_ptr<weld::Entry> xControl)
, aIdle("formula RefEdit Idle")
, pAnyRefDlg(nullptr)
, pLabelWidget(nullptr)
+ , mpFocusInEvent(nullptr)
+ , mpFocusOutEvent(nullptr)
{
- xEntry->connect_focus_in(LINK(this, RefEdit, GetFocus));
- xEntry->connect_focus_out(LINK(this, RefEdit, LoseFocus));
+ xEntry->connect_focus_in(LINK(this, RefEdit, GetFocusHdl));
+ xEntry->connect_focus_out(LINK(this, RefEdit, LoseFocusHdl));
xEntry->connect_key_press(LINK(this, RefEdit, KeyInputHdl));
xEntry->connect_changed(LINK(this, RefEdit, Modify));
aIdle.SetInvokeHandler( LINK( this, RefEdit, UpdateHdl ) );
@@ -275,6 +278,10 @@ RefEdit::RefEdit(std::unique_ptr<weld::Entry> xControl)
RefEdit::~RefEdit()
{
+ if (mpFocusInEvent)
+ Application::RemoveUserEvent(mpFocusInEvent);
+ if (mpFocusOutEvent)
+ Application::RemoveUserEvent(mpFocusOutEvent);
aIdle.ClearInvokeHandler();
aIdle.Stop();
}
@@ -355,22 +362,53 @@ void RefEdit::GrabFocus()
bool bHadFocus = xEntry->has_focus();
xEntry->grab_focus();
if (!bHadFocus && xEntry->has_focus())
- GetFocus(*xEntry);
+ GetFocus();
}
-IMPL_LINK_NOARG(RefEdit, GetFocus, weld::Widget&, void)
+void RefEdit::GetFocus()
{
maGetFocusHdl.Call(*this);
StartUpdateData();
}
-IMPL_LINK_NOARG(RefEdit, LoseFocus, weld::Widget&, void)
+void RefEdit::LoseFocus()
{
maLoseFocusHdl.Call(*this);
if( pAnyRefDlg )
pAnyRefDlg->HideReference();
}
+IMPL_LINK_NOARG(RefEdit, GetFocusHdl, weld::Widget&, void)
+{
+ // in e.g. function wizard RefEdits we want to select all when we get focus
+ // but in the gtk case there are pending gtk handlers which change selection
+ // after our handler, so post our focus in event to happen after those complete
+ if (mpFocusInEvent)
+ Application::RemoveUserEvent(mpFocusInEvent);
+ mpFocusInEvent = Application::PostUserEvent(LINK(this, RefEdit, AsyncFocusInHdl));
+}
+
+IMPL_LINK_NOARG(RefEdit, LoseFocusHdl, weld::Widget&, void)
+{
+ // tdf#127262 because focus in is async, focus out must not appear out
+ // of sequence to focus in
+ if (mpFocusOutEvent)
+ Application::RemoveUserEvent(mpFocusOutEvent);
+ mpFocusOutEvent = Application::PostUserEvent(LINK(this, RefEdit, AsyncFocusOutHdl));
+}
+
+IMPL_LINK_NOARG(RefEdit, AsyncFocusInHdl, void*, void)
+{
+ mpFocusInEvent = nullptr;
+ GetFocus();
+}
+
+IMPL_LINK_NOARG(RefEdit, AsyncFocusOutHdl, void*, void)
+{
+ mpFocusOutEvent = nullptr;
+ LoseFocus();
+}
+
IMPL_LINK_NOARG(RefEdit, UpdateHdl, Timer *, void)
{
if( pAnyRefDlg )
diff --git a/include/formula/funcutl.hxx b/include/formula/funcutl.hxx
index 0a14e62db159..4e008181eae7 100644
--- a/include/formula/funcutl.hxx
+++ b/include/formula/funcutl.hxx
@@ -27,6 +27,7 @@
#include <vcl/weld.hxx>
class KeyEvent;
+struct ImplSVEvent;
namespace formula {
@@ -41,6 +42,9 @@ private:
Idle aIdle;
IControlReferenceHandler* pAnyRefDlg; // parent dialog
weld::Label* pLabelWidget;
+ ImplSVEvent* mpFocusInEvent;
+ ImplSVEvent* mpFocusOutEvent;
+
Link<RefEdit&,void> maGetFocusHdl;
Link<RefEdit&,void> maLoseFocusHdl;
Link<RefEdit&,void> maModifyHdl;
@@ -50,10 +54,15 @@ private:
protected:
DECL_LINK(KeyInputHdl, const KeyEvent&, bool);
- DECL_LINK(GetFocus, weld::Widget&, void);
- DECL_LINK(LoseFocus, weld::Widget&, void);
+ DECL_LINK(GetFocusHdl, weld::Widget&, void);
+ DECL_LINK(LoseFocusHdl, weld::Widget&, void);
+ DECL_LINK(AsyncFocusInHdl, void*, void);
+ DECL_LINK(AsyncFocusOutHdl, void*, void);
DECL_LINK(Modify, weld::Entry&, void);
+ void GetFocus();
+ void LoseFocus();
+
virtual bool KeyInput(const KeyEvent& rKEvt);
public:
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index 7e691e458d08..6b3c5339019f 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -1943,24 +1943,12 @@ protected:
GtkWidget* m_pMouseEventBox;
GtkInstanceBuilder* m_pBuilder;
- DECL_LINK(async_signal_focus_in, void*, void);
- DECL_LINK(async_signal_focus_out, void*, void);
DECL_LINK(async_drag_cancel, void*, void);
- void launch_signal_focus_in()
- {
- // in e.g. function wizard RefEdits we want to select all when we get focus
- // but there are pending gtk handlers which change selection after our handler
- // post our focus in event to happen after those finish
- if (m_pFocusInEvent)
- Application::RemoveUserEvent(m_pFocusInEvent);
- m_pFocusInEvent = Application::PostUserEvent(LINK(this, GtkInstanceWidget, async_signal_focus_in));
- }
-
static gboolean signalFocusIn(GtkWidget*, GdkEvent*, gpointer widget)
{
GtkInstanceWidget* pThis = static_cast<GtkInstanceWidget*>(widget);
- pThis->launch_signal_focus_in();
+ pThis->signal_focus_in();
return false;
}
@@ -1981,20 +1969,11 @@ protected:
return m_aMnemonicActivateHdl.Call(*this);
}
- void launch_signal_focus_out()
- {
- // tdf#127262 because focus in is async, focus out must not appear out
- // of sequence to focus in
- if (m_pFocusOutEvent)
- Application::RemoveUserEvent(m_pFocusOutEvent);
- m_pFocusOutEvent = Application::PostUserEvent(LINK(this, GtkInstanceWidget, async_signal_focus_out));
- }
-
static gboolean signalFocusOut(GtkWidget*, GdkEvent*, gpointer widget)
{
GtkInstanceWidget* pThis = static_cast<GtkInstanceWidget*>(widget);
SolarMutexGuard aGuard;
- pThis->launch_signal_focus_out();
+ pThis->signal_focus_out();
return false;
}
@@ -2089,8 +2068,6 @@ private:
int m_nPressedButton;
int m_nPressStartX;
int m_nPressStartY;
- ImplSVEvent* m_pFocusInEvent;
- ImplSVEvent* m_pFocusOutEvent;
ImplSVEvent* m_pDragCancelEvent;
GtkCssProvider* m_pBgCssProvider;
GdkDragAction m_eDragAction;
@@ -2468,8 +2445,6 @@ public:
, m_nPressedButton(-1)
, m_nPressStartX(-1)
, m_nPressStartY(-1)
- , m_pFocusInEvent(nullptr)
- , m_pFocusOutEvent(nullptr)
, m_pDragCancelEvent(nullptr)
, m_pBgCssProvider(nullptr)
, m_eDragAction(GdkDragAction(0))
@@ -3079,10 +3054,6 @@ public:
virtual ~GtkInstanceWidget() override
{
- if (m_pFocusInEvent)
- Application::RemoveUserEvent(m_pFocusInEvent);
- if (m_pFocusOutEvent)
- Application::RemoveUserEvent(m_pFocusOutEvent);
if (m_pDragCancelEvent)
Application::RemoveUserEvent(m_pDragCancelEvent);
if (m_nDragMotionSignalId)
@@ -3256,18 +3227,6 @@ public:
}
-IMPL_LINK_NOARG(GtkInstanceWidget, async_signal_focus_in, void*, void)
-{
- m_pFocusInEvent = nullptr;
- signal_focus_in();
-}
-
-IMPL_LINK_NOARG(GtkInstanceWidget, async_signal_focus_out, void*, void)
-{
- m_pFocusOutEvent = nullptr;
- signal_focus_out();
-}
-
IMPL_LINK(GtkInstanceWidget, async_drag_cancel, void*, arg, void)
{
m_pDragCancelEvent = nullptr;
@@ -15877,15 +15836,15 @@ public:
virtual void connect_focus_in(const Link<Widget&, void>& rLink) override
{
if (!m_nToggleFocusInSignalId)
- m_nToggleFocusInSignalId = g_signal_connect(m_pToggleButton, "focus-in-event", G_CALLBACK(signalFocusIn), this);
- weld::Widget::connect_focus_in(rLink);
+ m_nToggleFocusInSignalId = g_signal_connect_after(m_pToggleButton, "focus-in-event", G_CALLBACK(signalFocusIn), this);
+ GtkInstanceContainer::connect_focus_in(rLink);
}
virtual void connect_focus_out(const Link<Widget&, void>& rLink) override
{
if (!m_nToggleFocusOutSignalId)
- m_nToggleFocusOutSignalId = g_signal_connect(m_pToggleButton, "focus-out-event", G_CALLBACK(signalFocusOut), this);
- weld::Widget::connect_focus_out(rLink);
+ m_nToggleFocusOutSignalId = g_signal_connect_after(m_pToggleButton, "focus-out-event", G_CALLBACK(signalFocusOut), this);
+ GtkInstanceContainer::connect_focus_out(rLink);
}
virtual void grab_focus() override
commit ca91ac10c8ffb77adca797aa623ec7b35dbcc417
Author: Thorsten Behrens <thorsten.behrens at allotropia.de>
AuthorDate: Tue Aug 3 18:32:16 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:12:57 2021 +0200
Always provision PATH the cygwin way under Windows
With PATH essentially serving the role of LD_LIBRARY_PATH under
Windows, there was the notion that this needs to be provided in
Windows notation, for win32 gnumake.
That was perhaps once true; currently we're always evaluating PATH
inside a shell, not the Makefile. So this since a while only worked
accidentally, due to cygwin transparently converting between DOS and
UNIX PATH vars. It did break though for corner-cases, e.g.
SRCDIR!=BUILDDIR, and BUILDDIR e.g. D:\FOO.
With that simplification, also GNUMAKE_WIN_NATIVE can go.
Change-Id: Ied5a0443dc70e7dc629c0c0620e6ce911d9a73d0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119941
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens at allotropia.de>
(cherry picked from commit da36d655608c3da39fd79d95974e1f7404a27aa0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/119977
Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>
diff --git a/config_host.mk.in b/config_host.mk.in
index 42f4511a62e8..29626ec9fc42 100644
--- a/config_host.mk.in
+++ b/config_host.mk.in
@@ -243,7 +243,6 @@ export GNUTLS_CFLAGS=$(gb_SPACE)@GNUTLS_CFLAGS@
export GNUTLS_LIBS=$(gb_SPACE)@GNUTLS_LIBS@
export PARALLELISM?=@PARALLELISM@
@x_GNUCP@ export GNUCOPY=@GNUCP@
-export GNUMAKE_WIN_NATIVE=@GNUMAKE_WIN_NATIVE@
export GNUPATCH=@GNUPATCH@
export GNUTAR=@GNUTAR@
export GOBJECT_CFLAGS=$(gb_SPACE)@GOBJECT_CFLAGS@
diff --git a/configure.ac b/configure.ac
index 2a1b09e09db6..5d991218cef4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5915,7 +5915,6 @@ else
fi
rm -rf $TESTGMAKEFILEFUNC
AC_SUBST(HAVE_GNUMAKE_FILE_FUNC)
-AC_SUBST(GNUMAKE_WIN_NATIVE)
_make_ver_check=`$GNUMAKE --version | grep "Built for Windows"`
STALE_MAKE=
diff --git a/solenv/gbuild/platform/com_MSC_class.mk b/solenv/gbuild/platform/com_MSC_class.mk
index 4564bc65cdde..505191069005 100644
--- a/solenv/gbuild/platform/com_MSC_class.mk
+++ b/solenv/gbuild/platform/com_MSC_class.mk
@@ -469,11 +469,7 @@ endef
gb_CppunitTest_UNITTESTFAILED := $(GBUILDDIR)/platform/unittest-failed-WNT.sh
gb_CppunitTest_PYTHONDEPS := $(call gb_Package_get_target,python3)
gb_CppunitTest_DEFS := -D_DLL
-ifeq ($(GNUMAKE_WIN_NATIVE),TRUE)
-gb_CppunitTest_CPPTESTPRECOMMAND := $(call gb_Helper_prepend_ld_path,$(shell cygpath -w $(gb_Library_DLLDIR));$(shell cygpath -w $(WORKDIR)/UnpackedTarball/cppunit/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll,ReleaseDll)))
-else
gb_CppunitTest_CPPTESTPRECOMMAND := $(call gb_Helper_prepend_ld_path,$(shell cygpath -u $(gb_Library_DLLDIR)):$(shell cygpath -u $(WORKDIR)/UnpackedTarball/cppunit/src/cppunit/$(if $(MSVC_USE_DEBUG_RUNTIME),DebugDll,ReleaseDll)))
-endif
gb_CppunitTest_get_filename = test_$(1).dll
gb_CppunitTest_get_ilibfilename = itest_$(1).lib
diff --git a/solenv/gbuild/platform/com_MSC_defs.mk b/solenv/gbuild/platform/com_MSC_defs.mk
index de856cf79cc6..90922db6b0d6 100644
--- a/solenv/gbuild/platform/com_MSC_defs.mk
+++ b/solenv/gbuild/platform/com_MSC_defs.mk
@@ -344,21 +344,15 @@ endif
# Helper class
-ifeq ($(GNUMAKE_WIN_NATIVE),TRUE)
-gb_MAKE_CYGPATH := -w
-else
-gb_MAKE_CYGPATH := -u
-endif
-
-gb_Helper_set_ld_path := PATH="$(shell cygpath $(gb_MAKE_CYGPATH) $(INSTDIR_FOR_BUILD)/$(LIBO_URE_LIB_FOLDER));$(shell cygpath $(gb_MAKE_CYGPATH) $(INSTDIR_FOR_BUILD)/$(LIBO_BIN_FOLDER));$$PATH"
+gb_Helper_set_ld_path := PATH="$(shell cygpath -u $(INSTDIR_FOR_BUILD)/$(LIBO_URE_LIB_FOLDER)):$(shell cygpath -u $(INSTDIR_FOR_BUILD)/$(LIBO_BIN_FOLDER)):$$PATH"
define gb_Helper_prepend_ld_path
-PATH="$(shell cygpath $(gb_MAKE_CYGPATH) $(INSTDIR_FOR_BUILD)/$(LIBO_URE_LIB_FOLDER));$(shell cygpath $(gb_MAKE_CYGPATH) $(INSTDIR_FOR_BUILD)/$(LIBO_BIN_FOLDER));$(1);$$PATH"
+PATH="$(shell cygpath -u $(INSTDIR_FOR_BUILD)/$(LIBO_URE_LIB_FOLDER)):$(shell cygpath -u $(INSTDIR_FOR_BUILD)/$(LIBO_BIN_FOLDER)):$(1):$$PATH"
endef
# $(1): one directory pathname to append to the ld path
define gb_Helper_extend_ld_path
-$(gb_Helper_set_ld_path)';$(shell cygpath $(gb_MAKE_CYGPATH) $(1))'
+$(gb_Helper_set_ld_path)':$(shell cygpath -u $(1))'
endef
# common macros to build GPG related libraries
commit 83dd7efd8f6637d8f6a716c09badde42717912b5
Author: Christian Lohmaier <lohmaier+LibreOffice at googlemail.com>
AuthorDate: Tue Aug 10 12:42:56 2021 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Mon Aug 16 10:12:56 2021 +0200
update credits
Change-Id: Iad0175ccc7a1ee903812f34bcacb86e3f90e58b3
(cherry picked from commit 555366667c9a62f366230843c1727b0643a06b1a)
diff --git a/readlicense_oo/license/CREDITS.fodt b/readlicense_oo/license/CREDITS.fodt
index 2ba37f5aedc4..4cf5c381c1f6 100644
--- a/readlicense_oo/license/CREDITS.fodt
+++ b/readlicense_oo/license/CREDITS.fodt
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<office:document xmlns:officeooo="http://openoffice.org/2009/office" xmlns:css3t="http://www.w3.org/TR/css3-text/" xmlns:grddl="http://www.w3.org/2003/g/data-view#" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rpt="http://openoffice.org/2005/report" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:config="urn:oasis:names:tc:opendocument:xmlns
:config:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:calcext="urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" xmlns:tableooo="http://openoffice.org/2009/table" xmlns:drawooo="http://openoffice.org/2010/draw" xmlns:loext="urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="ur
n:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:xforms="http://www.w3.org/2002/xforms" office:version="1.3" office:mimetype="application/vnd.oasis.opendocument.text">
- <office:meta><dc:title>Credits » LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits for the LibreOffice development/coding.</dc:description><meta:generator>LibreOffice/7.1.3.2$Linux_X86_64 LibreOffice_project/47f78053abe362b9384784d31a6e56f8511eb1c1</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic meta:table-count="5" meta:image-count="1" meta:object-count="0" meta:page-count="2" meta:paragraph-count="4410" meta:word-count="16311" meta:character-count="117621" meta:non-whitespace-character-count="103071"/><meta:user-defined meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
+ <office:meta><dc:title>Credits » LibreOffice</dc:title><meta:keyword>Credits</meta:keyword><meta:keyword>contributors</meta:keyword><meta:keyword>coders</meta:keyword><meta:keyword>developers</meta:keyword><dc:description>Credits for the LibreOffice development/coding.</dc:description><meta:generator>LibreOffice/7.1.5.2$Linux_X86_64 LibreOffice_project/85f04e9f809797b8199d13c421bd8a2b025d52b5</meta:generator><dc:date>2012-02-20T22:17:18.060000000</dc:date><meta:editing-duration>PT14M12S</meta:editing-duration><meta:editing-cycles>3</meta:editing-cycles><meta:document-statistic meta:table-count="5" meta:image-count="1" meta:object-count="0" meta:page-count="2" meta:paragraph-count="4420" meta:word-count="16345" meta:character-count="117887" meta:non-whitespace-character-count="103307"/><meta:user-defined meta:name="google-site-verification">JUebjoxEpqXoQcpltWRTwzBZEEHtch3wApdhgiQPFiA</meta:user-defined></office:meta>
<office:settings>
<config:config-item-set config:name="ooo:view-settings">
- <config:config-item config:name="ViewAreaTop" config:type="long">512</config:config-item>
+ <config:config-item config:name="ViewAreaTop" config:type="long">531</config:config-item>
<config:config-item config:name="ViewAreaLeft" config:type="long">501</config:config-item>
<config:config-item config:name="ViewAreaWidth" config:type="long">48588</config:config-item>
- <config:config-item config:name="ViewAreaHeight" config:type="long">26450</config:config-item>
+ <config:config-item config:name="ViewAreaHeight" config:type="long">27360</config:config-item>
<config:config-item config:name="ShowRedlineChanges" config:type="boolean">true</config:config-item>
<config:config-item config:name="InBrowseMode" config:type="boolean">true</config:config-item>
<config:config-item-map-indexed config:name="Views">
@@ -16,9 +16,9 @@
<config:config-item config:name="ViewLeft" config:type="long">3577</config:config-item>
<config:config-item config:name="ViewTop" config:type="long">3434</config:config-item>
<config:config-item config:name="VisibleLeft" config:type="long">501</config:config-item>
- <config:config-item config:name="VisibleTop" config:type="long">512</config:config-item>
+ <config:config-item config:name="VisibleTop" config:type="long">531</config:config-item>
<config:config-item config:name="VisibleRight" config:type="long">49087</config:config-item>
- <config:config-item config:name="VisibleBottom" config:type="long">26959</config:config-item>
+ <config:config-item config:name="VisibleBottom" config:type="long">27889</config:config-item>
<config:config-item config:name="ZoomType" config:type="short">0</config:config-item>
<config:config-item config:name="ViewLayoutColumns" config:type="short">0</config:config-item>
<config:config-item config:name="ViewLayoutBookMode" config:type="boolean">false</config:config-item>
@@ -95,7 +95,7 @@
</config:config-item-map-indexed>
<config:config-item config:name="PrinterSetup" config:type="base64Binary"/>
<config:config-item config:name="AddParaTableSpacingAtStart" config:type="boolean">true</config:config-item>
- <config:config-item config:name="Rsid" config:type="int">10251881</config:config-item>
+ <config:config-item config:name="Rsid" config:type="int">10252920</config:config-item>
<config:config-item config:name="EmbeddedDatabaseName" config:type="string"/>
<config:config-item config:name="FieldAutoUpdate" config:type="boolean">true</config:config-item>
<config:config-item config:name="OutlineLevelYieldsNumbering" config:type="boolean">false</config:config-item>
@@ -162,7 +162,7 @@
<office:styles>
<style:default-style style:family="graphic">
<style:graphic-properties svg:stroke-color="#3465a4" draw:fill-color="#729fcf" fo:wrap-option="no-wrap" draw:shadow-offset-x="0.3cm" draw:shadow-offset-y="0.3cm" draw:start-line-spacing-horizontal="0.283cm" draw:start-line-spacing-vertical="0.283cm" draw:end-line-spacing-horizontal="0.283cm" draw:end-line-spacing-vertical="0.283cm" style:flow-with-text="true"/>
- <style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:font-independent-line-spacing="false">
+ <style:paragraph-properties style:text-autospace="ideograph-alpha" style:line-break="strict" style:writing-mode="lr-tb" style:font-independent-line-spacing="false">
<style:tab-stops/>
</style:paragraph-properties>
<style:text-properties style:use-window-font-color="true" loext:opacity="0%" style:font-name="Thorndale AMT" fo:font-size="12pt" fo:language="hu" fo:country="HU" style:letter-kerning="true" style:font-name-asian="SimSun" style:font-size-asian="12pt" style:language-asian="zh" style:country-asian="CN" style:font-name-complex="Mangal" style:font-size-complex="12pt" style:language-complex="hi" style:country-complex="IN"/>
@@ -340,19 +340,19 @@
</office:styles>
<office:automatic-styles>
<style:style style:name="Tabelle1" style:family="table">
- <style:table-properties style:width="25.675cm" table:align="left"/>
+ <style:table-properties style:width="25.652cm" table:align="left"/>
</style:style>
<style:style style:name="Tabelle1.A" style:family="table-column">
- <style:table-column-properties style:column-width="5.422cm"/>
+ <style:table-column-properties style:column-width="6.705cm"/>
</style:style>
<style:style style:name="Tabelle1.B" style:family="table-column">
- <style:table-column-properties style:column-width="6.682cm"/>
+ <style:table-column-properties style:column-width="6.098cm"/>
</style:style>
<style:style style:name="Tabelle1.C" style:family="table-column">
- <style:table-column-properties style:column-width="6.68cm"/>
+ <style:table-column-properties style:column-width="6.823cm"/>
</style:style>
<style:style style:name="Tabelle1.D" style:family="table-column">
- <style:table-column-properties style:column-width="6.892cm"/>
+ <style:table-column-properties style:column-width="6.027cm"/>
</style:style>
<style:style style:name="Tabelle1.A1" style:family="table-cell">
<style:table-cell-properties style:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/>
@@ -418,24 +418,24 @@
<style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
</style:style>
<style:style style:name="Tabelle5" style:family="table">
- <style:table-properties style:width="32.494cm" table:align="left"/>
+ <style:table-properties style:width="31.492cm" table:align="left"/>
</style:style>
<style:style style:name="Tabelle5.A" style:family="table-column">
- <style:table-column-properties style:column-width="11.779cm"/>
+ <style:table-column-properties style:column-width="6.657cm"/>
</style:style>
<style:style style:name="Tabelle5.B" style:family="table-column">
- <style:table-column-properties style:column-width="7.938cm"/>
+ <style:table-column-properties style:column-width="6.262cm"/>
</style:style>
<style:style style:name="Tabelle5.C" style:family="table-column">
- <style:table-column-properties style:column-width="6.424cm"/>
+ <style:table-column-properties style:column-width="11.756cm"/>
</style:style>
<style:style style:name="Tabelle5.D" style:family="table-column">
- <style:table-column-properties style:column-width="6.354cm"/>
+ <style:table-column-properties style:column-width="6.817cm"/>
</style:style>
<style:style style:name="Tabelle5.A1" style:family="table-cell">
<style:table-cell-properties style:vertical-align="middle" fo:padding="0.049cm" fo:border="none"/>
</style:style>
- <style:style style:name="Tabelle5.B669" style:family="table-cell">
+ <style:style style:name="Tabelle5.D670" style:family="table-cell">
<style:table-cell-properties fo:padding="0.049cm" fo:border="none"/>
</style:style>
<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Table_20_Contents">
@@ -1074,7 +1074,7 @@
</draw:frame>
<text:section text:style-name="Sect1" text:name="BgContainer">
<text:p text:style-name="P16">Credits</text:p>
- <text:p text:style-name="Text_20_body">1686 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2021-07-16 16:03:49.</text:p>
+ <text:p text:style-name="Text_20_body">1690 individuals contributed to OpenOffice.org (and whose contributions were imported into LibreOffice) or LibreOffice until 2021-08-06 11:42:16.</text:p>
<text:p text:style-name="Text_20_body"><text:span text:style-name="T1">*</text:span> marks developers whose first contributions happened after 2010-09-28.</text:p>
<text:h text:style-name="Heading_20_2" text:outline-level="2">Developers committing code since 2010-09-28</text:h>
<table:table table:name="Tabelle1" table:style-name="Tabelle1">
@@ -1082,7 +1082,7 @@
<table:table-column table:style-name="Tabelle1.B"/>
<table:table-column table:style-name="Tabelle1.C"/>
<table:table-column table:style-name="Tabelle1.D"/>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Ruediger Timm<text:line-break/>Commits: 82464<text:line-break/>Joined: 2000-10-10</text:p>
</table:table-cell>
@@ -1090,13 +1090,13 @@
<text:p text:style-name="Table_20_Contents">Kurt Zenker<text:line-break/>Commits: 31752<text:line-break/>Joined: 2000-09-25</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 31226<text:line-break/>Joined: 2000-10-10</text:p>
+ <text:p text:style-name="Table_20_Contents">Caolán McNamara<text:line-break/>Commits: 31314<text:line-break/>Joined: 2000-10-10</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Oliver Bolte<text:line-break/>Commits: 31008<text:line-break/>Joined: 2000-09-19</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Jens-Heiner Rechtien [hr]<text:line-break/>Commits: 28805<text:line-break/>Joined: 2000-09-18</text:p>
</table:table-cell>
@@ -1104,27 +1104,27 @@
<text:p text:style-name="Table_20_Contents">Vladimir Glazunov<text:line-break/>Commits: 25434<text:line-break/>Joined: 2000-12-04</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 19135<text:line-break/>Joined: 2000-10-04</text:p>
+ <text:p text:style-name="Table_20_Contents">Stephan Bergmann<text:line-break/>Commits: 19177<text:line-break/>Joined: 2000-10-04</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 14371<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Noel Grandin<text:line-break/>Commits: 14660<text:line-break/>Joined: <text:span text:style-name="T2">2011-12-12</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Ivo Hinkelmann<text:line-break/>Commits: 9480<text:line-break/>Joined: 2002-09-09</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Tor Lillqvist<text:line-break/>Commits: 8990<text:line-break/>Joined: 2010-03-23</text:p>
+ <text:p text:style-name="Table_20_Contents">Tor Lillqvist<text:line-break/>Commits: 8992<text:line-break/>Joined: 2010-03-23</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 8532<text:line-break/>Joined: 2010-07-29</text:p>
+ <text:p text:style-name="Table_20_Contents">Miklos Vajna<text:line-break/>Commits: 8567<text:line-break/>Joined: 2010-07-29</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Michael Stahl<text:line-break/>Commits: 7707<text:line-break/>Joined: 2008-06-16</text:p>
+ <text:p text:style-name="Table_20_Contents">Michael Stahl<text:line-break/>Commits: 7710<text:line-break/>Joined: 2008-06-16</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Kohei Yoshida<text:line-break/>Commits: 5571<text:line-break/>Joined: 2009-06-19</text:p>
</table:table-cell>
@@ -1135,29 +1135,29 @@
<text:p text:style-name="Table_20_Contents">Frank Schoenheit [fs]<text:line-break/>Commits: 5008<text:line-break/>Joined: 2000-09-19</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Eike Rathke<text:line-break/>Commits: 4925<text:line-break/>Joined: 2000-10-11</text:p>
+ <text:p text:style-name="Table_20_Contents">Eike Rathke<text:line-break/>Commits: 4941<text:line-break/>Joined: 2000-10-11</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">David Tardon<text:line-break/>Commits: 3646<text:line-break/>Joined: 2009-11-12</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 3129<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-04</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Julien Nabet<text:line-break/>Commits: 3147<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-04</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Hans-Joachim Lankenau<text:line-break/>Commits: 3007<text:line-break/>Joined: 2000-09-19</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Ocke Janssen [oj]<text:line-break/>Commits: 2850<text:line-break/>Joined: 2000-09-20</text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 2866<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Tomaž Vajngerl<text:line-break/>Commits: 2849<text:line-break/>Joined: <text:span text:style-name="T2">2012-06-02</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 2862<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrea Gelmini<text:line-break/>Commits: 2842<text:line-break/>Joined: <text:span text:style-name="T2">2014-10-30</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents">Ocke Janssen [oj]<text:line-break/>Commits: 2850<text:line-break/>Joined: 2000-09-20</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Jan Holesovsky<text:line-break/>Commits: 2665<text:line-break/>Joined: 2009-06-23</text:p>
@@ -1166,21 +1166,21 @@
<text:p text:style-name="Table_20_Contents">Mathias Bauer<text:line-break/>Commits: 2580<text:line-break/>Joined: 2000-09-20</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Oliver Specht<text:line-break/>Commits: 2549<text:line-break/>Joined: 2000-09-21</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Luboš Luňák<text:line-break/>Commits: 2496<text:line-break/>Joined: 2010-09-21</text:p>
+ <text:p text:style-name="Table_20_Contents">Luboš Luňák<text:line-break/>Commits: 2505<text:line-break/>Joined: 2010-09-21</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Michael Meeks<text:line-break/>Commits: 2461<text:line-break/>Joined: 2004-08-05</text:p>
+ <text:p text:style-name="Table_20_Contents">Michael Meeks<text:line-break/>Commits: 2462<text:line-break/>Joined: 2004-08-05</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Bjoern Michaelsen<text:line-break/>Commits: 2446<text:line-break/>Joined: 2009-10-14</text:p>
+ <text:p text:style-name="Table_20_Contents">Bjoern Michaelsen<text:line-break/>Commits: 2447<text:line-break/>Joined: 2009-10-14</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Norbert Thiebaud<text:line-break/>Commits: 2176<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p>
</table:table-cell>
@@ -1194,26 +1194,26 @@
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andras Timar<text:line-break/>Commits: 1953<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-02</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Christian Lippka<text:line-break/>Commits: 1805<text:line-break/>Joined: 2000-09-25</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mike Kaganski<text:line-break/>Commits: 1723<text:line-break/>Joined: <text:span text:style-name="T2">2015-04-26</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Mike Kaganski<text:line-break/>Commits: 1761<text:line-break/>Joined: <text:span text:style-name="T2">2015-04-26</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Matúš Kukan<text:line-break/>Commits: 1712<text:line-break/>Joined: <text:span text:style-name="T2">2011-04-06</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Armin Le Grand (Allotropia)<text:line-break/>Commits: 1499<text:line-break/>Joined: 2000-09-25</text:p>
+ <text:p text:style-name="Table_20_Contents">Armin Le Grand (Allotropia)<text:line-break/>Commits: 1501<text:line-break/>Joined: 2000-09-25</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Takeshi Abe<text:line-break/>Commits: 1486<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-08</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Xisco Fauli<text:line-break/>Commits: 1488<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-06</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Xisco Fauli<text:line-break/>Commits: 1481<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-06</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Takeshi Abe<text:line-break/>Commits: 1486<text:line-break/>Joined: <text:span text:style-name="T2">2010-11-08</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Matteo Casalin<text:line-break/>Commits: 1476<text:line-break/>Joined: <text:span text:style-name="T2">2011-11-13</text:span></text:p>
@@ -1222,9 +1222,9 @@
<text:p text:style-name="Table_20_Contents">Thorsten Behrens<text:line-break/>Commits: 1440<text:line-break/>Joined: 2001-04-25</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 1352<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Olivier Hallot<text:line-break/>Commits: 1363<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-25</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Fridrich Štrba<text:line-break/>Commits: 1338<text:line-break/>Joined: 2007-02-22</text:p>
@@ -1236,7 +1236,7 @@
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Chris Sherlock<text:line-break/>Commits: 1300<text:line-break/>Joined: <text:span text:style-name="T2">2013-02-25</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Niklas Nebel<text:line-break/>Commits: 1296<text:line-break/>Joined: 2000-09-19</text:p>
</table:table-cell>
@@ -1250,21 +1250,21 @@
<text:p text:style-name="Table_20_Contents">Daniel Rentz [dr]<text:line-break/>Commits: 1206<text:line-break/>Joined: 2000-09-28</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Lionel Elie Mamane<text:line-break/>Commits: 1051<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-15</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 1029<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Gabor Kelemen<text:line-break/>Commits: 1030<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-18</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jan-Marek Glogowski<text:line-break/>Commits: 990<text:line-break/>Joined: <text:span text:style-name="T2">2013-11-14</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jan-Marek Glogowski<text:line-break/>Commits: 996<text:line-break/>Joined: <text:span text:style-name="T2">2013-11-14</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Samuel Mehrbrodt<text:line-break/>Commits: 984<text:line-break/>Joined: <text:span text:style-name="T2">2011-06-08</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Petr Mladek<text:line-break/>Commits: 958<text:line-break/>Joined: 2006-10-03</text:p>
</table:table-cell>
@@ -1272,18 +1272,18 @@
<text:p text:style-name="Table_20_Contents">Noel Power<text:line-break/>Commits: 950<text:line-break/>Joined: 2002-09-24</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 926<text:line-break/>Joined: 2008-06-01</text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Szymon Kłos<text:line-break/>Commits: 932<text:line-break/>Joined: <text:span text:style-name="T2">2014-03-22</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Kai Ahrens<text:line-break/>Commits: 909<text:line-break/>Joined: 2000-09-21</text:p>
+ <text:p text:style-name="Table_20_Contents">Christian Lohmaier<text:line-break/>Commits: 931<text:line-break/>Joined: 2008-06-01</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Henning Brinkmann<text:line-break/>Commits: 899<text:line-break/>Joined: 2002-08-14</text:p>
+ <text:p text:style-name="Table_20_Contents">Kai Ahrens<text:line-break/>Commits: 909<text:line-break/>Joined: 2000-09-21</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Szymon Kłos<text:line-break/>Commits: 890<text:line-break/>Joined: <text:span text:style-name="T2">2014-03-22</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents">Henning Brinkmann<text:line-break/>Commits: 899<text:line-break/>Joined: 2002-08-14</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Cédric Bosdonnat<text:line-break/>Commits: 882<text:line-break/>Joined: 2009-11-16</text:p>
@@ -1292,7 +1292,7 @@
<text:p text:style-name="Table_20_Contents">Malte Timmermann [mt]<text:line-break/>Commits: 864<text:line-break/>Joined: 2000-10-10</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Sven Jacobi<text:line-break/>Commits: 850<text:line-break/>Joined: 2000-09-21</text:p>
</table:table-cell>
@@ -1306,7 +1306,7 @@
<text:p text:style-name="Table_20_Contents">Mikhail Voytenko<text:line-break/>Commits: 793<text:line-break/>Joined: 2001-01-16</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Maxim Monastirsky<text:line-break/>Commits: 779<text:line-break/>Joined: <text:span text:style-name="T2">2013-10-27</text:span></text:p>
</table:table-cell>
@@ -1317,12 +1317,12 @@
<text:p text:style-name="Table_20_Contents">Joachim Lingner<text:line-break/>Commits: 745<text:line-break/>Joined: 2000-10-05</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Katarina Behrens<text:line-break/>Commits: 740<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-13</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrzej Hunt<text:line-break/>Commits: 743<text:line-break/>Joined: <text:span text:style-name="T2">2012-03-27</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Andrzej Hunt<text:line-break/>Commits: 737<text:line-break/>Joined: <text:span text:style-name="T2">2012-03-27</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Katarina Behrens<text:line-break/>Commits: 742<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-13</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Andre Fischer<text:line-break/>Commits: 730<text:line-break/>Joined: 2001-02-06</text:p>
@@ -1334,21 +1334,21 @@
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Zdeněk Crhonek<text:line-break/>Commits: 714<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-19</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents">Joerg Skottke [jsk]<text:line-break/>Commits: 678<text:line-break/>Joined: 2008-06-17</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Joseph Powers<text:line-break/>Commits: 658<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-15</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Johnny_M<text:line-break/>Commits: 669<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-12</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Johnny_M<text:line-break/>Commits: 656<text:line-break/>Joined: <text:span text:style-name="T2">2016-05-12</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Joseph Powers<text:line-break/>Commits: 658<text:line-break/>Joined: <text:span text:style-name="T2">2010-10-15</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>László Németh<text:line-break/>Commits: 654<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>László Németh<text:line-break/>Commits: 656<text:line-break/>Joined: <text:span text:style-name="T2">2010-09-29</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jens Carl<text:line-break/>Commits: 654<text:line-break/>Joined: <text:span text:style-name="T2">2014-05-28</text:span></text:p>
</table:table-cell>
@@ -1362,7 +1362,7 @@
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Rafael Dominguez<text:line-break/>Commits: 606<text:line-break/>Joined: <text:span text:style-name="T2">2011-02-13</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Jochen Nitschke<text:line-break/>Commits: 587<text:line-break/>Joined: <text:span text:style-name="T2">2016-02-02</text:span></text:p>
</table:table-cell>
@@ -1373,10 +1373,10 @@
<text:p text:style-name="Table_20_Contents">Thomas Benisch [tbe]<text:line-break/>Commits: 551<text:line-break/>Joined: 2000-10-23</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents">Rene Engelhard<text:line-break/>Commits: 543<text:line-break/>Joined: 2005-03-14</text:p>
+ <text:p text:style-name="Table_20_Contents">Rene Engelhard<text:line-break/>Commits: 544<text:line-break/>Joined: 2005-03-14</text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Khaled Hosny<text:line-break/>Commits: 542<text:line-break/>Joined: <text:span text:style-name="T2">2011-01-28</text:span></text:p>
</table:table-cell>
@@ -1384,15 +1384,15 @@
<text:p text:style-name="Table_20_Contents">Jürgen Schmidt<text:line-break/>Commits: 512<text:line-break/>Joined: 2000-10-09</text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Justin Luth<text:line-break/>Commits: 499<text:line-break/>Joined: <text:span text:style-name="T2">2014-09-30</text:span></text:p>
+ <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Justin Luth<text:line-break/>Commits: 503<text:line-break/>Joined: <text:span text:style-name="T2">2014-09-30</text:span></text:p>
</table:table-cell>
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
<text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Peter Foley<text:line-break/>Commits: 489<text:line-break/>Joined: <text:span text:style-name="T2">2011-09-04</text:span></text:p>
</table:table-cell>
</table:table-row>
- <table:table-row table:style-name="TableLine134809184">
+ <table:table-row table:style-name="TableLine244633328">
<table:table-cell table:style-name="Tabelle1.A1" office:value-type="string">
- <text:p text:style-name="Table_20_Contents"><text:span text:style-name="T1">*</text:span>Adolfo Jayme Barrientos<text:line-break/>Commits: 481<text:line-break/>Joined: <text:span text:style-name="T2">2013-06-21</text:span></text:p>
... etc. - the rest is truncated
More information about the Libreoffice-commits
mailing list