SHA256
1
0
forked from pool/xournalpp
xournalpp/xournalpp-fix-horizontal-space.patch
Atri Bhattacharya a47db976ac Accepting request 677352 from home:badshah400:branches:X11:Utilities
- Update to version 1.0.8
- Add xournalpp-fix-horizontal-space.patch: fix adding horizontal space to document view from preferences; patch taken from upstream commit (gh#xournalpp/xournalpp#906).
- New upstream build dependencies: pkgconfig(portaudiocpp),  pkgconfig(sndfile).

OBS-URL: https://build.opensuse.org/request/show/677352
OBS-URL: https://build.opensuse.org/package/show/X11:Utilities/xournalpp?expand=0&rev=7
2019-02-23 13:23:22 +00:00

118 lines
2.9 KiB
Diff

From cdcf02d1a4703d7c146b5479a751ae18180abac6 Mon Sep 17 00:00:00 2001
From: Andreas Butti <andreas.butti@gmail.com>
Date: Mon, 18 Feb 2019 18:25:25 +0100
Subject: [PATCH] fixes #906
---
src/gui/Layout.cpp | 59 ++++++++++++++++++++++++++++++----------
src/gui/LayoutMapper.cpp | 5 ----
2 files changed, 44 insertions(+), 20 deletions(-)
diff --git a/src/gui/Layout.cpp b/src/gui/Layout.cpp
index d8b15535..c6a6d84a 100644
--- a/src/gui/Layout.cpp
+++ b/src/gui/Layout.cpp
@@ -9,6 +9,27 @@
#include "gui/LayoutMapper.h"
+/**
+ * Padding outside the pages, including shadow
+ */
+const int XOURNAL_PADDING = 10;
+
+/**
+ * Padding outside the pages, if additional padding is set
+ */
+const int XOURNAL_PADDING_FREE_SPACE = 150;
+
+/**
+ * Allowance for shadow between page pairs in paired page mode
+ */
+const int XOURNAL_ROOM_FOR_SHADOW = 3;
+
+/**
+ * Padding between the pages
+ */
+const int XOURNAL_PADDING_BETWEEN = 15;
+
+
Layout::Layout(XournalView* view, ScrollHandling* scrollHandling)
: view(view),
scrollHandling(scrollHandling),
@@ -174,21 +195,6 @@ double Layout::getLayoutWidth()
return layoutWidth;
}
-/**
- * Padding outside the pages, including shadow
- */
-const int XOURNAL_PADDING = 10;
-
-/**
- * Allowance for shadow between page pairs in paired page mode
- */
-const int XOURNAL_ROOM_FOR_SHADOW = 3;
-
-/**
- * Padding between the pages
- */
-const int XOURNAL_PADDING_BETWEEN = 15;
-
void Layout::layoutPages()
{
XOJ_CHECK_TYPE(Layout);
@@ -238,6 +244,19 @@ void Layout::layoutPages()
int x = XOURNAL_PADDING;
int y = XOURNAL_PADDING;
+ bool verticalSpace = settings->getAddVerticalSpace();
+ bool horizontalSpace = settings->getAddHorizontalSpace();
+
+ if (verticalSpace)
+ {
+ x += XOURNAL_PADDING_FREE_SPACE;
+ }
+
+ if (horizontalSpace)
+ {
+ y += XOURNAL_PADDING_FREE_SPACE;
+ }
+
// Iterate over ALL possible rows and columns and let the mapper tell us what page, if any, is found there.
for (int r = 0; r < rows; r++)
{
@@ -308,6 +327,16 @@ void Layout::layoutPages()
totalHeight += sizeRow[r];
}
+ if (verticalSpace)
+ {
+ totalWidth += XOURNAL_PADDING_FREE_SPACE * 2;
+ }
+
+ if (horizontalSpace)
+ {
+ totalHeight += XOURNAL_PADDING_FREE_SPACE * 2;
+ }
+
this->setLayoutSize(totalWidth, totalHeight);
this->view->pagePosition->update(this->view->viewPages, len, totalHeight);
}
diff --git a/src/gui/LayoutMapper.cpp b/src/gui/LayoutMapper.cpp
index 8d97147d..4cf079a0 100644
--- a/src/gui/LayoutMapper.cpp
+++ b/src/gui/LayoutMapper.cpp
@@ -41,11 +41,6 @@ LayoutMapper::LayoutMapper(int numPages, Settings* settings)
int pages = numPages;
// get from user settings:
-
- // TODO: Use these again?
- bool verticalSpace = settings->getAddVerticalSpace();
- // TODO: Use these again?
- bool horizontalSpace = settings->getAddHorizontalSpace();
bool isPairedPages = settings->isShowPairedPages();
int numCols = settings->getViewColumns();
int numRows = settings->getViewRows();