summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/drawing
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2012-11-21 17:19:28 +0100
committerStephan Bergmann <sbergman@redhat.com>2012-11-21 17:47:43 +0100
commitea91c7d90d74e1ca039ba669b5d3e14fa359c0fa (patch)
tree1f8bd3b84fa18737164ed944d9db401794985677 /offapi/com/sun/star/drawing
parent397f3e5d7b0b079ef3a6ef4b859ea2b2ab814b67 (diff)
Turn presenter screen from bundled extension to plain code
The immediate trigger was 5e5c11c664f67ff9fd1120905b09a32bea3b2f6c "fdo#42070 Fix RTL support in presenter console" causing build failures on Mac OS X when linking the extension against vcl, but there should be more benefits of going from a bundled-anyway extension to plain code. (Not the least to get rid of the com.sun.star.drawing.XPresenterHelper hack.) To avoid unnecessary confusion between the newly plain code and any instance of the old extension still installed (per-user or shared), I renamed all relevant identifiers as follows: * UNO implementation com.sun.star.comp.Draw.framework.PresenterScreenJob -> org.libreoffice.comp.PresenterScreenJob * UNO implementation com.sun.star.sdext.presenter.PresenterProtocolHandler -> org.libreoffice.comp.PresenterScreenProtocolHandler * protocol handler schema vnd.com.sun.star.comp.PresenterScreen -> vnd.org.libreoffice.presenterscreen * configuration schema /org.openoffice.Office.extension.PresenterScreen -> /org.openoffice.Office.PresenterScreen (it appears this contains little to no user-changeable data anyway, so not migrating it to a new user profile due to the schema name change should not be problematic) * job ID onDocumentOpenedJob -> org.libreoffice.PresenterScreen Even with these precautions, having the presenter screen installed both as plain code and as a (per-user or shared) extension still leads to a crash when activating presentation mode (likely due to how both codes want to take control of the screen). To mitigate this, existing installations of the extension are explicitly not migrated to new user profiles. The sdext/source/presenter/bitmaps/*.png files were moved to icon-themes/galaxy/sd/res/presenterscreen-*.png and are now accessed via SdResId (adding the relevant data to sd/source/ui/inc/res_bmp.hrc and sd/source/ui/app/res_bmp.src; not sure whether these locations are already ideal). The code itself has been left mostly unchanged in sdext/source/presenter/, and it still clumsily communicates with sd core code via XPresenterHelper. There is a lot of room for improvement here. The help data is left untouched at sdext/source/presenter/help/ and needs to be incorporated properly into helpcontent2 in a follow-up commit. The --disable-ext-presenter-console configure switch is gone. Change-Id: I71adb7ae6dcdbd1802151fce6e3871d8a2026332
Diffstat (limited to 'offapi/com/sun/star/drawing')
-rw-r--r--offapi/com/sun/star/drawing/XPresenterHelper.idl20
1 files changed, 9 insertions, 11 deletions
diff --git a/offapi/com/sun/star/drawing/XPresenterHelper.idl b/offapi/com/sun/star/drawing/XPresenterHelper.idl
index 003b6c1b5e75..6d40c6af3c9b 100644
--- a/offapi/com/sun/star/drawing/XPresenterHelper.idl
+++ b/offapi/com/sun/star/drawing/XPresenterHelper.idl
@@ -28,13 +28,13 @@
module com { module sun { module star { module drawing {
-/** This interface is a collection of functions that are necessary to
+/** This interface is a collection of functions that were necessary to
implement larger parts of the presenter screen as extension. The
- methods of this interface give access to services that can, at the
- moment, only implemented in the Office core, not in an extension.
+ methods of this interface give access to services that could only be
+ implemented in the Office core, not in an extension.
- <p>With time some, maybe all, methods can moved to other, better suited,
- interfaces.</p>
+ <p>As the presenter screen is no extension any more, this hack can go again;
+ it just needs clean-up.</p>
*/
interface XPresenterHelper
{
@@ -114,17 +114,15 @@ interface XPresenterHelper
void toTop (
[in] ::com::sun::star::awt::XWindow xWindow);
- /** Load a bitmap from a file or other accessible resource that can be
- located via a URL.
- @param sURL
- The URL of the bitmap. For a file URL the bitmap is loaded from
- the specified file.
+ /** Load a bitmap with a given ID.
+ @param id
+ The ID of the bitmap.
@param xCanvas
The bitmap is created to be compatible, and possibly optimized,
for this canvas.
*/
::com::sun::star::rendering::XBitmap loadBitmap (
- [in] string sURL,
+ [in] string id,
[in] ::com::sun::star::rendering::XCanvas xCanvas);
/** Capture the mouse so that no other window will receive mouse events.