| Summary: | auto zoom settings (middle mouse button) are cleared when image orientation changes | ||
|---|---|---|---|
| Product: | [Applications] gwenview | Reporter: | Janet <bugzilla> |
| Component: | general | Assignee: | Gwenview Bugs <gwenview-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | madman |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
|
Description
Janet
2006-09-24 15:10:09 UTC
Well - does not exactly seem to be the orientation but a change in image proportions as far as I can see. E.g. when a picture in 4:3 follows a picture in 2:3 format. I can confirm that something strange is happening. I will open a directory of images, and turn on 'Fit to Window' with the middle-mouse button, and scroll through some images. When I hit the middle-mouse button to turn off 'Fit to Window', I often am left with an image that is 102% zoomed, or 97%, or something like that, instead of the 100% I expected. I doesn't happen all the time. Perhaps there is a connection to changing aspect ratios, but I haven't tested that. SVN commit 602991 by gateau:
Do not store auto-zoom values in mZoomBeforeAuto
BUG: 134590
M +10 -1 imageview.cpp
--- trunk/extragear/graphics/gwenview/gvcore/imageview.cpp #602990:602991
@@ -450,6 +450,10 @@
d->mGamma = 100;
d->mBrightness = 0;
d->mContrast = 100;
+
+ if (!d->mLockZoom->isChecked()) {
+ d->mZoomBeforeAuto = 1.;
+ }
}
//------------------------------------------------------------------------
@@ -515,6 +519,7 @@
void ImageView::updateZoom(ZoomMode zoomMode, double value, int centerX, int centerY) {
+ ZoomMode oldZoomMode = d->mZoomMode;
double oldZoom=d->mZoom;
d->mZoomMode=zoomMode;
KAction* checkedZoomAction=0;
@@ -525,7 +530,11 @@
Q_ASSERT(value!=0);
d->mZoom=value;
} else {
- d->mZoomBeforeAuto=d->mZoom;
+ if (oldZoomMode == ZOOM_FREE) {
+ // Only store zoom before auto if we were in ZOOM_FREE mode, otherwise
+ // we will store the computed auto zoom value (Bug 134590)
+ d->mZoomBeforeAuto = d->mZoom;
+ }
d->mXCenterBeforeAuto=width()/2 + contentsX() + d->mXOffset;
d->mYCenterBeforeAuto=height()/2 + contentsY() + d->mYOffset;
*** Bug 130145 has been marked as a duplicate of this bug. *** Excuse me, I just wanted to thank you, since this appeared in 1.4 too - at least for me. |