dictionaries | 2 +- helpcontent2 | 2 +- offapi/com/sun/star/awt/XToolkit.idl | 6 +++++- toolkit/source/awt/vclxtoolkit.cxx | 11 ++++++++--- 4 files changed, 15 insertions(+), 6 deletions(-)
New commits: commit 99d8ce56ecfc4af77cf9b2dc1120d821cba20bee Author: Noel Grandin <[email protected]> Date: Mon Jul 15 14:49:01 2013 +0200 fdo#66762 - Other: com.sun.star.awt.DisplayAccess removed API_CHANGE: I removed the undocumented internal API "com.sun.star.awt.DisplayAccess" in commit dde234b6955a421d51d2b37e4fc3972c660146f0 "fdo#46808, remove awt::DisplayAccess service." However, it appears someone was actually using this. Now, at the same time, we have a method in XToolkit, getWorkArea(), which looks like it was designed to return this exact information, but which has been returning zero for as far back as our commit history goes. So, to kill two birds with one stone, this commit changes getWorkArea() to return the information the customer needs, to wit, the size and position of the primary display. Change-Id: I76300bac604e9e4b7be95b0872a7f95cb6781903 Reviewed-on: https://gerrit.libreoffice.org/4919 Reviewed-by: Michael Meeks <[email protected]> Tested-by: Michael Meeks <[email protected]> diff --git a/dictionaries b/dictionaries index 43d2478..92a907a 160000 --- a/dictionaries +++ b/dictionaries @@ -1 +1 @@ -Subproject commit 43d24786db9947f0aababb1228379b0b3ece2652 +Subproject commit 92a907ab17814a8e08ab787745fefb85ed00d3f3 diff --git a/helpcontent2 b/helpcontent2 index d87de0c..a14b0de 160000 --- a/helpcontent2 +++ b/helpcontent2 @@ -1 +1 @@ -Subproject commit d87de0c383537470900fcd7dc78d534e1f9c3f7c +Subproject commit a14b0defe8aec0eb8e80827e5c9cc76ebe742fd3 diff --git a/offapi/com/sun/star/awt/XToolkit.idl b/offapi/com/sun/star/awt/XToolkit.idl index 9c10b9f..1cff0b1 100644 --- a/offapi/com/sun/star/awt/XToolkit.idl +++ b/offapi/com/sun/star/awt/XToolkit.idl @@ -50,7 +50,11 @@ published interface XToolkit: com::sun::star::uno::XInterface com::sun::star::awt::XWindowPeer getDesktopWindow(); - /** returns the complete work area for this toolkit. + /** + * For LibreOffice versions < 4.1, this method just returned an empty rectangle. + * After that, it started returning a valid value. + * + * @returns the size and position of the primary display */ com::sun::star::awt::Rectangle getWorkArea(); diff --git a/toolkit/source/awt/vclxtoolkit.cxx b/toolkit/source/awt/vclxtoolkit.cxx index f04e9f8..662906e 100644 --- a/toolkit/source/awt/vclxtoolkit.cxx +++ b/toolkit/source/awt/vclxtoolkit.cxx @@ -560,9 +560,14 @@ void SAL_CALL VCLXToolkit::disposing() ::com::sun::star::awt::Rectangle VCLXToolkit::getWorkArea( ) throw(::com::sun::star::uno::RuntimeException) { - ::com::sun::star::awt::Rectangle aRect; - // 07/00: AppWindow doesn't exist anymore... - return aRect; + sal_Int32 nDisplay = Application::GetDisplayBuiltInScreen(); + Rectangle aWorkRect = Application::GetScreenPosSizePixel( nDisplay ); + com::sun::star::awt::Rectangle aNotherRect; + aNotherRect.X = aWorkRect.getX(); + aNotherRect.Y = aWorkRect.getY(); + aNotherRect.Width = aWorkRect.getWidth(); + aNotherRect.Height = aWorkRect.getHeight(); + return aNotherRect; } ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindowPeer > VCLXToolkit::createWindow( const ::com::sun::star::awt::WindowDescriptor& rDescriptor ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException) _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
