Bug 132086 - Logo not shown in slideshow pauses
Summary: Logo not shown in slideshow pauses
Status: ASSIGNED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium normal
Assignee: Pranith
URL:
Whiteboard:
Keywords: difficultyMedium, easyHack, skillCpp, topicDebug
Depends on:
Blocks: Slide-Show Dev-related
  Show dependency treegraph
 
Reported: 2020-04-13 13:19 UTC by Heiko Tietze
Modified: 2025-09-17 16:43 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Heiko Tietze 2020-04-13 13:19:19 UTC
Slide Show > Slide Show Settings: select Loop and repeat after (with >0s) and check Show Logo

Expected: Logo is shown

One reason is in SfxApplication::GetApplicationLogo(long nWidth) [1] where the flat_logo is overridden by a transparent about image. But even with a proper about.svg it fails, likely because of wrong parameters at maLogo.Draw( this, aGrfPos, aGrfSize ); [2]

[1] https://opengrok.libreoffice.org/xref/core/sfx2/source/appl/appmisc.cxx?r=8d3cec3c#174
[2] https://opengrok.libreoffice.org/xref/core/sd/source/ui/slideshow/showwin.cxx?r=d526bd7d#453
Comment 1 Xisco Faulí 2020-05-13 11:14:24 UTC
let's turn this into an easyhack
Comment 2 Srijan Bhatia 2020-06-05 15:41:41 UTC
Starting work on this.
Comment 3 Srijan Bhatia 2020-06-07 15:29:20 UTC
The problem is that rasterize() function in 
http://opengrok.libreoffice.org/xref/core/sfx2/source/appl/appmisc.cxx?r=9b1c9ac6#180
sets the MapUnit of the logo to Map100thMM.
I don't know if changing this would cause some other issue as the function is also used in the following two files
https://opengrok.libreoffice.org/xref/core/vcl/source/gdi/vectorgraphicdata.cxx?r=27ee05f8#72
https://opengrok.libreoffice.org/xref/core/vcl/source/bitmap/BitmapTools.cxx?r=f94aae5c#107
Comment 4 Heiko Tietze 2020-06-08 08:27:09 UTC
Would check if fFakeDPI and aRealRect make sense.
Comment 5 Xisco Faulí 2021-02-09 14:26:39 UTC
Dear Srijan Bhatia,
This bug has been in ASSIGNED status for more than 3 months without any
activity. Resetting it to NEW.
Please assign it back to yourself if you're still working on this.
Comment 6 Tom Busby 2021-03-29 18:56:01 UTC
I'm taking a look into this bug.

I've noticed that in at least 7.2+ that the logo shows up in the bottom right corner, albeit very small. Would it be more appropriate to mark this as resolved? Or to change the size here?

https://opengrok.libreoffice.org/xref/core/sd/source/ui/slideshow/slideshowimpl.cxx?a=true&r=5e8c0e25&h=2820#2820
Comment 7 Heiko Tietze 2021-04-06 08:33:35 UTC
For me, black screen w/o logo but "Pause" with a countdown.

Version: 7.2.0.0.alpha0+ / LibreOffice Community
Build ID: c47ad11f8c2e917adebbd5d7b3a3ef6cc4b3e670
CPU threads: 8; OS: Linux 5.11; UI render: default; VCL: gtk3
Locale: de-DE (en_US.UTF-8); UI: en-US
Calc: threaded Jumbo

(single screen presentation; 3440x1440px)
Comment 8 Tom Busby 2021-04-06 17:29:11 UTC
I think I see the issue, has something to do with displaying on ultra wide resolutions. I can see the logo fine on 1920x1080 resolution, but when I set my virtual machine's resolution to 1720x720 (3440x1440 halved), I saw that the logo is cut out. I'll look into this further.
Comment 9 Xisco Faulí 2022-05-03 11:31:10 UTC
Dear Tom Busby,
This bug has been in ASSIGNED status for more than 3 months without any
activity. Resetting it to NEW.
Please assign it back to yourself if you're still working on this.
Comment 10 Pranith 2025-09-17 16:43:36 UTC
I've successfully reproduced the bug and located the relevant code in 


sd/source/ui/slideshow/showwin.cxx


within the ShowWindow::DrawPauseScene function.

I have already managed to fix the positioning part of the bug. By changing the aGrfPos calculation, I have successfully centered the logo on the pause screen.Intitally it was on bottom of right corner as small icon. 

Where I'm stuck is the size. The logo is centered, but it's still tiny. I've traced this to the aGrfSize variable, which is based on maLogo.GetPrefSize(). This "preferred size" is too small for a full-screen display.

My question is:What is the correct LibreOffice API or method to scale up aGrfSize to fill a reasonable portion of the screen, while still maintaining the logo's aspect ratio?

I tried to implement a manual calculation but that didn't work well.