Bug 51014 - kghostview (as konqueror part) opening next document breaks paper orientation
Summary: kghostview (as konqueror part) opening next document breaks paper orientation
Alias: None
Product: kghostview
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Wilco Greven
Depends on:
Reported: 2002-11-21 20:11 UTC by frank.dekervel
Modified: 2003-04-16 00:58 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:

Proposed fix against CVS HEAD (1.85 KB, patch)
2002-12-04 20:32 UTC, Luís Pedro Coelho

Note You need to log in before you can comment on or make changes to this bug.
Description frank.dekervel 2002-11-21 20:11:52 UTC
Version:           0.13.2 (using KDE 3.1.0 (KDE 3.1 RC4))
Installed from:    compiled sources
Compiler:          gcc version 2.95.4 20011002 (Debian prerelease)
OS:          Linux (i686) release 2.4.19

when i change the paper orientation for a .ps document in konqueror, and i open another ps document in the same konqueror, the menu 'paper orientation' is inconsistent with the real paper orientation.
i did this:
	-> opened landscape ps, was rendered upside down, so i chose seascape
	-> open next ps document. its rendered landscape again (upside down) but there is still
	     a 'v' next to 'seascape' in the view->paper orientation menu.
	-> i have to select something else and then seascape again to get it right
Comment 1 Luís Pedro Coelho 2002-12-04 20:30:35 UTC
The bug report is about kghostview used as a part, but it affects kghostview 
as an app as well. The attached patch seems to fixed it. 
It changes the behaviour slightly to be, IMHO, more correct. Before, none of 
the options were checked by default. Now, "Auto" (which is default behaviour) 
is checked until you select something else. So this reflects the state of the 
program better. 
Luis Pedro Coelho 
check out my game of hearts for the KDE at 
Comment 2 Luís Pedro Coelho 2002-12-04 20:32:58 UTC
Created attachment 573 [details]
Proposed fix against CVS HEAD
Comment 3 Luís Pedro Coelho 2003-04-05 14:31:57 UTC
Subject: KDE_3_1_BRANCH: kdegraphics/kghostview

CVS commit by luis_pedro: 

Apply my own patch from when I didn't have a CVS account.

This goes towards fixing bug 51014.
It works in BRANCH, but HEAD has been changed since my patch and needs porting.

CCMAIL: 51014@bugs.kde.org

  M +11 -1     kgv_view.cpp
  M +5 -0      kgv_view.h

--- kdegraphics/kghostview/kgv_view.h  #1.54:
@@ -135,4 +135,9 @@ protected:
     void writeSettings();
+    /**
+     * Resets the menu settings, i.e. sets View->Orientation to "Auto", etc.
+     */
+    void resetMenu();
     KGVBrowserExtension* _extension;

--- kdegraphics/kghostview/kgv_view.cpp  #
@@ -474,4 +474,5 @@ bool KGVPart::openURL( const KURL& url )
              SLOT( slotMimetypeError() ) );
+    resetMenu();
     return true;
@@ -601,5 +602,8 @@ void KGVPart::slotJobFinished( KIO::Job*
         emit canceled( job->errorString() );
+    {
         _docManager->openFile( m_file, _mimetype );
+        resetMenu();
+    }
@@ -612,4 +616,5 @@ void KGVPart::slotFileDirty( const QStri
         _currentPage = _docManager->currentPage();
         _docManager->openFile( m_file, _mimetype );
+        resetMenu();
@@ -687,4 +692,9 @@ void KGVPart::slotZoomOut()
+void KGVPart::resetMenu()
+    _selectOrientation->setCurrentItem( 0 ); // Auto
+    _selectMedia->setCurrentItem( 0 ); // Auto
 KGVBrowserExtension::KGVBrowserExtension( KGVPart *parent ) :

Comment 4 Luís Pedro Coelho 2003-04-16 00:58:42 UTC
Subject: kdegraphics/kghostview

CVS commit by luis_pedro: 

Forward porting of fix to Bug 51014: opening next document breaks paper orientation.

We need to restore the display options to their default settings on opening a new document.
Note that we shouldn't do that if we are reloading a document which changed.

CCMAIL: 51014-done@bugs.kde.org

  M +1 -0      kgv_view.cpp   1.129

--- kdegraphics/kghostview/kgv_view.cpp  #1.128:1.129
@@ -554,4 +554,5 @@ void KGVPart::slotOpenFileCompleted()
+        setOptions( DisplayOptions() );
         _docManager->goToPage( _currentPage );
         stateChanged( "documentState" );