Bug 70422 - Move cxx files in sw/source/ui to reflect the reality on how they are linked in libraries
Summary: Move cxx files in sw/source/ui to reflect the reality on how they are linked ...
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
(earliest affected)
Hardware: Other All
: lowest trivial
Assignee: Roopak
Whiteboard: target:4.3.0
Keywords: difficultyBeginner, easyHack, skillScript
Depends on:
Reported: 2013-10-13 11:17 UTC by Björn Michaelsen
Modified: 2015-12-15 23:20 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Note You need to log in before you can comment on or make changes to this bug.
Description Björn Michaelsen 2013-10-13 11:17:31 UTC
The in the sw/ modules there are two libraries build sw and swui. Also one find source code in sw/source split up in three dirs: core, filter and ui. One would expect that all the code in ui belongs to swui and the rest to sw. Sadly this isnt the case: To cause maximum confusion a file in sw/source/ui could belong to the sw library or the swui library, with no obvious information for the innocent bystander to see where it will finally be linked in.

This Easy Hack proposes to:

- identify the files from sw/source/ui that are actually linked into the sw lib in the sw/Library_sw.mk
- move these file to a new sw/source/core/uibase dir and adjust the makefiles

With this, it is a lot more obvious which stuff gets linked were (and thus e.g. which symbols need to be exported from sw for swui) and still keeps the ui components in library sw clearly identifiable.
Comment 1 Björn Michaelsen 2013-10-13 11:21:07 UTC
@Caolan, @mst: Could you quickly check if you have any violent opposition to this? If not I would change ProposedEasyHack to EasyHack and cc the dev-list.
Comment 2 Michael Stahl (allotropia) 2013-11-19 12:24:30 UTC
i'm not sure if i understand the reasons for _how_ exactly
the current split is done anyway...

fwict the swui library is for stuff that is not needed immediately at startup; it only includes part of the "ui" while other parts of the "ui" are in sw library because they are needed always.

so the current source dir structure is of (logically) "core" parts vs. "ui" parts whereas what you propose is to move parts that aren't "core" into sw/source/core.

then again there is already a weird sort of split between "model" (which is all in core except for SwXTextDocument) and "view" which is partially in sw/source/core (base classes, ViewShell etc.) and partially in sw/source/ui.

so i'm not sure what this all _should_ look like.

perhaps what we really need is to split up the "ui" directory in 2
(so we have 4 dirs in sw/source), not move the stuff to sw/source/core/...
Comment 3 Roopak 2014-02-27 15:46:22 UTC
I would like to work on this bug.Can anyone assign this bug to me
Comment 4 Joel Madero 2014-02-27 23:15:09 UTC
In order to limit the confusion between ProposedEasyHack and EasyHack and to make queries much easier we are changing ProposedEasyHack to NeedsDevEval.

Thank you and apologies for the noise
Comment 5 Commit Notification 2014-03-09 20:54:01 UTC
roopak12345 committed a patch related to this issue.
It has been pushed to "master":


fdo#70422 Moved the linked files from sw/source/ui to a new core/uibase dir

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
Affected users are encouraged to test the fix and report feedback.
Comment 6 Robinson Tryon (qubit) 2015-12-15 23:20:56 UTC
Migrating Whiteboard tags to Keywords: (easyHack difficultyBeginner skillScript )