This commit is contained in:
Felix Kauselmann 2015-02-24 19:04:21 +01:00
parent 445f725ee2
commit 4b078a9f15
5 changed files with 30 additions and 9 deletions

View File

@ -578,6 +578,7 @@ void MainWindowViewer::createToolBars()
viewer->addAction(leftRotationAction);
viewer->addAction(rightRotationAction);
viewer->addAction(doublePageAction);
viewer->addAction(doubleMangaPageAction);
YACReader::addSperator(viewer);
viewer->addAction(showMagnifyingGlassAction);

View File

@ -849,7 +849,7 @@ void Render::nextPage()
update();
emit pageChanged(currentIndex);
}
else
else if (hasLoadedComic() && (currentIndex == numPages()-1))
{
emit isLast();
}
@ -873,7 +873,7 @@ void Render::nextDoublePage()
update();
emit pageChanged(currentIndex);
}
else
else if (hasLoadedComic() && (currentIndex >= numPages()-2))
{
emit isLast();
}
@ -894,7 +894,7 @@ void Render::previousPage()
update();
emit pageChanged(currentIndex);
}
else
else if (hasLoadedComic() && (currentIndex == 0))
{
emit isCover();
}

View File

@ -95,7 +95,7 @@ void logSystemAndConfig()
#ifdef Q_OS_WIN
if(QLibrary::isLibrary(QApplication::applicationDirPath()+"/utils/7z.dll"))
#elif defined Q_OS_UNIX && !defined Q_OS_MAC
if(QLibrary::isLibrary(QString(LIBDIR)+"/p7zip/7z.so"))
if(QLibrary::isLibrary(QString(LIBDIR)+"/yacreader/7z.so") | QLibrary::isLibrary(QString(LIBDIR)+"/p7zip/7z.so"))
#else
if(QLibrary::isLibrary(QApplication::applicationDirPath()+"/utils/7z.so"))
#endif

View File

@ -730,11 +730,13 @@ void PDFComic::process()
_index = _firstPage;
emit(openAt(_index));
for(int i=_index;i<nPages;i++)
//buffer index to avoid race conditions
int buffered_index = _index;
for(int i=buffered_index;i<nPages;i++)
renderPage(i);
for(int i=0;i<_index;i++)
for(int i=0;i<buffered_index;i++)
renderPage(i);
delete pdfComic;
emit imagesLoaded();
moveToThread(QApplication::instance()->thread());

View File

@ -2,6 +2,7 @@
#include "extract_delegate.h"
#include <QLibrary>
#include <QFileInfo>
#include <QDebug>
#include <QApplication>
@ -201,7 +202,16 @@ bool CompressedArchive::loadFunctions()
#if defined Q_OS_MAC
rarLib = new QLibrary(QApplication::applicationDirPath()+"/utils/Codecs/Rar29");
#else
rarLib = new QLibrary(QString(LIBDIR)+"/p7zip/Codecs/Rar29.so");
//check if a yacreader specific version of p7zip exists on the system
QFileInfo rarCodec(QString(LIBDIR)+"/yacreader/Codecs/Rar29.so");
if (rarCodec.exists())
{
rarLib = new QLibrary(rarCodec.absoluteFilePath());
}
else
{
rarLib = new QLibrary(QString(LIBDIR)+"/p7zip/Codecs/Rar29.so");
}
#endif
if(!rarLib->load())
{
@ -211,7 +221,15 @@ bool CompressedArchive::loadFunctions()
}
#endif
#if defined Q_OS_UNIX && !defined Q_OS_MAC
sevenzLib = new QLibrary(QString(LIBDIR)+"/p7zip/7z.so");
QFileInfo sevenzlibrary(QString(LIBDIR)+"/yacreader/7z.so");
if (sevenzlibrary.exists())
{
sevenzLib = new QLibrary(sevenzlibrary.absoluteFilePath());
}
else
{
sevenzLib = new QLibrary(QString(LIBDIR)+"/p7zip/7z.so");
}
#else
sevenzLib = new QLibrary(QApplication::applicationDirPath()+"/utils/7z");
#endif