kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #29660
Re: [PATCH] properly read default PDF viewer and use (under Linux Debian)
Hi Wayne,
I guess this is what you want
cheers
Fabrizio
pdf-vieweer-inside-main-k.patch
>From 544416795fed2492b3ffa96b4b2c92285ce5071e Mon Sep 17 00:00:00 2001
From: Fabrizio Tappero <fabrizio.tappero@xxxxxxxxx>
Date: Wed, 7 Jun 2017 17:35:37 +0200
Subject: [PATCH] read and use default linux pdf viewer inside main kicad
windows when pdf is double-clicked
---
common/gestfich.cpp | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/common/gestfich.cpp b/common/gestfich.cpp
index b68ec68..b54003f 100644
--- a/common/gestfich.cpp
+++ b/common/gestfich.cpp
@@ -352,7 +352,10 @@ bool OpenPDF( const wxString& file )
if( !Pgm().UseSystemPdfBrowser() ) // Run the preferred PDF Browser
{
AddDelimiterString( filename );
- command = Pgm().GetPdfBrowserName() + wxT( " " ) + filename;
+ if (wxLaunchDefaultApplication( filename ))
+ {
+ return true;
+ }
}
else
{
--
2.7.4
On Wed, Jun 7, 2017 at 5:11 PM, Wayne Stambaugh <stambaughw@xxxxxxxxx>
wrote:
> Oops! I didn't see this post before I sent my last post. Please ignore
> it. There is a slight problem with your patch. You should check the
> return value of wxLaunchDefaultApplication and take the appropriate
> action. In your patch, if wxLaunchDefaultApplication cannot launch the
> pdf viewer, it fails silently. A better solution would be:
>
> if( wxLaunchDefaultApplication( file ) )
> return true;
>
> This would leave the command string empty and display the error message
> if wxLaunchDefaultApplication fails.
>
> Please make this change and I will commit your patch.
>
> Thanks,
>
> Wayne
>
> On 6/7/2017 10:50 AM, Fabrizio Tappero wrote:
> > Hi guys
> >
> > the following patch fix the problem of detecting the default PDF viewer
> > and use it to open PDF files (under Linux Debian) in the kicad main
> > window when you double click on a PDF doc.
> >
> > It would be great to test it under windows and OSX.
> >
> > cheers
> > Fabrizio
> >
> >
> >
> >
> >
> > From b3aa02b874476ae9f25311b4525e03b635091ed1 Mon Sep 17 00:00:00 2001
> > From: Fabrizio Tappero <fabrizio.tappero@xxxxxxxxx
> > <mailto:fabrizio.tappero@xxxxxxxxx>>
> > Date: Wed, 7 Jun 2017 16:43:16 +0200
> > Subject: [PATCH] default pdf reader is now properly detected unider Linux
> >
> > ---
> > common/gestfich.cpp | 11 ++++-------
> > 1 file changed, 4 insertions(+), 7 deletions(-)
> >
> > diff --git a/common/gestfich.cpp b/common/gestfich.cpp
> > index 3a09576..b68ec68 100644
> > --- a/common/gestfich.cpp
> > +++ b/common/gestfich.cpp
> > @@ -344,7 +344,7 @@ wxString KicadDatasPath()
> >
> > bool OpenPDF( const wxString& file )
> > {
> > - wxString command;
> > + wxString command = "";
> > wxString filename = file;
> >
> > Pgm().ReadPdfBrowserInfos();
> > @@ -356,12 +356,9 @@ bool OpenPDF( const wxString& file )
> > }
> > else
> > {
> > - wxFileType* filetype =
> > wxTheMimeTypesManager->GetFileTypeFromExtension( wxT( "pdf" ) );
> > -
> > - if( filetype )
> > - command = filetype->GetOpenCommand( filename );
> > -
> > - delete filetype;
> > + AddDelimiterString( filename );
> > + wxLaunchDefaultApplication( filename );
> > + return true;
> > }
> >
> > if( !command.IsEmpty() )
> > --
> > 2.7.4
> >
> >
> >
> > _______________________________________________
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help : https://help.launchpad.net/ListHelp
> >
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
Follow ups
References