Bug 50964

Summary: PresenterConsole - missing all images...
Product: LibreOffice Reporter: Michael Meeks <michael.meeks>
Component: PresentationAssignee: Not Assigned <libreoffice-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: blocker    
Priority: medium CC: jbfaure, LibreOffice, michael.meeks, sbergman
Version: Master old -3.6   
Hardware: All   
OS: Linux (All)   
See Also: https://bugs.freedesktop.org/show_bug.cgi?id=51547
Whiteboard: target:3.7.0 target:3.6.0.0.beta2
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 44446    

Description Michael Meeks 2012-06-11 05:48:44 UTC
This is down to the PresenterConsole not getting the correct path to load it's bitmaps from. It achieves this feat via:

void ReadContext::SetBitmapSourceExtension (const OUString& rsExtensionIdentifier)
{
    // Get base path to bitmaps.
    msBasePath = PresenterComponent::GetBasePath(mxComponentContext, rsExtensionIdentifier);
}

Which erroneously returns '/' - the rsExtensionIdentifier is -very- odd (cf. the sdext stuff like this:

Library_presenter.mk:    -DPRESENTER_IMPL_IDENTIFIER=\"com.sun.PresenterScreen-$(PLATFORMID)\" \
StaticLibrary_pdfimport_s.mk:    -DPDFI_IMPL_IDENTIFIER=\"com.sun.star.PDFImport-$(sdext_PLATFORM)\" \

Where the idea of mangling the PLATFORMID into some impl identifier came from I have no clue - it seems crazy on the surface.

The code then calls:

::rtl::OUString PresenterComponent::GetBasePath (
    const Reference<XComponentContext>& rxComponentContext,
    const OUString& rsExtensionIdentifier)
{
    static ::rtl::OUString sBasePath;
    if (sBasePath.isEmpty())
    {
        // Determine the base path of the bitmaps.
        Reference<deployment::XPackageInformationProvider> xInformationProvider (
            rxComponentContext->getValueByName(
                OUString(RTL_CONSTASCII_USTRINGPARAM(
                    "/singletons/com.sun.star.deployment.PackageInformationProvider"))),
            UNO_QUERY);
        if (xInformationProvider.is())
        {
            try
            {
                sBasePath = xInformationProvider->getPackageLocation(rsExtensionIdentifier)
                    + OUString(RTL_CONSTASCII_USTRINGPARAM("/"));
            }
            catch (const deployment::DeploymentException&)
            {
            }
        }
    }


And walking through:

dp_informationprovider.cxx's

rtl::OUString PackageInformationProvider::getPackageLocation(

shows it operating on an empty sequence. ie.

        const uno::Sequence< uno::Reference< deployment::XPackage > > packages(
                xManager->getDeployedExtensions(
                    repository,
                    uno::Reference< task::XAbortChannel >(),
                    uno::Reference< css_ucb::XCommandEnvironment > () ) );


returns an empty sequence. That seems to be the cause of the problem.
Comment 1 Michael Meeks 2012-06-11 05:49:35 UTC
Stephan - any ideas what's up here ? [ you need an external display to test I guess, just press F9 & marvel at the lack of images ;-]
Comment 2 Not Assigned 2012-06-11 06:15:30 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=bda192b6f4f81cf3290672d896e7c09e7499288c

fdo#50964 - fix presenter console artwork location
Comment 3 Michael Meeks 2012-06-11 06:16:04 UTC
Fixed - now we get artwork, but still everything is -really- dicey in the presenter console; prelight barely works, the whole thing is a horror ...
Comment 4 Not Assigned 2012-06-11 06:21:26 UTC
Michael Meeks committed a patch related to this issue.
It has been pushed to "libreoffice-3-6":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=de4715a62db307e0a93fca5486d2a354ac74ff62&g=libreoffice-3-6

fdo#50964 - fix presenter console artwork location


It will be available in LibreOffice 3.6.
Comment 5 Jean-Baptiste Faure 2012-06-24 23:38:18 UTC
(In reply to comment #3)
> Fixed - now we get artwork, but still everything is -really- dicey in the
> presenter console; prelight barely works, the whole thing is a horror ...

Indeed, the current slide in the primary screen is empty and several buttons are missing. Tested with LO 3.6.0.0.beta1+ under Ubuntu 11.10 with gnome-shell. :-(
Any news regarding this problem ? Is it the same bug or another one ?

Best regards. JBF
Comment 6 Michael Meeks 2012-06-25 01:34:31 UTC
prolly the same bug; it should be fixed in b2.

Having said that - there is some rather odd oddness in the presenter console still that needs a separate bug filing I think.
Comment 7 Jean-Baptiste Faure 2012-06-29 01:02:32 UTC
Did a test with LO 3.6.0.0.beta2 32 bits on Ubuntu 10.04 LTS (gnome 2) -> same problem as experienced with LO 3.6.0.0.beta2+ (Build ID: 55d095a) on Ubuntu 11.10 x86_64 with gnome-shell.
Main problem: on the speaker screen the current slide is not visible but a very short time during transition.
Second problem: on the speaker screen only the clock is visible at the bottom.

Best regards. JBF
Comment 8 Michael Meeks 2012-06-29 01:17:20 UTC
This is a different bug. The images are there, but the screen rendering is corrupted. Please can you create a different bug for that & mark it MAB for 3.6 (that is fine).
Comment 9 Jean-Baptiste Faure 2012-06-29 01:38:36 UTC
(In reply to comment #8)
> This is a different bug. The images are there, but the screen rendering is
> corrupted. Please can you create a different bug for that & mark it MAB for 3.6
> (that is fine).

done : bug 51547.
Best regards. JBF

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.