Commit graph

412 commits

Author SHA1 Message Date
Igor Kushnir 13a321190f Don't construct scan popup twice at startup
abcabb77fa added a makeScanPopup() call
after applyQtStyleSheet() in MainWindow constructor to apply Qt style
sheets to the scan popup. This call destroys the scan popup created
earlier in the MainWindow constructor and creates a new instance.

Let us remove the first, now redundant invocation of makeScanPopup()
from MainWindow::makeDictionaries() to improve startup performance.
makeDictionaries() is currently called only once, so modifying it is not
a problem. If makeDictionaries() is used elsewhere in the future,
the added assertion will remind to reconstruct the scan popup.
2019-05-15 11:09:20 +03:00
Abs62 abcabb77fa Initialize scanPopup window after setting of Qt style sheets (issue #1144) 2019-05-13 18:17:27 +03:00
Abs62 c3ff15f4d8 Fix one more crash under Qt 5.12 2019-04-22 19:50:06 +03:00
Abs62 5fb4ff183e Fix some more possibly crashes with Qt 5.12 2019-03-22 17:10:26 +03:00
Abs62 465f90a315 Set Qt style sheets immediately before main window show 2019-03-19 17:37:51 +03:00
Igor Kushnir 503de6474f Qt5: improve repeated zooming performance
For example, looking up "United States" in my local dictionaries, then
pressing Ctrl++ to increase zoom factor from 1 to 5 takes 4 seconds with
this change and 25 seconds without it. The same scaling takes 6 seconds
with this change and 45 seconds without when I enable English Wikipedia,
which has a particularly large "United States" article.

There is a workaround that speeds up zooming: look up a nonexistent
word, scale to the desired level, then go back to the large articles.
But this is tedious if large articles are open in scan popup or
in case of many tabs in the main window.
2019-02-02 15:31:16 +02:00
Abs62 7abaf07bbd Fix build under Linux/MacOS 2019-02-01 16:59:41 +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 ebfeb37f56 Undef common words defined in X11 headers
* #undef Bool with Qt4 as well as with Qt5.
* #undef min, #undef max from <X11/Xlibint.h>.
* #include <fixx11h.h> just after hotkeywrapper.hh. Unfortunately this
  header can not be included in hotkeywrapper.hh directly because
  some of the undef-ed words are actually used in hotkeywrapper.cc.
* #include <fixx11h.h> after <X11/Xlib.h> in mainwindow.cc just in case
  hotkeywrapper.hh stops including this Xlib.h header in the future.

These changes should make future compilation errors less likely.

For example, without "#undef min" in hotkeywrapper.hh, including
<iomanip> in mainwindow.cc after the mainwindow.hh include resulted in
the following GCC 8 compilation error:
 /usr/include/c++/8.2.1/bits/locale_facets_nonio.tcc:945:22:
  error: expected unqualified-id before ‘(’ token
      __minlen = std::min(__minlen,
                      ^~~
2019-01-28 15:58:14 +02:00
Abs62 92e8c85eec Fix behavior while words list font resizing (issue #1109) 2019-01-26 22:11:27 +03:00
Abs62 06c6c63ddc Handle %GDWORD% template while calling external editor 2018-07-18 19:14:24 +03:00
Boyuan Yang 5d5432dbad
Fix typos found by codespell 2018-07-07 17:33:15 +08:00
Igor Kushnir d83586d3e4 Improve X11 autostart behavior
* Run the freedesktop.org-specific code only on X11 (not on Mac).
* Use a (hopefully) unique destination .desktop file name to prevent
  clashes with a goldendict.desktop file possibly created and customized
  manually or by a system preferences tool.
* Allow different executable and .desktop file names because there is
  no real dependency between them.
* Improve performance slightly with an early return.
2018-05-06 15:43:08 +03:00
fixes a4e98b2f11
Fix autostart bug 2018-05-05 15:03:23 +04:00
Igor Kushnir eec796c6e3 Eliminate a redundant makeScanPopup() call
Destroying and creating a scan popup instance twice in
MainWindow::editPreferences() is wasteful.

2b9dd55804 added the unconditional second
makeScanPopup() call below but didn't remove the existing call,
probably by mistake.
2018-04-19 09:42:18 +03:00
Mohammadreza Abdollahzadeh eea6f686f6
add possibility to use icon from system theme for tray icon 2018-04-17 11:58:20 +04:30
Abs62 5fa5cc123f Full-text search: Allow ignore diacritics while search 2018-04-10 17:49:52 +03:00
Abs62 6a77c23986 Implement "inactive dictionaries" feature for all groups (issue #984) 2018-03-28 17:21:32 +03:00
Abs62 d65a1f7869 Save popup window configuration without it destroying 2018-03-27 21:23:48 +03:00
Abs62 2ff7e4e6d0 Refactor quit/end-of-session handling 2018-03-27 17:46:03 +03:00
Abs62 3cf4561802 Save Favorites inside commitData() 2018-03-26 17:35:49 +03: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 65237ab22c Use Alt+LClick in the "Found in Dictionaries" pane as LClick in the Dictionaries bar 2018-02-08 18:01:02 +03:00
Abs62 a2dc6d96b6 Remove item from Favorites if one already exist while click on star button in main window 2017-12-07 18:47:53 +03:00
Abs62 77c9a4c3e2 Fix "Add to Favorites" icon changing 2017-11-07 17:46:59 +03:00
Abs62 65be9f2f8a Append "Add to favorites" action to tabs context menu 2017-11-07 17:45:21 +03:00
Abs62 1824d9ab02 Change "Add to Favorites" icon if headword is already presented in Favorites 2017-10-23 17:21:43 +03:00
Boyuan Yang 2c80aa4c67 Fix typos found by codespell 2017-09-16 21:18:42 +08:00
Abs62 321756a9c6 Force hide search window when main window is hidden 2017-09-01 19:32:53 +03:00
Abs62 ecddc321b2 ScanPopup: Change font size for translate line and word list synchronously with main window 2017-07-14 16:02:21 +03:00
Abs62 8fa93269a8 Fix stray main menu activation when Alt+D is pressed while translate line already have focus 2017-06-11 23:00:22 +03:00
Abs62 a6e51afa64 Add "Add to Favorites" button to scan popup window 2017-05-15 18:08:06 +03:00
Abs62 604ebc2c6b Fix add headwords to Favorites for RTL languages 2017-05-14 20:23:24 +03:00
Abs62 72523dcfb4 Add option to periodical save of Favorites 2017-05-13 13:18:25 +03:00
Abs62 a62839de72 Some fixes and tunes for Favorites
1. Change edit trigger for favorites from "double click" to "click on selected"
2. Don't show pages while multi-selection via Control key
3. Allow add folder via context menu while click on empty space
4. Show headwords without lost of focus on Favorites pane
2017-05-12 22:32:37 +03:00
Abs62 1e34de2dbc Add "Favorites" feature 2017-05-12 17:41:08 +03:00
Abs62 747dc0aaaf Refactor resource downloading 2017-04-28 00:13:25 +03:00
Abs62 67b6b6b91c Add "gdvideo://" scheme to saved resources 2017-04-27 18:05:28 +03:00
Abs62 a1a8ece42c Call disconnect() before deleteLater() for QNetworkReply objects 2017-03-20 17:31:02 +03:00
Abs62 e982b69216 Add command line parameters "--group-name" and "--popup-group-name" 2017-03-10 17:15:10 +03:00
Abs62 fa9d1aecd9 Add option to enable/disable search via synonyms 2017-03-09 19:11:17 +03:00
Abs62 f9085fad1f Fix links with anchor while save article to file 2016-05-11 17:44:07 +03:00
Abs62 b1f4795a9a Merge branch 'Original' into Qt4x5 2015-12-19 12:54:49 +03:00
Abs62 d51518ee73 Prevent lost focus on main tab widget when close tab 2015-11-21 14:10:15 +03:00
Abs62 47936e236d Merge branch 'Temp' into Qt4x5 2015-11-01 16:08:10 +03:00
Abs62 cbef0a1a1f Show now indexing for full-text search dictionary name in status line (issue #640) 2015-11-01 16:03:15 +03:00
Abs62 e24de4d881 Merge branch 'Original' into Qt4x5
Conflicts:
	xdxf2html.cc
2015-10-14 18:23:46 +03:00
Abs62 1387a8b5bd Fix internal links conversion for saving mode "html only" 2015-07-03 17:40:28 +03:00
Abs62 5b666afe36 Convert internal links while saving article to html 2015-07-02 18:16:14 +03:00
Abs62 c1ed847095 Merge branch 'Temp' into Qt4x5 2015-05-20 17:48:52 +03:00
Abs62 7ad717dbb0 Fix crash if configuration saving failed 2015-03-30 19:24:25 +03:00
Abs62 9d82ae4622 Show headwords from dictionaries setup dialog in modal mode 2015-03-23 18:58:49 +03:00
Abs62 64e364f48c Replace reserved characters when make filename to save article 2015-03-22 20:21:12 +03:00
Abs62 8f7d35f5b2 Merge branch 'Original' into Qt4x5 2014-12-12 16:59:00 +03:00
Abs62 39b0625c0c Fix unwanted re-enabling of indexing for full-text search after dictionaries rescanning via dictionaries dialog 2014-12-06 19:34:59 +03:00
Abs62 4b8de48e5c Merge branch 'Original' into Qt4x5 2014-11-27 18:53:52 +03:00
Abs62 46298a842c Jump to dictionary when show word from dictionary headwords dialog 2014-11-17 17:37:19 +03:00
Abs62 8cabcacf55 Merge branch 'Original' into Qt4x5
Conflicts:
	btreeidx.cc
	fulltextsearch.cc
	goldendict.pro
	main.cc
2014-07-11 18:17:43 +04:00
Abs62 d3a13bd154 Allow to choose help language 2014-06-25 18:01:11 +04:00
Abs62 3531a74c6e Add help buttons to dialogs 2014-06-24 17:55:06 +04:00
Abs62 d4c68d3c49 Add help system 2014-06-23 20:03:14 +04:00
Abs62 35433d9ea6 Merge branch 'Original' into Qt4x5 2014-05-27 17:59:50 +04:00
Abs62 d9169bd45b Add support for Epwing dictionaries 2014-05-20 17:59:56 +04:00
Abs62 b9666f7f9f Merge branch 'Original' into Qt4x5
Conflicts:
	bgl_babylon.cc
2014-05-12 18:10:26 +04:00
Abs62 e2b0a7f39c Mac-specific: Adjust code for Qt5 build 2014-05-12 17:53:13 +04:00
Igor Kushnir e79338b3a1 Fixed activating link with <Enter>; fixed FullTextSearchDialog tab order; fixed switching between UI elements via shortcuts. 2014-05-11 14:52:25 +03:00
Abs62 4120213ee8 Rename "DPRINTF" and "FDPRINTF" debug macro 2014-05-11 01:02:31 +04:00
Abs62 273b1b5757 Merge branch 'Original' into Qt4x5
Conflicts:
	articleview.cc
	btreeidx.cc
2014-05-05 21:31:16 +04:00
Abs62 052e43e2c3 Full-text search: A little refactoring of dialog 2014-04-29 17:54:09 +04:00
Abs62 a4ea28c121 A little refactoring of wildcards in the input line handling 2014-04-26 15:46:26 +04:00
Abs62 10532279b1 Merge branch 'Original' into Qt4x5
Conflicts:
	article_netmgr.cc
	mainwindow.cc
2014-04-23 18:16:06 +04:00
Abs62 948db01572 Full-text search: Handle "Enter" key in headwords list
and focus dialog on Ctrl+Shift+F
2014-04-23 17:47:56 +04:00
Abs62 88c40141d0 A little refactoring of keys handling (old solution don't work correctly in Qt5) 2014-04-23 17:46:48 +04:00
Abs62 503650d617 Full-text search: Set group for ArticleView::showDefinition() when view article 2014-04-23 00:08:21 +04:00
Abs62 c2cdf9b177 Full-text search: Highlight of the search results 2014-04-22 22:29:58 +04:00
Abs62 4e065d9204 Fix compilation under MacOS/Linux 2014-04-18 16:33:44 +04:00
Abs62 fd1d035c01 Add full-text search tuning tab to preferences dialog 2014-04-17 18:31:51 +04:00
Abs62 6a13f6a41e Full-text search: Fix crashes at dictionaries rescan 2014-04-17 18:18:15 +04:00
Abs62 9ad0d5f985 Implement full-text search 2014-04-16 20:18:28 +04:00
Abs62 5e79fabb0d Adjust code for Qt5 2014-04-11 20:50:24 +04:00
Abs62 4cf35cc7e3 Merge branch 'Original' into Qt4x5
Conflicts:
	hotkeywrapper.hh
	mainwindow.cc
	mainwindow.hh
2014-04-11 19:29:56 +04:00
Abs62 f70724b9a8 Close dictionary headwords dialog before configuration change 2014-04-10 18:00:12 +04:00
Abs62 d21701785a Fix history saving while system shutdown 2014-04-08 22:57:07 +04:00
Abs62 9623cbdd7a Add proxy authentication dialog 2014-04-03 18:21:02 +04:00
Abs62 fe9998f2bf Add system proxy choose in preferences 2014-04-02 17:54:50 +04:00
Abs62 b6a5beb2c2 Adjust back/forward buttons icon for right-to-left window layout 2014-03-20 17:44:46 +04:00
Abs62 269ea601f5 Win-specific: ScanPopup: Fix GD main window scanning under Win7+ 2014-03-17 18:53:47 +04:00
Abs62 fed58b512a Win-specific: ScanPopup: Fix RTL strings scanning 2014-03-17 17:46:50 +04:00
Abs62 4bbe1aaee5 Merge branch 'Original' into Qt4x5
Conflicts:
	scanpopup.cc
2014-03-14 17:34:33 +04:00
Abs62 b20f4d016b Fix set of symbols [...] handling in the input line 2014-03-14 16:39:54 +04:00
Abs62 da161164b9 Allow wildcards in the input line (issue #24) 2014-03-12 17:43:52 +04:00
Abs62 902c5f605b Add Ctrl+D shortcut to switch to dictionary headwords dialog 2014-03-04 20:58:51 +04:00
Abs62 55e9dc6a38 Make headwords dialog modeless 2014-03-03 17:46:41 +04:00
Abs62 a7145abdd0 Call dictionary headwords dialog via context menu of dictionaries bar and dictionaries list 2014-03-01 17:11:14 +04:00
Abs62 4a4bfade1d Show all headwords for selected dictionary 2014-02-28 16:36:28 +04:00
Abs62 0fa4087b38 Merge branch 'Original' into Qt4x5
Conflicts:
	goldendict.pro
	mainwindow.cc
	zim.cc
	zipsounds.cc
2014-02-11 23:39:31 +04:00
Abs62 dabceff223 Don't jump to dictionary when new page opens in background 2014-02-09 19:15:41 +04:00
Abs62 97c4697a80 Handle some touch screen gestures in article view window 2014-02-04 22:38:50 +04:00
Abs62 dbedf431fa Merge branch 'Original' into Qt4x5 2014-01-22 00:03:39 +04:00
Abs62 32a2cf55b9 Add config file option for track clipboard changes 2014-01-09 18:17:50 +04:00
Abs62 2f8c0d3d80 Don't check key modifiers for new tab when word received from scan popup window 2014-01-09 18:15:51 +04:00
Abs62 ff44dcebf2 Mac-specific: Adjust code for MacOS 10.9 2013-12-26 18:13:10 +04:00
Abs62 d133ae7369 Merge branch 'Temp' into Qt4x5
Conflicts:
	mainwindow.cc
2013-12-20 18:51:17 +04:00
Abs62 696fdbb994 Win-specific: Refactor of main window geometry saving 2013-12-20 18:25:33 +04:00
Abs62 34271ecc1d Merge branch 'Temp' into Qt4x5
Conflicts:
	article_maker.cc
	article_netmgr.cc
	articleview.cc
	forvo.cc
	goldendict.pro
	hotkeywrapper.cc
	hunspell.cc
	mainwindow.cc
2013-12-18 19:09:48 +04:00
Abs62 444938a330 Fix logging to file UTF-8 encoded messages 2013-11-16 22:34:09 +04:00
Abs62 a1d539ff1f Qt5-specific: Fix pictures loading for Bgl and some Stardict dictionaries 2013-09-27 17:04:25 +04:00
Abs62 1f87d8a911 Merge branch 'master' into Qt4x5
Conflicts:
	btreeidx.cc
	goldendict.pro
	lsa.cc
	mouseover.cc
	sounddir.cc
	xdxf2html.cc
2013-09-27 17:03:27 +04:00
Abs62 5a6c88ea09 Update suggestion list after group content editing (issue #406) 2013-09-24 17:55:12 +04:00
Abs62 c7b04526d2 Possibility to log GD console messages into file "gd_log.txt" in GD config directory. Activated by "--log-to-file" key in command line. 2013-09-20 18:25:44 +04:00
Tvangeste e2dde82580 Fixed #182: Provide a better Sound icon
The icon is by Evan Brooks, used with permission.
2013-08-21 10:02:46 +02:00
Timon Wong ee0fc80001 Merge branch 'master' into qt4x5
Conflicts:
	articleview.cc
	btreeidx.cc
	goldendict.pro
	mediawiki.cc
2013-08-02 17:00:16 +08:00
Tvangeste 039caf07f1 Fixed #183: Provide a higher resolution main GoldenDict icon
Finally! :)
2013-07-19 19:07:32 +02:00
Abs62 7e7adaf7c0 Refactor show dictionary info in "Groups" tab 2013-07-07 12:09:46 +04:00
Abs62 5ca8279045 RTL languages support for tab and main window header and article context menu 2013-07-07 01:45:13 +04:00
Timon Wong 01ef08a709 Merge branch 'master' into qt4x5 2013-07-05 17:03:57 +08:00
Tvangeste 3c5ce36231 Simplify MainWindow::getCurrentArticleView() 2013-07-04 18:05:49 +02:00
Tvangeste 23f94c584f Jump to article when double-clicking on dictinary in "Found in Dictionaries"
This forces the jump even when the dictionary is already a current/active dictionary.
This is convenient for the following use-cases:

1. User manually scrolls far away from the current dictionary and would like to return.
2. User jumps far away from the current dictionary when doing search (Ctrl+F).
3. User scrolls a huge article and would like to get back to the beginning of it.
2013-06-28 18:00:13 +02:00
Timon Wong 6ed3f5bec5 Merge branch 'master' into qt4x5 2013-06-16 15:54:05 +08:00
Tvangeste dcc62050e3 Refactoring the edit dictionary functionality a bit 2013-06-11 21:31:58 +02:00
Tvangeste de2bf73e66 New interface preference: Context menu dictionaries limit
Controls both context menus, in the dictionary bar and in the article view.
Can be adjusted in Preferences -> Interface -> Context menu dictionaries limit.
By default, it is set to 20.
2013-06-11 20:31:01 +02:00
Tvangeste 7599b8e33e Add "Edit dictionary" and "Open folder" buttons to the Dictionary Info dialog
Note: The "Edit dictionary" is optional an enabled only if the command line
for editor is specified in the config file (manually).
2013-06-11 17:42:24 +02:00
Abs62 9cd0ae5030 Fix open dictionary folder action 2013-06-11 16:52:10 +04:00
Tvangeste ebff287219 Win-specific: Select in Explorer the main dictionary file when opening the dictionary folder 2013-06-11 12:12:47 +02:00
Abs62 fa4c0821eb Zeroing latestReleaseReply after deleteLater() 2013-06-11 08:08:25 +04:00
Timon Wong b4fc5bf084 Merge branch 'master' into qt4x5 2013-06-11 09:24:23 +08:00
Tvangeste 57575fb4eb Reload the open tabs when groups and dictionary order is changed 2013-06-10 23:40:35 +02:00
Timon Wong f0885d4c78 Merge branch 'master' into qt4x5
Conflicts:
	hotkeywrapper.cc
	xdxf2html.cc
2013-06-10 23:49:09 +08:00
Abs62 3bd82ef752 "Open dictionary folder" action in context menu (issue #344) 2013-06-09 17:31:57 +04:00
Timon Wong a08102dd42 Win-Specific: Fix hotkey handling in Qt5 2013-06-08 22:36:05 +08:00
Timon Wong 6f2ab430ec Merge branch 'master' into qt4x5
Conflicts:
	article_maker.cc
	dsl.cc
	mainwindow.cc
2013-06-08 12:27:18 +08:00
Tvangeste 43f2b67095 Properly update the results pane when closing tabs 2013-06-07 16:37:40 +02:00
Abs62 9bb6768bd9 Initialize ssl libraries at program start (may affect on issue #303) 2013-06-07 17:00:30 +04:00
Abs62 cce47a77c3 Don't delete latest release reply directly in slot 2013-06-07 16:59:18 +04:00
Abs62 d721e627b1 Allow to collapse/expand articles; auto collapse for big articles (issue #331) 2013-06-02 15:20:33 +04:00
Timon Wong 8015841a1a Replace Q_WS_X11 -> HAVE_X11 2013-05-31 13:28:36 +08:00
Timon Wong d057752c74 Change Q_WS_MAC to Q_OS_MAC, Change Q_WS_WIN* to Q_OS_WIN* 2013-05-31 12:28:29 +08:00
Timon Wong 4b412f360c Merge branch 'master' into qt4x5 2013-05-31 12:20:33 +08:00
Timon Wong f30c41dbf6 Remove Url::Class, add Qt4x5::Url::ensureLeadingSlash() and fix all related 2013-05-31 12:20:25 +08:00
Timon Wong 43427e3958 Fix regression from d5c236f183: should take first audio link from each article 2013-05-31 11:46:51 +08:00
Timon Wong d5c236f183 Fix pronunciation for active article (if not avaialbe, fallback to the first one) 2013-05-31 11:29:04 +08:00
Timon Wong a33e52a321 Fix crash when right clicking dicts list if scan pop is disabled 2013-05-30 23:45:20 +08:00
Timon Wong ad4394d02b #212: Workaround for Qt5 changed behavior in QUrl::setPath() 2013-05-30 23:05:41 +08:00
Abs62 10cdaccb4e Reload tabs content and suggestion list after dictionaries rescan (issue #330) 2013-05-30 17:54:47 +04:00
Timon Wong 1d85f1b359 #212: Scratch, currently works under windows, for both Qt4 and Qt5 2013-05-30 21:24:21 +08:00
Timon Wong d6b832dc6a Merge pull request #327 from timonwong/article_inspector
Add "Inspect" action to context menu
2013-05-29 19:22:42 -07:00
Timon Wong 329aa02f93 Add "Inspect" action to context menu
* The "Inspect" action will bring up web inspector from WebKit.
* Restorable inspector window geometry.
2013-05-30 10:18:28 +08:00
Timon Wong a510facf18 Fix potential crash on exit with multiple tabs opened 2013-05-29 15:20:57 +08:00
Timon Wong 1ba03a326d Add an option to enable saving resource files with articles (#321) 2013-05-27 19:18:13 +08:00
Tvangeste 2b9dd55804 Disable the Scan Pop-up when a Preferences dialog is open 2013-05-17 14:34:46 +02:00