0
0
Fork 0
haikuports/app-text/coolreader3/patches/coolreader3-3.1.2.52.patchset

228 lines
8.5 KiB
Plaintext

From a64c2561240cef51dea4c15a52b3f8a663ee0dce Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 2 Sep 2017 20:33:12 +1000
Subject: Fix build for Haiku
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0749577..c8299d3 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -3,6 +3,9 @@ cmake_minimum_required(VERSION 2.6)
#INCLUDE(CPack)
+set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+
if( ${CMAKE_SYSTEM} MATCHES "Darwin" )
message("MAC OSX build")
SET(MAC 1)
diff --git a/cr3qt/CMakeLists.txt b/cr3qt/CMakeLists.txt
index 4eda8f3..1a63cbd 100644
--- a/cr3qt/CMakeLists.txt
+++ b/cr3qt/CMakeLists.txt
@@ -48,6 +48,10 @@ if(MAC)
-DUSE_FONTCONFIG=0
${CARBON_CFLAGS}
)
+ELSEIF (HAIKU)
+ ADD_DEFINITIONS(-DCR3_DATA_DIR="${CMAKE_INSTALL_PREFIX}/data/"
+ -DUSE_FONTCONFIG=1
+ )
ELSEIF (UNIX)
ADD_DEFINITIONS(-DCR3_DATA_DIR="${CMAKE_INSTALL_PREFIX}/share/cr3/"
-DUSE_FONTCONFIG=1
@@ -171,7 +175,9 @@ IF(MAC)
# SET(FRAMEWORKS "-framework ApplicationServices -framework Carbon -framework AppKit")
#/Developer/Qt/lib/libQtCore.a /Developer/Qt/lib/libQtGui.a ${FRAMEWORKS}
SET (EXTRA_LIBS ${QT_LIBRARIES} ${STD_LIBS} )
-#${QT_LIBRARIES}
+#${QT_LIBRARIES}
+ELSEIF (HAIKU)
+ SET (EXTRA_LIBS ${QT_LIBRARIES} ${STD_LIBS} ${Qt5Core_LIBRARIES} ${Qt5Widgets_LIBRARIES} fontconfig intl)
ELSEIF (UNIX)
SET (EXTRA_LIBS ${QT_LIBRARIES} fontconfig ${STD_LIBS} )
ELSE()
@@ -200,6 +206,20 @@ INSTALL( FILES src/desktop/PkgInfo DESTINATION Contents )
#INSTALL( FILES src/desktop/cr3.png DESTINATION share/pixmaps )
#INSTALL( FILES src/desktop/cr3.xpm DESTINATION share/pixmaps )
+ELSEIF (HAIKU)
+
+INSTALL( TARGETS cr3 RUNTIME DESTINATION . )
+INSTALL( DIRECTORY data/ DESTINATION data
+ FILES_MATCHING PATTERN "*.css" PATTERN "skins" EXCLUDE PATTERN "docs" EXCLUDE)
+INSTALL( DIRECTORY data/hyph DESTINATION data
+ FILES_MATCHING PATTERN "*.pdb" )
+INSTALL( DIRECTORY data/hyph DESTINATION data
+ FILES_MATCHING PATTERN "*.pattern" )
+INSTALL( DIRECTORY data/textures DESTINATION data )
+INSTALL( DIRECTORY data/backgrounds DESTINATION data )
+INSTALL( FILES ${CR3_CHANGELOG} DESTINATION data )
+INSTALL( FILES ${QM_FILES} DESTINATION i18n )
+
ELSEIF (UNIX)
--
2.13.1
From e21d817cebdd528ceca0dfb077f80da0036df91d Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sat, 2 Sep 2017 20:49:13 +1000
Subject: =?UTF-8?q?Fix=20settings=20for=20Haiku=0A*=20fix=20paths=0A*=20fi?=
=?UTF-8?q?x=20default=20params=0A*=20add=20Noto=20Sans=20support?=
diff --git a/cr3qt/src/cr3widget.cpp b/cr3qt/src/cr3widget.cpp
index 2e1c784..a328172 100644
--- a/cr3qt/src/cr3widget.cpp
+++ b/cr3qt/src/cr3widget.cpp
@@ -347,7 +347,7 @@ void CR3View::updateDefProps()
_data->_props->setStringDef( PROP_WINDOW_SHOW_MENU, "1" );
_data->_props->setStringDef( PROP_WINDOW_SHOW_SCROLLBAR, "1" );
_data->_props->setStringDef( PROP_WINDOW_TOOLBAR_SIZE, "1" );
- _data->_props->setStringDef( PROP_WINDOW_SHOW_STATUSBAR, "0" );
+ _data->_props->setStringDef( PROP_WINDOW_SHOW_STATUSBAR, "1" );
_data->_props->setStringDef( PROP_APP_START_ACTION, "0" );
diff --git a/cr3qt/src/main.cpp b/cr3qt/src/main.cpp
index ed56449..008db81 100644
--- a/cr3qt/src/main.cpp
+++ b/cr3qt/src/main.cpp
@@ -123,7 +123,11 @@ int main(int argc, char *argv[])
lString16 home = Utf8ToUnicode(lString8(( getenv("HOME") ) ));
lString16 homecr3 = home;
LVAppendPathDelimiter(homecr3);
+#ifdef __HAIKU__
+ homecr3 << "config/settings/cr3";
+#else
homecr3 << ".cr3";
+#endif
LVAppendPathDelimiter(homecr3);
//~/.cr3/
lString16 homefonts = homecr3;
@@ -166,7 +170,7 @@ int main(int argc, char *argv[])
QString exeDir = QDir::toNativeSeparators(qApp->applicationDirPath() + "/Contents/Resources/"); //QDir::separator();
QString translations = exeDir + "i18n";
#else
-#if defined(_WIN32)
+#if defined(_WIN32) || defined(__HAIKU__)
QString exeDir = QDir::toNativeSeparators(qApp->applicationDirPath() + "/"); //QDir::separator();
QString translations = exeDir + "i18n";
#else
diff --git a/cr3qt/src/mainwindow.cpp b/cr3qt/src/mainwindow.cpp
index 7899171..f7a7c85 100644
--- a/cr3qt/src/mainwindow.cpp
+++ b/cr3qt/src/mainwindow.cpp
@@ -74,6 +74,10 @@ MainWindow::MainWindow(QWidget *parent)
addAction(ui->actionNextSentence);
addAction(ui->actionPrevSentence);
+#ifdef __HAIKU__
+ QString homeDir = QDir::toNativeSeparators(QDir::homePath() + "/config/settings/cr3/");
+ QString exeDir = QString(CR3_DATA_DIR);
+#else
#ifdef _LINUX
QString homeDir = QDir::toNativeSeparators(QDir::homePath() + "/.cr3/");
#else
@@ -84,6 +88,8 @@ MainWindow::MainWindow(QWidget *parent)
#else
QString exeDir = QDir::toNativeSeparators(qApp->applicationDirPath() + "/"); //QDir::separator();
#endif
+#endif
+#ifndef __HAIKU__
QString cacheDir = homeDir + "cache";
QString bookmarksDir = homeDir + "bookmarks";
QString histFile = exeDir + "cr3hist.bmk";
@@ -92,6 +98,16 @@ MainWindow::MainWindow(QWidget *parent)
QString iniFile = homeDir + "cr3.ini";
QString cssFile = homeDir + "fb2.css";
QString cssFile2 = exeDir + "fb2.css";
+#else
+ QString cacheDir = homeDir + "cache";
+ QString bookmarksDir = homeDir + "bookmarks";
+ QString histFile = homeDir + "cr3hist.bmk";
+ QString histFile2 = histFile;
+ QString iniFile = homeDir + "cr3.ini";
+ QString iniFile2 = iniFile;
+ QString cssFile = exeDir + "fb2.css";
+ QString cssFile2 = homeDir + "fb2.css";
+#endif
//QString translations = exeDir + "i18n";
//CRLog::info("Translations directory: %s", LCSTR(qt2cr(translations)) );
QString hyphDir = exeDir + "hyph" + QDir::separator();
diff --git a/cr3qt/src/settings.cpp b/cr3qt/src/settings.cpp
index 11b53bc..e2ecf48 100644
--- a/cr3qt/src/settings.cpp
+++ b/cr3qt/src/settings.cpp
@@ -84,6 +84,10 @@ SettingsDlg::SettingsDlg(QWidget *parent, CR3View * docView ) :
m_oldHyph = cr2qt(HyphMan::getSelectedDictionary()->getId());
+#ifdef __HAIKU__
+ QString homeDir = QDir::toNativeSeparators(QDir::homePath() + "/config/settings/cr3/");
+ QString exeDir = QString(CR3_DATA_DIR);
+#else
#ifdef _LINUX
QString homeDir = QDir::toNativeSeparators(QDir::homePath() + "/.cr3/");
#else
@@ -96,6 +100,7 @@ SettingsDlg::SettingsDlg(QWidget *parent, CR3View * docView ) :
#else
QString exeDir = QDir::toNativeSeparators(qApp->applicationDirPath() + "/"); //QDir::separator();
#endif
+#endif
lString16Collection baseDirs;
baseDirs.add(qt2cr(homeDir));
@@ -176,7 +181,7 @@ SettingsDlg::SettingsDlg(QWidget *parent, CR3View * docView ) :
m_ui->cbBookmarkHighlightMode->setCurrentIndex(highlight);
- int n = m_props->getIntDef( PROP_PAGE_MARGIN_LEFT, 8 );
+ int n = m_props->getIntDef( PROP_PAGE_MARGIN_LEFT, 30 );
int mi = 0;
for (int i=0; i < (int)MAX_MARGIN_INDEX; i++) {
if (n <= def_margins[i]) {
@@ -212,6 +217,9 @@ SettingsDlg::SettingsDlg(QWidget *parent, CR3View * docView ) :
const char * defFontFace = "DejaVu Sans";
static const char * goodFonts[] = {
+#ifdef __HAIKU__
+ "Noto Sans",
+#endif
"DejaVu Sans",
"FreeSans",
"Liberation Sans",
diff --git a/crengine/src/lvdocview.cpp b/crengine/src/lvdocview.cpp
index c84883a..c480b2c 100644
--- a/crengine/src/lvdocview.cpp
+++ b/crengine/src/lvdocview.cpp
@@ -87,9 +87,9 @@ const char
"body[name=\"notes\"] section[id] empty-line { display: inline }\n"
"code, pre { display: block; white-space: pre; font-family: \"Courier New\", monospace }\n";
-static const char * DEFAULT_FONT_NAME = "Arial, DejaVu Sans"; //Times New Roman";
+static const char * DEFAULT_FONT_NAME = "Arial, Noto Sans, DejaVu Sans"; //Times New Roman";
static const char * DEFAULT_STATUS_FONT_NAME =
- "Arial Narrow, Arial, DejaVu Sans"; //Times New Roman";
+ "Arial Narrow, Arial, Noto Sans, DejaVu Sans"; //Times New Roman";
static css_font_family_t DEFAULT_FONT_FAMILY = css_ff_sans_serif;
// css_ff_serif,
// css_ff_sans_serif,
@@ -5625,7 +5625,7 @@ void LVDocView::propsUpdateDefaults(CRPropRef props) {
props->setIntDef(PROP_DISPLAY_TURBO_UPDATE_MODE, 0);
lString8 defFontFace;
- static const char * goodFonts[] = { "DejaVu Sans", "FreeSans",
+ static const char * goodFonts[] = { "Noto Sans", "DejaVu Sans", "FreeSans",
"Liberation Sans", "Arial", "Verdana", NULL };
for (int i = 0; goodFonts[i]; i++) {
if (list.contains(lString16(goodFonts[i]))) {
--
2.13.1