[Libreoffice-commits] .: 5 commits - desktop/source filter/qa filter/source sw/source sw/uiconfig
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Wed Nov 21 03:17:08 PST 2012
desktop/source/deployment/gui/dp_gui_theextmgr.cxx | 41 +++++++-----------
filter/qa/cppunit/data/tga/fail/CVE-2012-3755-1.tga |binary
filter/source/xsltdialog/hidother.src | 1
filter/source/xsltdialog/xmlfilterdialogcomponent.cxx | 23 +++++-----
filter/source/xsltdialog/xmlfilterhelpids.hrc | 1
filter/source/xsltdialog/xmlfiltersettingsdialog.cxx | 8 +--
filter/source/xsltdialog/xmlfiltersettingsdialog.hxx | 2
sw/source/ui/dialog/wordcountdialog.cxx | 12 +++++
sw/source/ui/inc/wordcountdialog.hxx | 3 -
sw/uiconfig/swriter/ui/wordcount.ui | 30 ++++++-------
10 files changed, 65 insertions(+), 56 deletions(-)
New commits:
commit 3fa0d17b39bebabcf18e35df38572e4d51d05251
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Nov 21 11:08:10 2012 +0000
add regression test for CVE-2012-3755
Change-Id: I68352532016a9db370ddd6e69e4efe962763f001
diff --git a/filter/qa/cppunit/data/tga/fail/CVE-2012-3755-1.tga b/filter/qa/cppunit/data/tga/fail/CVE-2012-3755-1.tga
new file mode 100644
index 0000000..963e5d3
Binary files /dev/null and b/filter/qa/cppunit/data/tga/fail/CVE-2012-3755-1.tga differ
commit fd760bf54122b3c20e4d142a4006909aa5143003
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Nov 21 10:56:58 2012 +0000
bump xmlfilter settings dialog for new helpids
Change-Id: If15ba82db3910bf0948f6dd4ed984a05e68a6080
diff --git a/filter/source/xsltdialog/hidother.src b/filter/source/xsltdialog/hidother.src
index cf2816d..c6947c7 100644
--- a/filter/source/xsltdialog/hidother.src
+++ b/filter/source/xsltdialog/hidother.src
@@ -20,7 +20,6 @@
hidspecial HID_XML_SOURCE_FILE_DIALOG { HelpId = HID_XML_SOURCE_FILE_DIALOG; };
hidspecial HID_XML_SOURCE_FILE_VALIDATE { HelpId = HID_XML_SOURCE_FILE_VALIDATE; };
-hidspecial HID_XML_FILTER_LIST { HelpId = HID_XML_FILTER_LIST; };
hidspecial HID_XML_FILTER_TABDIALOG { HelpId = HID_XML_FILTER_TABDIALOG; };
hidspecial HID_XML_FILTER_TABPAGE_BASIC { HelpId = HID_XML_FILTER_TABPAGE_BASIC; };
diff --git a/filter/source/xsltdialog/xmlfilterhelpids.hrc b/filter/source/xsltdialog/xmlfilterhelpids.hrc
index 712a8ef..338604d 100644
--- a/filter/source/xsltdialog/xmlfilterhelpids.hrc
+++ b/filter/source/xsltdialog/xmlfilterhelpids.hrc
@@ -20,7 +20,6 @@
#define HID_XML_SOURCE_FILE_DIALOG "FILTER_HID_XML_SOURCE_FILE_DIALOG"
#define HID_XML_SOURCE_FILE_VALIDATE "FILTER_HID_XML_SOURCE_FILE_VALIDATE"
-#define HID_XML_FILTER_LIST "FILTER_HID_XML_FILTER_LIST"
#define HID_XML_FILTER_TABDIALOG "FILTER_HID_XML_FILTER_TABDIALOG"
#define HID_XML_FILTER_TABPAGE_BASIC "FILTER_HID_XML_FILTER_TABPAGE_BASIC"
diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
index 69b3e98..d98b5cb 100644
--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
@@ -78,7 +78,7 @@ XMLFilterSettingsDialog::XMLFilterSettingsDialog(Window* pParent,
m_pFilterListBox->SetDoubleClickHdl( LINK( this, XMLFilterSettingsDialog, DoubleClickHdl_Impl ) );
m_pFilterListBox->SetAccessibleName(RESIDSTR(STR_XML_FILTER_LISTBOX));
m_pCtrlFilterList->SetAccessibleName(RESIDSTR(STR_XML_FILTER_LISTBOX));
- m_pFilterListBox->SetHelpId( HID_XML_FILTER_LIST );
+ m_pFilterListBox->SetHelpId(m_pCtrlFilterList->GetHelpId());
m_pPBNew->SetClickHdl(LINK( this, XMLFilterSettingsDialog, ClickHdl_Impl ) );
m_pPBEdit->SetClickHdl(LINK( this, XMLFilterSettingsDialog, ClickHdl_Impl ) );
commit 9aa8f75a9cd3f42319945b2ac147fba2919fb5df
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Nov 21 10:17:28 2012 +0000
remove OUSTR define
Change-Id: I7b78fa23760af3641dcaf47bc90a995ae215404b
diff --git a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
index d8a80fd..579c5bc 100644
--- a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
+++ b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
@@ -33,11 +33,9 @@
#include "dp_identifier.hxx"
#include "dp_update.hxx"
-#define OUSTR(x) ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM(x) )
-
-#define USER_PACKAGE_MANAGER OUSTR("user")
-#define SHARED_PACKAGE_MANAGER OUSTR("shared")
-#define BUNDLED_PACKAGE_MANAGER OUSTR("bundled")
+#define USER_PACKAGE_MANAGER OUString("user")
+#define SHARED_PACKAGE_MANAGER OUString("shared")
+#define BUNDLED_PACKAGE_MANAGER OUString("bundled")
using namespace ::com::sun::star;
using ::rtl::OUString;
@@ -66,24 +64,24 @@ TheExtensionManager::TheExtensionManager( Window *pParent,
uno::Reference< lang::XMultiServiceFactory > xConfig(
configuration::theDefaultProvider::get(xContext));
uno::Any args[1];
- beans::PropertyValue aValue( OUSTR("nodepath"), 0, uno::Any( OUSTR("/org.openoffice.Office.OptionsDialog/Nodes") ),
+ beans::PropertyValue aValue( OUString("nodepath"), 0, uno::Any( OUString("/org.openoffice.Office.OptionsDialog/Nodes") ),
beans::PropertyState_DIRECT_VALUE );
args[0] <<= aValue;
m_xNameAccessNodes = uno::Reference< container::XNameAccess >(
- xConfig->createInstanceWithArguments( OUSTR("com.sun.star.configuration.ConfigurationAccess"),
+ xConfig->createInstanceWithArguments( OUString("com.sun.star.configuration.ConfigurationAccess"),
uno::Sequence< uno::Any >( args, 1 )), uno::UNO_QUERY_THROW);
// get the 'get more extensions here' url
uno::Reference< container::XNameAccess > xNameAccessRepositories;
- beans::PropertyValue aValue2( OUSTR("nodepath"), 0, uno::Any( OUSTR("/org.openoffice.Office.ExtensionManager/ExtensionRepositories") ),
+ beans::PropertyValue aValue2( OUString("nodepath"), 0, uno::Any( OUString("/org.openoffice.Office.ExtensionManager/ExtensionRepositories") ),
beans::PropertyState_DIRECT_VALUE );
args[0] <<= aValue2;
xNameAccessRepositories = uno::Reference< container::XNameAccess > (
- xConfig->createInstanceWithArguments( OUSTR("com.sun.star.configuration.ConfigurationAccess"),
+ xConfig->createInstanceWithArguments( OUString("com.sun.star.configuration.ConfigurationAccess"),
uno::Sequence< uno::Any >( args, 1 )), uno::UNO_QUERY_THROW);
try
{ //throws css::container::NoSuchElementException, css::lang::WrappedTargetException
- uno::Any value = xNameAccessRepositories->getByName( OUSTR( "WebsiteLink" ) );
+ uno::Any value = xNameAccessRepositories->getByName( OUString( "WebsiteLink" ) );
m_sGetExtensionsURL = value.get< OUString > ();
}
catch ( const uno::Exception& )
@@ -94,7 +92,7 @@ TheExtensionManager::TheExtensionManager( Window *pParent,
// the registration should be done after the construction has been ended
// otherwise an exception prevents object creation, but it is registered as a listener
m_xDesktop.set( xContext->getServiceManager()->createInstanceWithContext(
- OUSTR("com.sun.star.frame.Desktop"), xContext ), uno::UNO_QUERY );
+ OUString("com.sun.star.frame.Desktop"), xContext ), uno::UNO_QUERY );
if ( m_xDesktop.is() )
m_xDesktop->addTerminateListener( this );
}
@@ -385,7 +383,7 @@ bool TheExtensionManager::supportsOptions( const uno::Reference< deployment::XPa
uno::Reference< XInterface> xIntNode = anyNode.get< uno::Reference< XInterface > >();
uno::Reference< container::XNameAccess > xNode( xIntNode, uno::UNO_QUERY_THROW );
- uno::Any anyLeaves = xNode->getByName( OUSTR("Leaves") );
+ uno::Any anyLeaves = xNode->getByName( OUString("Leaves") );
uno::Reference< XInterface > xIntLeaves = anyLeaves.get< uno::Reference< XInterface > >();
uno::Reference< container::XNameAccess > xLeaves( xIntLeaves, uno::UNO_QUERY_THROW );
@@ -398,7 +396,7 @@ bool TheExtensionManager::supportsOptions( const uno::Reference< deployment::XPa
uno::Reference< beans::XPropertySet > xLeaf( xIntLeaf, uno::UNO_QUERY_THROW );
//investigate the Id property if it matches the extension identifier which
//has been passed in.
- uno::Any anyValue = xLeaf->getPropertyValue( OUSTR("Id") );
+ uno::Any anyValue = xLeaf->getPropertyValue( OUString("Id") );
OUString sId = anyValue.get< OUString >();
if ( sId == aId.Value )
commit e53da8804d00182cf83f67880e2799b15b70a46f
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Nov 21 10:14:59 2012 +0000
xslt dialog is supposed to be a modeless dialog
and fix the lifecycle to die at the right time
Change-Id: Ibe8f683ed162500a93e02a56d8607bd2ee431ded
diff --git a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
index cfe9794..d8a80fd 100644
--- a/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
+++ b/desktop/source/deployment/gui/dp_gui_theextmgr.cxx
@@ -22,7 +22,7 @@
#include "osl/mutex.hxx"
-#include "toolkit/helper/vclunohelper.hxx"
+#include <toolkit/helper/vclunohelper.hxx>
#include "com/sun/star/beans/XPropertySet.hpp"
#include "com/sun/star/configuration/theDefaultProvider.hpp"
@@ -103,12 +103,9 @@ TheExtensionManager::TheExtensionManager( Window *pParent,
//------------------------------------------------------------------------------
TheExtensionManager::~TheExtensionManager()
{
- if ( m_pUpdReqDialog )
- delete m_pUpdReqDialog;
- if ( m_pExtMgrDialog )
- delete m_pExtMgrDialog;
- if ( m_pExecuteCmdQueue )
- delete m_pExecuteCmdQueue;
+ delete m_pUpdReqDialog;
+ delete m_pExtMgrDialog;
+ delete m_pExecuteCmdQueue;
}
//------------------------------------------------------------------------------
@@ -454,7 +451,7 @@ void TheExtensionManager::queryTermination( ::lang::EventObject const & )
{
ToTop( TOTOP_RESTOREWHENMIN );
throw frame::TerminationVetoException(
- OUSTR("The office cannot be closed while the Extension Manager is running"),
+ OUString("The office cannot be closed while the Extension Manager is running"),
uno::Reference<XInterface>(static_cast<frame::XTerminateListener*>(this), uno::UNO_QUERY));
}
else
@@ -496,8 +493,8 @@ void TheExtensionManager::modified( ::lang::EventObject const & /*rEvt*/ )
return s_ExtMgr;
}
- Window * pParent = DIALOG_NO_PARENT;
- if ( xParent.is() )
+ Window* pParent = DIALOG_NO_PARENT;
+ if (xParent.is())
pParent = VCLUnoHelper::GetWindow(xParent);
::rtl::Reference<TheExtensionManager> that( new TheExtensionManager( pParent, xContext ) );
diff --git a/filter/source/xsltdialog/xmlfilterdialogcomponent.cxx b/filter/source/xsltdialog/xmlfilterdialogcomponent.cxx
index 773219e..bb6c6b6 100644
--- a/filter/source/xsltdialog/xmlfilterdialogcomponent.cxx
+++ b/filter/source/xsltdialog/xmlfilterdialogcomponent.cxx
@@ -18,7 +18,7 @@
*/
#include <osl/mutex.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
+#include <toolkit/helper/vclunohelper.hxx>
#include <osl/thread.h>
#include <cppuhelper/factory.hxx>
@@ -312,12 +312,19 @@ void SAL_CALL XMLFilterDialogComponent::queryTermination( const EventObject& /*
{
::SolarMutexGuard aGuard;
+ if (!mpDialog)
+ return;
+
// we will never give a veto here
- if( mpDialog && !mpDialog->isClosable() )
+ if (!mpDialog->isClosable())
{
mpDialog->ToTop();
- throw TerminationVetoException();
+ throw TerminationVetoException(
+ OUString("The office cannot be closed while the XMLFilterDialog is running"),
+ Reference<XInterface>(static_cast<XTerminateListener*>(this), UNO_QUERY));
}
+ else
+ mpDialog->Close();
}
//-------------------------------------------------------------------------
@@ -349,13 +356,9 @@ sal_Int16 SAL_CALL XMLFilterDialogComponent::execute( ) throw(RuntimeException)
if( NULL == mpDialog )
{
- Window* pParent = NULL;
- if( mxParent.is() )
- {
- VCLXWindow* pImplementation = VCLXWindow::GetImplementation(mxParent);
- if (pImplementation)
- pParent = pImplementation->GetWindow();
- }
+ Window* pParent = DIALOG_NO_PARENT;
+ if (mxParent.is())
+ pParent = VCLUnoHelper::GetWindow(mxParent);
Reference< XComponent > xComp( this );
mpDialog = new XMLFilterSettingsDialog(pParent, mxMSF);
diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
index fc04e65..69b3e98 100644
--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
+++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.cxx
@@ -57,7 +57,7 @@ using ::rtl::Uri;
XMLFilterSettingsDialog::XMLFilterSettingsDialog(Window* pParent,
const com::sun::star::uno::Reference< com::sun::star::lang::XMultiServiceFactory >& rxMSF)
- : Dialog(pParent, "XMLFilterSettingsDialog", "filter/ui/xmlfiltersettings.ui")
+ : ModelessDialog(pParent, "XMLFilterSettingsDialog", "filter/ui/xmlfiltersettings.ui")
, mxMSF( rxMSF )
, m_bIsClosable(true)
, m_sTemplatePath("$(user)/template/")
@@ -176,7 +176,7 @@ short XMLFilterSettingsDialog::Execute()
initFilterList();
updateStates();
- return Dialog::Execute();
+ return ModelessDialog::Execute();
}
// -----------------------------------------------------------------------
@@ -1016,7 +1016,7 @@ void XMLFilterSettingsDialog::onClose()
long XMLFilterSettingsDialog::Notify( NotifyEvent& rNEvt )
{
// Zuerst Basisklasse rufen wegen TabSteuerung
- long nRet = Dialog::Notify( rNEvt );
+ long nRet = ModelessDialog::Notify( rNEvt );
if ( !nRet )
{
if ( rNEvt.GetType() == EVENT_KEYINPUT )
diff --git a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx
index 006d4e0..0c0e4a7 100644
--- a/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx
+++ b/filter/source/xsltdialog/xmlfiltersettingsdialog.hxx
@@ -82,7 +82,7 @@ public:
// --------------------------------------------------------------------
-class XMLFilterSettingsDialog : public Dialog
+class XMLFilterSettingsDialog : public ModelessDialog
{
public:
XMLFilterSettingsDialog(Window* pParent,
commit e9be9ba808359d87675e20cc1c5c7e2c78e59c7d
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Nov 21 09:20:12 2012 +0000
make the word count dialog the right size with disabled CJK word counting
we want to hide the CJK word count features unless CJK UI is enabled, or if
there are CJK chars in the word count. We want the dialog to fit to the best
size, so force the dialog to resize after it's visible (like a vclexpander)
if in non-CJK mode and some CJK chars appear in the document.
Change-Id: I328dcf2b111d5c5f527757ca11695ce4e9c43353
diff --git a/sw/source/ui/dialog/wordcountdialog.cxx b/sw/source/ui/dialog/wordcountdialog.cxx
index b74b970..fa908a7 100644
--- a/sw/source/ui/dialog/wordcountdialog.cxx
+++ b/sw/source/ui/dialog/wordcountdialog.cxx
@@ -76,6 +76,16 @@ void SwWordCountFloatDlg::SetValues(const SwDocStat& rCurrent, const SwDocStat&
setValue(m_pDocCjkcharsFT, rDoc.nAsianWord);
bool bShowCJK = (SvtCJKOptions().IsAnyEnabled() || rDoc.nAsianWord);
+ bool bToggleCJK = m_pCurrentCjkcharsFT->IsVisible() != bShowCJK;
+ if (bToggleCJK)
+ {
+ showCJK(bShowCJK);
+ setInitialLayoutSize(); //force resize of dialog
+ }
+}
+
+void SwWordCountFloatDlg::showCJK(bool bShowCJK)
+{
m_pCurrentCjkcharsFT->Show(bShowCJK);
m_pDocCjkcharsFT->Show(bShowCJK);
m_pCjkcharsLabelFT->Show(bShowCJK);
@@ -112,6 +122,8 @@ SwWordCountFloatDlg::SwWordCountFloatDlg(SfxBindings* _pBindings,
m_pDocCharacterExcludingSpacesFT->set_width_request(nPrefWidth);
m_pDocCjkcharsFT->set_width_request(nPrefWidth);
+ showCJK(SvtCJKOptions().IsAnyEnabled());
+
Initialize(pInfo);
m_pClosePB->SetClickHdl(LINK(this, SwWordCountFloatDlg, CloseHdl));
diff --git a/sw/source/ui/inc/wordcountdialog.hxx b/sw/source/ui/inc/wordcountdialog.hxx
index a0dbe38..d1e7db2 100644
--- a/sw/source/ui/inc/wordcountdialog.hxx
+++ b/sw/source/ui/inc/wordcountdialog.hxx
@@ -38,7 +38,8 @@ struct SwDocStat;
class SwWordCountFloatDlg : public SfxModelessDialog
{
virtual void Activate();
- void SetValues(const SwDocStat& rCurrent, const SwDocStat& rDoc);
+ void SetValues(const SwDocStat& rCurrent, const SwDocStat& rDoc);
+ void showCJK(bool bShowCJK);
FixedText* m_pCurrentWordFT;
FixedText* m_pCurrentCharacterFT;
diff --git a/sw/uiconfig/swriter/ui/wordcount.ui b/sw/uiconfig/swriter/ui/wordcount.ui
index 733f049..f4e3255 100644
--- a/sw/uiconfig/swriter/ui/wordcount.ui
+++ b/sw/uiconfig/swriter/ui/wordcount.ui
@@ -77,7 +77,7 @@
<property name="can_focus">False</property>
<property name="hexpand">True</property>
<property name="row_spacing">2</property>
- <property name="column_spacing">10</property>
+ <property name="column_spacing">12</property>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
@@ -130,7 +130,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -147,7 +147,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -164,7 +164,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -215,7 +215,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -232,7 +232,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -249,7 +249,7 @@
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -260,12 +260,9 @@
</packing>
</child>
<child>
- <placeholder/>
- </child>
- <child>
<object class="GtkLabel" id="cjkcharsft">
- <property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
<property name="xalign">0</property>
<property name="xpad">10</property>
<property name="label" translatable="yes">Asian characters and Korean syllables</property>
@@ -279,12 +276,12 @@
</child>
<child>
<object class="GtkLabel" id="selectcjkchars">
- <property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -296,12 +293,12 @@
</child>
<child>
<object class="GtkLabel" id="doccjkchars">
- <property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="no_show_all">True</property>
<property name="halign">end</property>
<property name="hexpand">True</property>
<property name="xalign">1</property>
- <property name="label"> 0</property>
+ <property name="label"> 0</property>
<property name="justify">right</property>
</object>
<packing>
@@ -311,6 +308,9 @@
<property name="height">1</property>
</packing>
</child>
+ <child>
+ <placeholder/>
+ </child>
</object>
</child>
</object>
More information about the Libreoffice-commits
mailing list