Bug 129707 - Draw: no command to apply a master to all (selected) pages
Summary: Draw: no command to apply a master to all (selected) pages
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Draw (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All All
: medium enhancement
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: ImpressDraw-Enhancements
  Show dependency treegraph
 
Reported: 2019-12-31 10:56 UTC by Mike Kaganski
Modified: 2023-05-08 18:49 UTC (History)
3 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 Mike Kaganski 2019-12-31 10:56:33 UTC
When a Draw document has several master pages, there's no command to apply some master to all (or selected) normal pages.

Steps:

1. Create a new Draw document.
2. Switch to Master view.
3. On default master, add a shape.
4. Add a New Master page (it will be named "Default 1").
5. Put another distinct shape on this new master.
6. Switch to Normal view.
7. Add several pages (all of them will be based on Default master).
8. Now try to apply "Default 1" master to a selection of normal pages, or to all normal pages.

There is a Page->Master Page command in menu; and also there's "Change Slide Master" command when a single *master* page is right-clicked in Pages pane, opening the same dialog (but apparently just navigating to another master page, without e.g. refreshing Pages pane - but that's a different issue); but it doesn't work for multi-selection, or for all (and Normal mode even doesn't even have it in context menu). Properties in sidebar also don't affect multiple selected pages. The changes only appear on the first (active) of all selected pages.

And Master view also apparently doesn't provide a command to e.g. "apply this master to pages".

In short: a command to apply a master to all selected pages is needed, available from shortcut menu in Normal view's Pages pane.
Comment 1 Heiko Tietze 2020-01-09 10:57:49 UTC
The same is also true for Impress where every slide can have a different master, which is a feature not a bug. "Apply to all pages/slides" might be needed but it doesn't fit into (single) slide design or (individual) page layout.

How about a solution per macro?
Comment 2 Mike Kaganski 2020-01-09 12:34:06 UTC
(In reply to Heiko Tietze from comment #1)
> The same is also true for Impress where every slide can have a different
> master, which is a feature not a bug. "Apply to all pages/slides" might be
> needed but it doesn't fit into (single) slide design or (individual) page
> layout.

Impress and Draw might share much of the code - but they are not the same. So if something doesn't fit Impress, doesn't mean it should be excluded from Draw. And the UNO command might work uniformly, while not be present in the menus.

Additionally, narrowing down the problem to "all" when it was spelled "all (selected)", where "selected" fits fine to Impress, is cheating ;-D

> How about a solution per macro?

Why not? Macros use UNO; effectively any macro is a sketch for a following implementation in C++.
Comment 3 Regina Henschel 2020-01-09 13:08:04 UTC
It might be a problem with the page pane. "Duplicate" does not work on selected pages too.
In Impress you can e.g. select three slides and then use "Duplicate" and you get three new slides. In Draw doing the same you get only one new slide.
So perhaps a bug with the page pane.
Comment 4 Heiko Tietze 2020-01-10 08:33:52 UTC
(In reply to Mike Kaganski from comment #2)
> > How about a solution per macro?
> 
> Why not? Macros use UNO; effectively any macro is a sketch for a following
> implementation in C++.

I would close the request as WFM in that case. Or change component to extensions.
Comment 5 Mike Kaganski 2020-01-10 08:35:16 UTC
(In reply to Heiko Tietze from comment #4)
> I would close the request as WFM in that case. Or change component to
> extensions.

Ah no, I misunderstood you in that case: this is the issue that must be fixed, it's just the method of fixing that may be different...