Bug 154839 - Add navigation button overlay in slide show
Summary: Add navigation button overlay in slide show
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: All All
: medium enhancement
Assignee: Amin Irgaliev
URL:
Whiteboard: target:7.6.0 inReleaseNotes:7.6
Keywords:
Depends on:
Blocks: Slide-Show Icon-Theme-Breeze Icon-Theme-Colibre Icon-Theme-KarasaJaga Icon-Theme-Elementary Icon-Request Icon-Theme-Sifr Icon-Theme-Sukapura
  Show dependency treegraph
 
Reported: 2023-04-16 11:41 UTC by Amin Irgaliev
Modified: 2023-12-29 18:40 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments
Navigation using (437.22 KB, video/mp4)
2023-04-16 14:28 UTC, Vladislav Tarakanov
Details
Show scroll buttons (82.26 KB, image/jpeg)
2023-04-17 11:58 UTC, Amin Irgaliev
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Amin Irgaliev 2023-04-16 11:41:37 UTC
Description:
It would be possible to add to Impress the functionality implemented in MS Office Powerpoint: switching slides using the buttons superimposed on it and displaying the context menu by pressing the button.

Steps to Reproduce:
1.

Actual Results:
 

Expected Results:
 


Reproducible: Always


User Profile Reset: No

Additional Info:
Comment 1 Roman Kuznetsov 2023-04-16 14:03:45 UTC
Do you have some mockup or demo how it should work? If yes, then attach it here please.

I changed status to ASSIGNED to you because you already pushed the patch to our gerrit (next time you can do it yourself=):

https://gerrit.libreoffice.org/c/core/+/150448
Comment 2 Vladislav Tarakanov 2023-04-16 14:28:09 UTC
Created attachment 186698 [details]
Navigation using
Comment 3 Stéphane Guillou (stragu) 2023-04-17 11:44:19 UTC
Vladislav, thanks for working on this.

- Is this always visible, or is it revealed on mouse movement?
- Is there an option to turn it on and off?

Heiko, copying you in for UX opinion.
Comment 4 Amin Irgaliev 2023-04-17 11:58:11 UTC
Created attachment 186723 [details]
Show scroll buttons

It is always visible, without hover the mouse. And yes, you can turn this option on and off in the presentation settings.
Comment 5 Heiko Tietze 2023-04-19 12:05:43 UTC
Nice design candy, IMO. Not really needed if the user clicks through the slides per mouse but might be a good thing for special hardware such as hardware presenter / air mouse devices. At least it wont hurt anyone ;-).
Comment 6 Rizal Muttaqin 2023-04-21 13:33:07 UTC
(In reply to Stéphane Guillou (stragu) from comment #3)
> Vladislav, thanks for working on this.
> 
> - Is this always visible, or is it revealed on mouse movement?

I would rather to see it is just revealed on mouse movement as WPS Office do to prevent any uneccessary coverage against any presentation content. This will ommit the need to add any extra option to disable it (but would be nice if exist ofc)
Comment 7 Amin Irgaliev 2023-04-21 18:07:49 UTC
The current implementation adds a separate queue to send mouse click events to SlideShowImpl from slideshow/engine. SlideShowImpl compares mouse click coordinates with bitmap coordinates and performs the necessary actions.

At this point, we can add the behavior suggested by Rizal Muttaqin by adding mouse movement event handling. If the navigation buttons are enabled in the settings, when moving the mouse, it will be possible to compare the current coordinates and replace the bitmap over which the cursor is located. Looking at this solution now, it doesn't seem right to me. It might be better to use VCL or something similar, but over the past couple of days I have not been able to find anything suitable. Is there any standard solution for creating an overlay with buttons, or any documentation on how this can be done?
Comment 8 Roman Kuznetsov 2023-04-21 18:49:49 UTC
(In reply to Rizal Muttaqin from comment #6)
> (In reply to Stéphane Guillou (stragu) from comment #3)
> > Vladislav, thanks for working on this.
> > 
> > - Is this always visible, or is it revealed on mouse movement?
> 
> I would rather to see it is just revealed on mouse movement as WPS Office do
> to prevent any uneccessary coverage against any presentation content. This
> will ommit the need to add any extra option to disable it (but would be nice
> if exist ofc)

If I understand correctly, the goal of this implementation is work with Impress's SlideShow using some interactive school boards directly. For example, a teacher would just touch the buttons on the board by fingers without any mouse using. So your idea looks not so good for me.
And current implementation allows to change the behavior between classic SlideShow mode and interactive school boards using.

Amin, Vladislav, I'm right here?
Comment 9 Vladislav Tarakanov 2023-04-21 18:52:41 UTC
(In reply to Roman Kuznetsov from comment #8)
> (In reply to Rizal Muttaqin from comment #6)
> > (In reply to Stéphane Guillou (stragu) from comment #3)
> > > Vladislav, thanks for working on this.
> > > 
> > > - Is this always visible, or is it revealed on mouse movement?
> > 
> > I would rather to see it is just revealed on mouse movement as WPS Office do
> > to prevent any uneccessary coverage against any presentation content. This
> > will ommit the need to add any extra option to disable it (but would be nice
> > if exist ofc)
> 
> If I understand correctly, the goal of this implementation is work with
> Impress's SlideShow using some interactive school boards directly. For
> example, a teacher would just touch the buttons on the board by fingers
> without any mouse using. So your idea looks not so good for me.
> And current implementation allows to change the behavior between classic
> SlideShow mode and interactive school boards using.
> 
> Amin, Vladislav, I'm right here?

Yes, that is right
Comment 10 Vladislav Tarakanov 2023-04-23 02:37:40 UTC
Perhaps we did not give a very good description for our idea. I'll try to write in more detail.

This feature is designed for school boards, tablets and other devices, which will be more convenient to control using the buttons on the panel at the bottom of the slide. Three buttons have been added to control the slideshow: switching slides and calling the context menu. Clicking on an empty space triggers the next animation. Since this feature affects only specific devices, we did not change the default behavior and added a switch to the slideshow settings.

Also, at the moment, the build of the patch on gerrit has been successfully completed. Do we need to change the status from "work in progress" to something else, or do we need to meet some other requirements?
Comment 11 Heiko Tietze 2023-04-24 06:59:59 UTC
(In reply to Vladislav Tarakanov from comment #10)
> Do we need to change the status from "work in progress" to
> something else, or do we need to meet some other requirements?

Mike is a seasoned developer and always helpful, follow his suggestions on Gerrit. Eventually when everything is done he will set the patch status to reviewed and submit it. In case of questions you may ask developers directly on the IRC channel.
Comment 12 Commit Notification 2023-05-04 04:24:39 UTC
Amin Irgaliev committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/8d8779808063aeedcf0d2b7efba3d2f82e0d7bef

tdf#154839 Add navigation buttons for slides

It will be available in 7.6.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 13 BogdanB 2023-05-04 04:38:49 UTC
Amin Irgaliev, you have solved your bug. You can change the status from "Assigned" to "Resolved". Later I will mark as "verified". Working very well. Thanks for your work, and to all involved.

Version: 7.6.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 8d8779808063aeedcf0d2b7efba3d2f82e0d7bef
CPU threads: 16; OS: Linux 5.19; UI render: default; VCL: gtk3
Locale: ro-RO (ro_RO.UTF-8); UI: en-US
Calc: threaded
Comment 14 BogdanB 2023-05-04 09:19:10 UTC
Verified with
Version: 7.6.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 8d8779808063aeedcf0d2b7efba3d2f82e0d7bef
CPU threads: 16; OS: Linux 5.19; UI render: default; VCL: gtk3
Locale: ro-RO (ro_RO.UTF-8); UI: en-US
Calc: threaded
Comment 15 BogdanB 2023-05-06 03:54:08 UTC
This setting is in Menu: Slide Show - Slide Show Settings - check Show Navigation Panel.
Comment 16 Rizal Muttaqin 2023-07-30 09:17:01 UTC
With

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 94caaf5c9e2917a3202cf515d61eaa9399b2c2b5
CPU threads: 8; OS: Linux 5.19; UI render: default; VCL: kf5 (cairo+xcb)
Locale: id-ID (id_ID.UTF-8); UI: en-US
Calc: threaded

I can not see  the buttons anymore. Is this a regression?
Comment 17 Roman Kuznetsov 2023-07-30 09:53:12 UTC
(In reply to Rizal Muttaqin from comment #16)
> With
> 
> Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
> Build ID: 94caaf5c9e2917a3202cf515d61eaa9399b2c2b5
> CPU threads: 8; OS: Linux 5.19; UI render: default; VCL: kf5 (cairo+xcb)
> Locale: id-ID (id_ID.UTF-8); UI: en-US
> Calc: threaded
> 
> I can not see  the buttons anymore. Is this a regression?

it works as should in Windows

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: e26aeb882dd236adf19679d5df9b7ba5da1ed226
CPU threads: 16; OS: Windows 10.0 Build 19045; UI render: Skia/Raster; VCL: win
Locale: ru-RU (ru_RU); UI: en-US
Calc: CL threaded

I checked in KDE too, it works too

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 0e17d8ddccdee7d4f46b256153853e1cab87c99e
CPU threads: 4; OS: Linux 5.15; UI render: default; VCL: kf5 (cairo+xcb)
Locale: ru-RU (ru_RU.UTF-8); UI: en-US
Calc: threaded

Anyway, Rizal please file another bug report if you have the problem
Comment 18 Stéphane Guillou (stragu) 2023-11-09 10:39:06 UTC
Verified in 7.6.2.1.