Commit graph

201 commits

Author SHA1 Message Date
Igor Kushnir aa33b8bebc Disable assert macro checks in Release builds 2022-06-01 18:40:35 +03:00
Igor Kushnir 8acec2e062 Reduce build log verbosity
The default qmake build output is overly verbose. Adding the "silent"
switch to CONFIG makes it much more concise, comparable to default CMake
output. This way warnings and errors are much easier to find.

Adding CONFIG-=silent to the qmake command line doesn't restore the
verbosity because it is applied before the "CONFIG += silent" line in
goldendict.pro. Add a new CONFIG switch "verbose_build_output" to allow
increasing build log verbosity without editing goldendict.pro.
2022-06-01 18:00:45 +03:00
Abs62 b2e673961d Add hi_IN.ts to project file 2021-03-09 17:53:48 +03:00
proletarius101 38d7193f49 Rename id in metadata and desktop entry to org.goldendict.GoldenDict
https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-id-generic

https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#file-naming
2021-02-27 20:04:28 +08:00
Carmina16 78cdbcae50
Add Interlingue translation
Setup the Interlingue translation
2020-07-19 16:53:21 +07:00
hrimfaxi 2155d492cb Use libswresample to convert 32-bit and float audio into s16
Since libao+pulseaudio cannot play 32-bit or flt/fltp/dbl/dblp audio,
the following audio formats are passed through libswresample
to convert into AV_SAMPLE_FMT_S16, which is accepted by libao:

* AV_SAMPLE_FMT_S32
* AV_SAMPLE_FMT_S32P
* AV_SAMPLE_FMT_FLT
* AV_SAMPLE_FMT_FLTP
* AV_SAMPLE_FMT_DBL
* AV_SAMPLE_FMT_DBLP

This fixes issue #949 and issue #1014. Now FFmpeg+libao internal player
can play with pulseaudio backend enabled in /etc/libao.conf .

Signed-off-by: hrimfaxi <outmatch@gmail.com>
2020-07-18 20:55:00 +08:00
Abs62 6e85b27337 Add Zstd compression support for ZIM format 2020-05-27 14:13:08 +03:00
Robin Townsend 7df235b118 add Lojban translations
Lojban only has an ISO 639-3 code, so we pretend that its ISO 639-2 code
is jb
2020-02-23 14:00:32 -05:00
Kevin Zheng d62b2d61ba Fix build on FreeBSD 2019-04-01 17:10:10 -07:00
Vitaly Zaitsev 7ef50ba50f
Added AppData manifest file for modern package managers.
Signed-off-by: Vitaly Zaitsev <vitaly@easycoding.org>
2019-03-16 13:47:15 +01:00
Abs62 2d648829fa Merge branch 'group-box-and-translate-line-fixes' of https://github.com/vedgy/goldendict into Temp 2019-02-03 19:44:32 +03:00
Abs62 68fc27b7d7 Win-specific: Add global hotkeys handling via low-level keyboard hook 2019-01-31 17:59:24 +03:00
Igor Kushnir c88774151c Remove unused form groupselectorwidget.ui
This form was added in the first git commit. However it was unused at
the time of that commit and has never been used since then.
2019-01-29 12:58:44 +02:00
Abs62 1640fb2ff4 Win-specific: Fix compilation with MS VC (issue #1088) 2018-12-04 23:05:00 +03:00
Abs62 5559b5fe48 Favorites: Fix blocking of illegal move operations for Qt4 (issue #1059) 2018-09-24 20:22:51 +03:00
Abs62 fd00e9d156 Fix gcc 7.3 compiler warnings (#issue 978) 2018-05-21 18:32:04 +03:00
Igor Kushnir 9aa3c44d4e Add QMediaPlayer internal player back end (Qt5 only)
* add config and GUI support for internal player back end switching;
* make FFmpeg player disabling option consistent with other similar
  qmake options by using CONFIG;
* add a new qmake option that disables Qt Multimedia player. This is
  useful for GNU/Linux distributions where Qt WebKit and Qt Multimedia
  packages depend on different GStreamer versions and don't work
  correctly when combined in one application.

The existing FFmpeg+libao internal player back end has a relatively
low-level implementation, which is difficult to understand and improve.
There are at least 3 open internal player issues:
  1) many GNU/Linux users have to edit their libao configuration file to
     make Goldendict's internal player work (issue #412);
  2) libao's pulseaudio plugin does not support 32-bit audio, which
     means that many MediaWiki pronunciations don't work with the most
     popular GNU/Linux audio driver (issue #949);
  3) Ffmpeg::DecoderContext uses deprecated FFmpeg APIs, which causes
     compiler warnings and means that this internal player back end
     may not compile with a future FFmpeg library version (issue #978).

The Qt Multimedia back end implementation uses the highest-level
Qt audio API and is very simple.
This new back end works flawlessly on my GNU/Linux machine.
I'm not making it the default back end because I don't know how well
it will work on other platforms with different configurations.
2018-03-30 17:10:33 +03:00
Igor Kushnir 278e05cbf3 Run a single external audio player process at a time
External and internal audio players work similarly now. Fixes #950.

* inherit a new ExternalAudioPlayer class from AudioPlayerInterface;
* use an existing ExternalViewer class to implement ExternalAudioPlayer;
* take (const char *, int) instead of std::vector<char> in
  ExternalViewer constructor to fit into AudioPlayerInterface;
* extend ExternalViewer API to let ExternalAudioPlayer stop superseded
  audio player processes;
* make AudioPlayerInterface::play() return an error message string to
  allow reporting immediate failures from derived classes;
* Document AudioPlayerInterface API;
* Document AudioPlayerFactory::player();
* use the common audio interface exclusively in ArticleView.
2018-03-24 21:34:06 +02:00
Igor Kushnir e5045860ef Make adding new audio player implementations easy
* add a new interface class AudioPlayerInterface;
* inherit a new proxy class Ffmpeg::AudioPlayer from it;
* partially switch ArlticleView to using the interface;
* expose MainWindow's AudioPlayerInterface instance to all ArticleView
  instances;
* add a new AudioPlayerFactory class responsible for creating instances
  of concrete classes derived from AudioPlayerInterface depending on
  relevant Config::Preferences values;
* increase minimum supported Qt version from 4.5 to 4.6 in README
  in order to use QScopedPointer introduced in Qt 4.6.
2018-03-24 21:31:48 +02:00
Abs62 c204f75e52 Qt5: Use QRegularExpression instead of QRegExp in many cases 2018-02-22 16:55:56 +03:00
Abs62 46a4509101 Mac-specific: Update hunspell library to version 1.6.1 2017-07-05 18:19:40 +03:00
Abs62 bef2bf86c6 Update code for libhunspell 1.5+ 2017-07-05 17:58:43 +03:00
sunwxg ad8008c37b Add scan popup flag
After select a word, show a flag window, click the flag to show
popup window.
2017-06-05 21:15:38 +08:00
Abs62 1e34de2dbc Add "Favorites" feature 2017-05-12 17:41:08 +03:00
Abs62 eb78238f25 Add support for split zip files 2017-04-24 17:42:01 +03:00
Abs62 eba7f5578f Add support for GLS (Babylon source) format 2017-03-07 16:45:09 +03:00
Abs62 6386d1d70e Merge branch 'locale-fi' of https://github.com/sikmir/goldendict into Temp
# Conflicts:
#	goldendict.pro
#	goldendict.vcxproj
#	goldendict.vcxproj.filters
2016-11-24 07:52:42 +03:00
Nikolay Korotkiy bbcf5a16d2 Register Esperanto translation 2016-11-24 04:46:50 +03:00
Nikolay Korotkiy 340548544a Register Finnish translation 2016-11-24 04:39:46 +03:00
Abs62 526d9d1bf8 Mac-specific: Copy 64-bit OpenCC data into GoldenDict bundle by default (issue #694) 2016-05-02 14:11:56 +03:00
Abs62 b6622271b6 1. Bump version to 1.5.0-RC2
2. No more separate branch "qt4x5", all changes merged into "master" branch. Code may be compiled with both Qt 4.x and Qt 5.x versions.
2016-04-26 19:32:50 +03:00
Abs62 6f04427e8b Merge branch 'Original' into Qt4x5 2016-04-22 23:49:50 +03:00
Abs62 eb8428057f Mac-specific: Update project to copy OpenCC data files into GoldenDict bundle 2016-04-22 23:45:56 +03:00
Abs62 436edad84d Merge branch 'Original' into Qt4x5 2016-04-22 17:59:01 +03:00
Abs62 9a2855f39d Mac-specific: Add OpenCC library 2016-04-21 17:50:56 +03:00
Abs62 281d3b7e80 Win-specific: Fix build with Qt 5.6.0 and VS 2013 2016-04-14 19:09:21 +03:00
Abs62 5731349f06 Merge branch 'Original' into Qt4x5 2016-04-09 11:09:55 +03:00
Abs62 032f5c8337 Win-specific: Tune code for compilation with MS Visual Studio 2016-04-09 00:21:55 +03:00
Abs62 fcc2758eb3 Merge branch 'Original' into Qt4x5
Conflicts:
	goldendict.pro
2015-10-27 18:08:57 +03:00
Abs62 a67ed65a90 Add "chinese_conversion_support" key to project for Windows by default 2015-10-26 21:21:14 +03:00
Zhe Wang a1986254d2 ChineseConversion: conditional compilation and OpenCC exception handling 2015-10-26 09:38:22 +08:00
Zhe Wang 12f67a79a4 Support conversion between simplified and traditional Chinese characters 2015-10-20 00:00:35 +08:00
Abs62 e24de4d881 Merge branch 'Original' into Qt4x5
Conflicts:
	xdxf2html.cc
2015-10-14 18:23:46 +03:00
Zhe Wang a04917833c Remove dependency on libavutil 2015-10-11 23:01:24 +08:00
Abs62 1df1b3d5d5 Linux-specific: Fix compilation with Qt5 (issue #595) 2015-06-24 17:56:29 +03:00
Abs62 40de8fcdd1 Merge branch 'Original' into Qt4x5 2015-02-09 18:57:32 +03:00
Abs62 0912df7cb5 Add SLOB dictionaries support 2015-01-22 18:17:05 +03:00
Abs62 407bc7e4b0 Merge branch 'Original' into Qt4x5 2014-07-21 17:38:05 +04:00
Abs62 8e56dae5cd Mac-specific: Fix help installing for any build directory 2014-07-21 17:36:32 +04:00
Abs62 d4adf591a9 Adjust code for Qt5 2014-07-11 18:18:37 +04:00