View Issue Details

IDProjectCategoryView StatusLast Update
0014606ScribusUsabilitypublic2025-09-11 12:05
Reporterchristoph_s Assigned Tocbradney  
PrioritynormalSeverityminorReproducibilityalways
Status assignedResolutionopen 
Platformx86 64OSLinuxOS VersionopenSUSE 42.1
Product Version1.5.3.svn 
Summary0014606: [PATCH] Bleed should override page margins when using the Shift shortcut for creating frames
DescriptionCurrently, Scribus doesn't permit the creation of frames that extend to the bleed extension. This is frustrating, because at least shapes and image frames need to be expanded to to the extra bleed space quickly.
Steps To ReproduceCreate a doc, set all margins to zero, add 3 mm bleed. Add a frame while holding the Shift key.

Result: The frame is still restricted to the page boundaries and ignores the additional bleed area.
Additional InformationIf there is a bleed value higher than 0 and the margin values are 0, Shift-click should use the bleed numbers.
TagsNo tags attached.
PatchYes

Relationships

duplicate of 0013211 closedale Snap to bleeds 

Activities

jghali

2017-02-06 19:14

administrator   ~0043449

The shift shortcut is not specifically related to margins. Its effects is to create frames using the boundaries of the closest enclosing guides/margins. So it seems there is a basic misconception on how this functionality works...

christoph_s

2017-02-07 08:27

developer   ~0043453

No, it isn't. It's a usability issue. I specifically noted that there are no guides or margins involved or set to zero. Then, and only then, image frames and shapes should use the bleed values.

It also contradicts the Insert > Frames ... feature, which does take into consideration bleeds.

jghali

2017-02-07 09:26

administrator   ~0043456

>> No, it isn't. It's a usability issue. I specifically noted that there are no guides or margins involved or set to zero. Then, and only then, image frames and shapes should use the bleed values.

You forgot in the meantime that page borders also act as guides. So given how the shift shortcut works, even if margins are set to 0, this isn't bleeds which should be taken into account.

>> It also contradicts the Insert > Frames ... feature, which does take into consideration bleeds.

No it doesn't, because the Insert > Frames features doesn't take bleeds into account by default.

ale

2019-08-18 16:46

manager   ~0046479

this cannot work. 0 is a valid value for the margins and margins are a a valid enclosing boundary.

i love the shift click, but i don't see a good technical way to use the shift click to expand to the bleeds.
not even after having applied my patch that enables snapping to the bleeds.
neverless, with that patch it will be easier to create a shape or image that has the size of the bleeds.

ale

2025-09-09 19:58

manager   ~0053016

Proposal: if one shift-clicks outside of the page margins, then the frame should fill the bleeds (which is the page, when the bleeds are zero).

Note to self: the function to modify is ScribusDoc::itemAddArea()

ale

2025-09-11 12:05

manager   ~0053018

filling the bleeds when clicking outside of the margins
fill-bleeds.diff (2,203 bytes)   
From dcb6657e06a8316e51db874467940d5dafb95f97 Mon Sep 17 00:00:00 2001
From: ale rimoldi <ale@graphicslab.org>
Date: Thu, 11 Sep 2025 14:02:24 +0200
Subject: shift-click outside of the margins fills the bleeds


diff --git a/scribus/scribusdoc.cpp b/scribus/scribusdoc.cpp
index 682df23d4..88c91c5d0 100644
--- a/scribus/scribusdoc.cpp
+++ b/scribus/scribusdoc.cpp
@@ -5345,6 +5345,16 @@ int ScribusDoc::itemAddArea(const PageItem::ItemType itemType, const PageItem::I
 {
 	double xo = m_currentPage->xOffset();
 	double yo = m_currentPage->yOffset();
+	// if the click is outside of the margins, fill the bleeds
+	if (x < xo + m_currentPage->margins().left() ||
+	    x > xo + m_currentPage->width() - m_currentPage->margins().right() ||
+	    y < yo + m_currentPage->margins().top() ||
+	    y > yo + m_currentPage->height() - m_currentPage->margins().bottom())
+	{
+		QRectF bleeds = m_currentPage->bleedRect();
+		return itemAdd(itemType, frameType, bleeds.x(), bleeds.y(),  bleeds.width(),  bleeds.height(), w, fill, outline, itemKind);
+	}
+	// fill to the closest guide or margin
 	QPair<double, double> tl = m_currentPage->guides.topLeft(x - xo, y - yo);
 	QPair<double, double> tr = m_currentPage->guides.topRight(x - xo, y - yo);
 	QPair<double, double> bl = m_currentPage->guides.bottomLeft(x - xo, y - yo);
diff --git a/scribus/scribusdoc.h b/scribus/scribusdoc.h
index 2c0f8e5d1..3510c9436 100644
--- a/scribus/scribusdoc.h
+++ b/scribus/scribusdoc.h
@@ -858,7 +858,7 @@ public:
 	*/
 	int itemAdd(const PageItem::ItemType itemType, const PageItem::ItemFrameType frameType, double x, double y, double b, double h, double w, const QString& fill, const QString& outline, PageItem::ItemKind itemKind = PageItem::StandardItem);
 
-	/** Add an item to the page based on the x/y position. Item will be fitted to the closest guides/margins */
+	/** Add an item to the page based on the x/y position. Item will be fitted the closest guides/margins or the bleeds */
 	int itemAddArea(const PageItem::ItemType itemType, const PageItem::ItemFrameType frameType, double x, double y, double w, const QString& fill, const QString& outline, PageItem::ItemKind itemKind = PageItem::StandardItem);
 	
 	/**
fill-bleeds.diff (2,203 bytes)   

Issue History

Date Modified Username Field Change
2017-02-06 08:37 christoph_s New Issue
2017-02-06 08:37 christoph_s Status new => assigned
2017-02-06 08:37 christoph_s Assigned To => cbradney
2017-02-06 19:14 jghali Note Added: 0043449
2017-02-07 08:27 christoph_s Note Added: 0043453
2017-02-07 09:23 ale Relationship added duplicate of 0013211
2017-02-07 09:26 jghali Note Added: 0043456
2019-08-18 16:46 ale Note Added: 0046479
2025-09-09 19:58 ale Note Added: 0053016
2025-09-11 12:05 ale Note Added: 0053018
2025-09-11 12:05 ale File Added: fill-bleeds.diff
2025-09-11 12:05 ale Summary Bleed should override page margins when using the Shift shortcut for creating frames => [PATCH] Bleed should override page margins when using the Shift shortcut for creating frames
2025-09-11 12:05 ale Patch No => Yes