Code pointers:

- All CLICK and SHIFT+CLICK operations for grouping Drawing objects
handled in ./sw/source/uibase/docvw/edtwin.cxx:2770 :
https://opengrok.libreoffice.org/xref/core/sw/source/uibase/docvw/edtwin.cxx?r=216a43bc#2770

- SHIFT+CLICK occurs in:
https://opengrok.libreoffice.org/xref/core/sw/source/uibase/docvw/edtwin.cxx?r=216a43bc#3470

- Select objects : SwFEShell::SelectObj:
https://opengrok.libreoffice.org/xref/core/sw/source/core/frmedt/feshview.cxx?r=715797bc#177

- Marked object list:
https://opengrok.libreoffice.org/xref/core/include/svx/svdmark.hxx?r=40595834#230

- Types of forms of content:
https://opengrok.libreoffice.org/xref/core/sw/inc/editsh.hxx?r=1feb59c3#130

- Mark object:
https://opengrok.libreoffice.org/xref/core/svx/source/svdraw/svdmrkv.cxx?r=8a850eed#1877

You can read the full-detailed blog post of my 2-week research on this
bug: https://bayramcicek.com.tr/libreoffice-
dev/2021/07/05/week-03-04-gsoc.html

(I don't want to write everything in the blog post here because it's too
long), just want to point out:

All selected objects store in rMrkList list:
const SdrMarkList &rMrkList = pDView->GetMarkedObjectList(); 

Output of SAL_DEBUG( rMrkList.GetMarkDescription() ); (in
SwFEShell::SelectObj):

For shapes: "shapes"
For 2+ shapes: "2 shapes"
For draw images: "Image with transparency"
For text box: "Text Frame"
For raster images: "[Drawing object]" (defined as #define STR_ObjNameSingulNONE)

rMrkList.GetMarkCount(); always increases by 1 when selecting drawing objects 
via SHIFT+CLICK. But always gives 1 when selecting raster images because 
pOldSelFly = ::GetFlyFromMarked( &rMrkList, this ); always return an address 
and this causes rMrkList doesn’t add the second selected raster image to itself 
and do unmark it. 
(if we force rMrkList to add raster images to itself by removing the 
pDView->UnmarkAll() line, this time, debugging warns "warn: /*...*/ frame is 
not accessible." )

I don't understand why images handled different in Writer and
Draw/Calc/Impress.

IMHO, should we get rid of writer-images and convert them into drawing
objects as like in the Draw? Otherwise, from my point of view, it seems
a bit complicated to group raster images and raster&shapes. What do you
think?

Thanks.

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to libreoffice in Ubuntu.
https://bugs.launchpad.net/bugs/1481835

Title:
  [UPSTREAM] Unable to group raster image(s) with drawing object(s)

Status in LibreOffice:
  Confirmed
Status in libreoffice package in Ubuntu:
  In Progress

Bug description:
  Steps to reproduce:
     1. Create new document in LibreOffice Writer
     2. put rester images into document and put on images some drawing objects 
(arrows, other shapes), text. 
     3. try to group images with drawing objects.

  Expected behaviour:
     User can select and group image(s) with drawing object(s)

  Actual behaviour:
     User can not select and group image(s) with drawing object(s)

  ProblemType: Bug
  DistroRelease: Ubuntu 12.04
  Package: libreoffice 1:3.5.7-0ubuntu8
  ProcVersionSignature: Ubuntu 3.13.0-61.100~precise1-generic 3.13.11-ckt22
  Uname: Linux 3.13.0-61-generic x86_64
  ApportVersion: 2.0.1-0ubuntu17.9
  Architecture: amd64
  Date: Wed Aug  5 18:59:59 2015
  InstallationMedia: Ubuntu 12.04.4 LTS "Precise Pangolin" - Release amd64 
(20140204)
  MarkForUpload: True
  SourcePackage: libreoffice
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/df-libreoffice/+bug/1481835/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : desktop-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to