Bug 145359 - Enter group: functionality to add an existing shape to a group is missing
Summary: Enter group: functionality to add an existing shape to a group is missing
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: x86-64 (AMD64) All
: medium enhancement
Assignee: Jim Raykowski
URL:
Whiteboard: target:7.5.0 target:7.6.0 inReleaseNo...
Keywords:
Depends on: 152603
Blocks: Navigator Shapes
  Show dependency treegraph
 
Reported: 2021-10-28 10:33 UTC by eco
Modified: 2024-03-12 05:54 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Slide to reproduce the behavior (27.75 KB, application/vnd.oasis.opendocument.presentation)
2021-10-28 10:37 UTC, eco
Details
SdNavigator dnd (1.60 MB, video/x-matroska)
2022-11-12 21:13 UTC, Jim Raykowski
Details
single line insert indicator (2.11 MB, video/x-matroska)
2022-11-13 03:35 UTC, Jim Raykowski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description eco 2021-10-28 10:33:38 UTC
Description:
Running ubuntu 20.04 snap Libre Office or a fresh 7.2.2.2 deb release from the official project. It is impossible to finely manage the shapes of a group. After having clicked on "Enter group" the forms not belonging to the group are not grayed out. No functionality appears to add an existing shape of the slide to the group. So it becomes very difficult to build a coherent animation of the slide where groups appear as the mouse clicks. 

Steps to Reproduce:
1.Launch the attached file
2.Select Trajectory shape which is in a group
3.Click "Enter Group" contextual menu

Actual Results:
Shapes that do not belong to the group are not dimmed.
You cannot add an existing shape to the group. 

Expected Results:
Shapes not belonging to the group should be dimmed.
The selection of a form external to the group should suggest adding it. 


Reproducible: Always


User Profile Reset: Yes



Additional Info:
This expected behavior is explain in the documentation at 

https://help.libreoffice.org/latest/en-US/text/sdraw/guide/groups.html?DbPAR=IMPRESS
Comment 1 eco 2021-10-28 10:37:06 UTC
Created attachment 175971 [details]
Slide to reproduce the behavior
Comment 2 Regina Henschel 2021-10-28 23:31:00 UTC
Your bug reports two independent problems. The problem "are not dimmed" is already reported in bug 122735. So your report should focus on the problem "functionality to add an existing shape to a group is missing". Please change the summary accordingly. That would then be an enhancement request.
Comment 3 Heiko Tietze 2022-11-07 14:10:17 UTC
I would expect to be able to drag the object in the Navigator onto the group and it is added, maybe with confirmation. The same could happen when dragging it onto a group: "Do you want to merge this item into the group? [Yes][No]". Once you can add objects to a group you also want to move it out of the group (without the need to ungroup all item). Don't see how this could work per drag 'n drop at the object itself - you just move a part of the group around - but with the Navigator it might be simple. What do you think, Jim?
Comment 4 Jim Raykowski 2022-11-12 21:13:33 UTC
Created attachment 183554 [details]
SdNavigator dnd

Here is a demo that shows an enhancement that provides object dnd within the Navigator tree. There are no popup dialogs when objects are dragged in or out of groups but that can be added if this is the right direction. I don't have much experience using Impress or Draw. Input from users is always welcomed.

Learned some more things about LO code by hacking this. Challenging and FUN!

https://gerrit.libreoffice.org/c/core/+/142640
Comment 5 Roman Kuznetsov 2022-11-12 21:55:13 UTC
(In reply to Jim Raykowski from comment #4)
> Created attachment 183554 [details]
> SdNavigator dnd
> 
> Here is a demo that shows an enhancement that provides object dnd within the
> Navigator tree. There are no popup dialogs when objects are dragged in or
> out of groups but that can be added if this is the right direction. I don't
> have much experience using Impress or Draw. Input from users is always
> welcomed.
> 
> Learned some more things about LO code by hacking this. Challenging and FUN!
> 
> https://gerrit.libreoffice.org/c/core/+/142640

Jim, it looks great 

But when you drag item, it looks like you will insert your item inside another item. In that case Navigator should show some line between items in the list to show place where your item will placed instead current behavior with highlighting some item in the list
Comment 6 Jim Raykowski 2022-11-13 03:35:25 UTC
Created attachment 183555 [details]
single line insert indicator

Hi Roman,

Is this better behavior? In order to show single line insert at position indication it seems we can't have tree net lines. For qt5 and x11 vcl backends there are rendering glitches when the tree is scrolled while dragging an item. These may be due to the full debug build I use. Gtk3 has a glitch when a group is dragged that does not show all objects in the group until the canvas gets focus. This does not happen in x11 or qt5.
Comment 7 Roman Kuznetsov 2022-11-13 10:56:54 UTC
(In reply to Jim Raykowski from comment #6)
> Created attachment 183555 [details]
> single line insert indicator
> 
> Hi Roman,
> 
> Is this better behavior? 

I didn't like the first part of your video where you drag too long selected item (I don't know in which vcl backend you tried). 

I thought last night about slide dragging in the Slide pane in Impress, may be you can use the same code for this case too?
Comment 8 Jim Raykowski 2022-11-13 19:14:30 UTC
(In reply to Roman Kuznetsov from comment #7)
> I didn't like the first part of your video where you drag too long selected
> item (I don't know in which vcl backend you tried). 
Time periods of different vcl backends shown in the video:
gtk3: 0-22
qt5: 25-50
x11: 50-end of video

> 
> I thought last night about slide dragging in the Slide pane in Impress, may
> be you can use the same code for this case too?
I think you can already do this by shift drag in the slide pane. Assigning the pages names is easier to see this. Naming pages and objects can now be done in the Navigator using right-click popup menu item Rename...
Comment 9 Heiko Tietze 2022-11-14 09:01:29 UTC
Awesome work. The confirmation box might be annoying and could leave the patch as it is.
Comment 10 Heiko Tietze 2022-11-18 14:39:57 UTC
We discussed briefly the patch in the design meeting and greatly appreciate your work. No further additions necessary.
Comment 11 Commit Notification 2022-11-21 08:42:30 UTC
Jim Raykowski committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/1b031eb1ba6c529ce67ff8f471afee414d64a098

tdf#145359 related: SdNavigator dnd

It will be available in 7.5.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 12 Jim Raykowski 2022-12-02 03:49:53 UTC
I suppose the patch is enough for the moment to resolve as fixed. Please reopen if more is needed.
Comment 13 Stéphane Guillou (stragu) 2022-12-20 00:48:48 UTC
Verified in:

Version: 7.5.0.0.beta1 (X86_64) / LibreOffice Community
Build ID: 3aca23eec42e9d6fbe57071d7633ae1fc4bc5fcc
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded

Added to release notes:

https://wiki.documentfoundation.org/index.php?title=ReleaseNotes%2F7.5&type=revision&diff=601020&oldid=599981

Thanks Jim!
Comment 14 Commit Notification 2023-04-24 19:01:37 UTC
Jim Raykowski committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/eebd13c97ecef1e39aa054701a6e6618227d7ae0

tdf#145359 related: Fix SdNavigator dnd z ordering

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.