diff --git a/TODO b/TODO
index e70d112c9..c60c00631 100644
--- a/TODO
+++ b/TODO
@@ -122,6 +122,7 @@ Done (newest features come first):
-> ADD: annotations: PDF1.6 reader (PDF's annotations -> our data structures)
-> ADD: Internal data structures for annotations handling.
-> FIX: rmb when no doc displayed to restore menu
+-> ADD: Save zoom setting on exit
-> ADD: Put fonts used by the document on the properties dialog
-> ADD: partial implementation of XYZ links
-> ADD: google-like search on thumbnails
diff --git a/conf/kpdf.kcfg b/conf/kpdf.kcfg
index 36edb3671..d4776f3f9 100644
--- a/conf/kpdf.kcfg
+++ b/conf/kpdf.kcfg
@@ -143,6 +143,26 @@
+
+
+ false
+
+
+ true
+
+
+ true
+
+
+ false
+
+
+ true
+
+
+ true
+
+
false
@@ -161,25 +181,14 @@
true
-
-
-
- false
-
-
- true
-
-
- true
-
-
- false
+
+ 2
+ 2
-
- true
-
-
- true
+
+ 1.0
+ 0.1
+ 4.0
diff --git a/ui/pageview.cpp b/ui/pageview.cpp
index 8f0f80699..1826311a4 100644
--- a/ui/pageview.cpp
+++ b/ui/pageview.cpp
@@ -132,8 +132,8 @@ PageView::PageView( QWidget *parent, KPDFDocument *document )
// create and initialize private storage structure
d = new PageViewPrivate();
d->document = document;
- d->zoomMode = ZoomFitPage;
- d->zoomFactor = 1.0;
+ d->zoomMode = (PageView::ZoomMode) Settings::zoomMode();
+ d->zoomFactor = Settings::zoomFactor();
d->mouseMode = MouseNormal;
d->mouseMidZooming = false;
d->mouseSelecting = false;
@@ -1528,6 +1528,9 @@ void PageView::updateZoom( ZoomMode newZoomMode )
d->aZoomFitWidth->setChecked( checkedZoomAction == d->aZoomFitWidth );
d->aZoomFitPage->setChecked( checkedZoomAction == d->aZoomFitPage );
d->aZoomFitText->setChecked( checkedZoomAction == d->aZoomFitText );
+ // store zoom settings
+ Settings::setZoomMode( newZoomMode );
+ Settings::setZoomFactor( newFactor );
}
}
diff --git a/ui/pageview.h b/ui/pageview.h
index 0f5ed6c65..3ffbb8444 100644
--- a/ui/pageview.h
+++ b/ui/pageview.h
@@ -44,7 +44,7 @@ class PageView : public QScrollView, public DocumentObserver
~PageView();
// Zoom mode ( last 4 are internally used only! )
- enum ZoomMode { ZoomFixed, ZoomFitWidth, ZoomFitPage, ZoomFitText,
+ enum ZoomMode { ZoomFixed = 0, ZoomFitWidth = 1, ZoomFitPage = 2, ZoomFitText,
ZoomIn, ZoomOut, ZoomRefreshCurrent };
enum MouseMode { MouseNormal, MouseZoom, MouseSelect };