Commit graph

542 commits

Author SHA1 Message Date
yifang.xiao ab358fb3a5 remove old qt(<5) code. 2021-12-13 22:43:43 +08:00
Igor Kushnir 8260ac87ba Linux-specific: Don't ignore main window close event
If GoldenDict's option "Close to system tray" is checked and
GoldenDict's main window is visible when the user logs out, the logout
is canceled in latest stable versions of KDE Plasma and Xfce desktop
environments (probably in other GNU/Linux desktop environments too, but
they weren't tested). The cause of this unintended and pointless logout
cancellation is ignoring the close event.

Close events are accepted by default. main() calls
`app.setQuitOnLastWindowClosed( false );`. Thus, if the close event is
not touched, the main window is hidden as before this change.
GoldenDict's configuration, history and favorites are still committed
and saved in both KDE Plasma and Xfce when logging out first
closes/hides the main window, then quits GoldenDict.

The change is limited to GNU/Linux because @Abs62 pointed out that
closing the main window breaks global hotkeys on Windows. I have
verified that closing the main window does not break global hotkeys on
GNU/Linux with Qt5 or Qt4. No one has volunteered to test whether the
change is needed on macOS, so it is safer not to apply it there.

Closes #1421.
2021-11-29 11:25:39 +02:00
xiaoyifang 9857ed0559 use char32_t as the inner string unit. 2021-10-20 23:02:37 +08:00
xiaoyifang bdb9561ec9 rename scheme handler 2021-10-02 20:48:49 +08:00
xiaoyifang d2257ce061 Merge remote-tracking branch 'remotes/origin/master' into branch-qt-5.15
# Conflicts:
#	articleview.cc
2021-09-24 14:08:26 +08:00
yifang 3b120ee765 1 remove useless code
2 define js variable to avoid js error
2021-09-24 21:42:55 +08:00
yifang a23409c875 fix:loaded url twice 2021-09-24 20:29:13 +08:00
xiaoyifang 17afc21478 1.js undefined error
2,disable chrome auto play feature
2021-09-22 11:20:42 +08:00
yifang 4a5af10277 add local scheme ,such as qrcx,gadu,etc. 2021-09-21 18:22:08 +08:00
xiaoyifang 0279273369 add gico scheme handler 2021-08-28 10:35:23 +08:00
yifang e5c72f8ecc change to setcontent 2021-08-21 09:41:40 +08:00
xiaoyifang eddfa075bd connect reply content to article view 2021-08-14 15:25:10 +08:00
xiaoyifang 939a96b7a6 register local scheme gdlookup:// 2021-08-05 14:57:22 +08:00
yifang 54bdf12d8d network manager change 2021-07-24 15:18:46 +08:00
xiaoyifang 3aadf52344 webkit to webengine 2021-07-15 22:58:32 +08:00
Igor Kushnir baff02a14b Make MainWindow::setTranslateBoxTextAnd*() harder to misuse
Most callers of these member functions should escape wildcard symbols in
the `text` argument. Yet nothing in the functions' signatures suggested
such escaping. With the added enum WildcardPolicy argument, the callers
are forced to decide whether or not the wildcards should be escaped.
2021-06-30 20:01:40 +03:00
Igor Kushnir 9ff28e226f Translate box: add missing wildcard symbol (un)escaping
When not-escaped wildcard symbols are placed in the translate box/line,
word completion can occupy the CPU for seconds. So it is safer to err on
the side of escaping than the other way around.

The missed unescaping in ScanPopup::translateInputFinished() was
inconsistent with the main window. It made escaping in the scan popup's
translate box unusable by attempting to translate e.g. "\*" verbatim.
2021-06-30 20:01:40 +03:00
Igor Kushnir f919685797 Extract duplicated "gdfrom-" string manipulation into functions
Such helper functions facilitate understanding of the code and simplify
implementing new features.
2021-06-29 13:31:09 +03:00
Igor Kushnir fdf0464628 Save&restore the geometry of Dictionaries dialog
The geometries of many GoldenDict's dialogs and windows are already
stored in config. Dictionaries dialog can make use of extra horizontal
space when there are many groups, extra vertical space - when there are
many dictionaries. A user can now resize this dialog to her liking once.
2021-06-23 09:53:42 +03:00
Abs62 e1c9a0d6de Fix compilation without C++11 support 2021-06-18 21:33:24 +03:00
Igor Kushnir 99ddb7686e Don't add the same phrase to history twice in a row
Each of the 3 removed history addition requests follows a call to
ArticleView::showDefinition() with the same phrase/word as an argument.
Each showDefinition() overload adds its phrase/word argument to history.

These duplicate history additions weren't noticeable because
History::addItem() searches for and removes its argument from items to
avoid duplicate history entries. But the extra function calls, signal
emissions, linear searches and QList manipulation wasted processor time.
2021-06-17 12:06:36 +03:00
Igor Kushnir 60bc05218f Add input phrase's punctuation suffix to alts
Preferences::sanitizeInputPhrase() transforms an input phrase by
removing its whitespace/punctuation prefix and suffix. Translating a
phrase from X11 primary selection or from clipboard, via mouse-over or
from the command line results in such sanitization. This is useful when
a punctuation mark or a space is selected accidentally alongside a word.
This sanitization can be undesirable, however, when an abbreviated word
is selected. For example: "etc.", "e.g.", "i.e.".

This commit implements searching for the input word with the punctuation
suffix preserved as an alternative form of the sanitized word to show
articles for both. For example, when the word "etc." is translated from
the clipboard, both "ETC" and "etc." articles are displayed.

The punctuation suffix is preserved when the word is passed from the
scan popup to the main window and when the translate line text is
refreshed (e.g. when the current group is changed). The suffix is not
stored in history and favorites (doing so would require file format
changes and possibly substantial code changes, this can be implemented
later if need be).

Trim the input phrase once in ArticleNetworkAccessManager::getResource()
instead of verbose trimming in multiple places in
ArticleMaker::makeDefinitionFor().

Closes #1350.
2021-06-17 12:06:36 +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
Igor Kushnir 193aa4e31d Set up network disk cache for articleNetMgr
When a Wikipedia article is already cached, this change reduces the
amount of sent and received network data almost tenfold.

Setting up a network disk cache in the same way for dictNetMgr does not
noticeably impact the amount of network traffic. Either this network
access manager sends and receives very little data or the data is never
the same. So dictNetMgr does not need a disk cache.

Use QNetworkDiskCache's default maximum size of 50 MiB as the default
network cache size. This size is large enough to accommodate tens of
huge MediaWiki articles. It is also small enough that the user is
unlikely to run out of disk space because of the cache.

Clear network cache on exit by default because most users probably
don't load the same online articles after restarting GoldenDict. Plus
storing the network cache on disk indefinitely by default would be a new
and unexpected to the users privacy risk.

Nikita Moor came up with the idea and wrote an initial network disk
cache implementation in #1310.
2020-11-18 19:04:28 +02:00
Abs62 9fb33d10bd Disable focus acquiring by "New tab" button 2020-10-22 20:41:37 +03:00
Abs62 1cef1a8733 Qt5-specific: Fix crash after Ctrl+Tab when tabs navigation in MRU order is turned on in preferences 2019-11-16 16:01:13 +03:00
Abs62 df92b38ea8 Mac-specific: Fix save/restore main window configuration with Qt 5.12 2019-09-30 19:57:30 +03:00
Abs62 c53fe1c640 Windows: Fix crashes when all global hotkeys are disabled (issue #1184) 2019-08-07 22:54:49 +03:00
Abs62 05bfc353a8 Allow dictionaries groups combobox standard hotkeys from FTS and Headwords dialogs 2019-07-09 18:00:23 +03:00
coozoo 09a7d4db33 Fix empty menu if program compiled with qt5
Fixed by not adding dummy system tray under X env
Tested for:
Mate 1.22.1
XFCE4 4.12
KDE 5.14.5 (damn it's so ugly now)
GNOME (with topicons-plus extension)

This commit fixes #907, fixes #1097 and fixes #1155
2019-05-27 18:58:27 +03:00
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
Tvangeste 82e6648efc Added an option to hide GoldenDict identification in the HTTP User-Agent headers (Issue #259).
A new preference in the "Network" tab is added:
* Do not identify GoldenDict in HTTP headers.
2013-05-15 17:59:30 +02:00
Timon Wong c4752eb14c Add internal audio player(ffmpeg/libav + libao).
* phonon, bass, playsound are removed.
2013-05-05 18:22:12 +08:00
Abs62 0389d23def A little more informative messages about Bass library errors (and couple of other changes) 2013-04-26 23:24:55 +04:00
Abs62 ace29d367f Mac-specific: Check Accessibility API at start with auto scan popup (issue #129) 2013-04-12 18:30:24 +04:00
Tvangeste ce4a212155 Use the native OS dialog to save articles, store the save location in a config 2013-04-12 09:31:09 +02:00
Abs62 68df177056 Mac-specific: Implement scanning under Mac OS X (issue #129) 2013-04-10 17:31:44 +04:00
Tvangeste 88fc0c3110 Fixed #254: Mac OS X: TranslateBox alignment issues 2013-04-01 18:37:44 +02:00
Tvangeste c45bf96701 Set the minimum zoom level from 0.7 to 0.1 2013-03-13 21:19:38 +01:00
Abs62 d1a4db20e8 Window activation under Linux again (issue #235) 2013-03-11 16:56:26 +04:00
Julian Depetris Chauvin b13b808edf Fixed #225: Tiny print preview window in Windows 7 2013-02-27 20:43:48 -03:00
Abs62 13eb3fa503 Synchronize dicionary icons size in popup and main windows (issue #168) 2013-02-27 17:12:46 +04:00
Abs62 0ac060576d Save images and sounds via context menu (issue #223) 2013-02-22 16:44:23 +04:00
Abs62 4e799b9ed2 Win-specific: activate main window after geometry adjusting at program start 2013-02-21 16:56:28 +04:00
Abs62 a2c8ceffd1 Clear dictionaries lists before dictionaries rescan 2013-02-19 22:56:05 +04:00
Tvangeste af82c12e59 Fixed #215: Enter doesn't work in the suggestions list when switching from the Old UI. 2013-02-08 18:09:37 +01:00
Abs62 d992c81e93 Windows switching under Ubuntu Unity (issue #204) 2013-02-08 15:49:14 +04:00
Tvangeste a46b17924d Additional fix for #205. 2013-02-07 19:16:19 +01:00
Tvangeste 404a16442b Fixed #205: Visual glitches in the new UI on KDE/Linux. 2013-02-07 16:24:24 +01:00
Abs62 2553ddf2b8 Periodical save of history (issue #209) 2013-02-05 16:51:23 +04:00
Abs62 f4f27de3cd Make changes from commit d8decdae83 Win-specific (issue #213) 2013-02-04 18:10:37 +04:00
Abs62 940de07908 Don't translate program name 2013-02-01 16:36:01 +04:00
Abs62 4e06a3612d Call tr() function for some strings (issue #195 again) 2013-02-01 00:18:40 +04:00
Abs62 9e3dd433a8 Don't show welcome page header in window title (issue #195) 2013-01-31 17:01:08 +04:00
Abs62 d8decdae83 Properly save/restore main window configuration when it maximized 2013-01-29 23:20:53 +04:00
Tvangeste ffa9f5778b Fixed #192: Dynamically adjust the suggestion list in the new UI. 2013-01-27 23:12:00 +01:00
Abs62 82d9cdaa06 Win-specific: Properly scan right-to-left words in GD window 2013-01-26 18:49:02 +04:00
Tvangeste 3258ad89f5 Fixed #191: New UI in the scan popup, replace 3 separate widgets with the translate box. 2013-01-25 16:42:44 +01:00
Abs62 c23e09b57b Properly restore main window maximized state when it activated through tray icon 2013-01-24 00:36:53 +04:00
Tvangeste 08ca79c272 Fixed #188: Switching the UI mode should focus the translate line and update it. 2013-01-23 20:11:39 +01:00
Tvangeste 48801fc7a8 Fixed #186: F3 and Shift+F3 shortcuts are no longer global in the main window. 2013-01-23 19:36:45 +01:00
Tvangeste ea51feb810 Tweaks for the Menu Button size (closes #176). 2013-01-23 14:40:49 +01:00
Tvangeste bb3a35e7ff Fixed Issue #184: F3 and Shift-F3 shortcuts don't work in a scan popup window when Search is activated
Also fixed  #185: Dictionaries menu uses hardcoded shortcut value in its text.
2013-01-22 22:16:54 +01:00
Tvangeste 7232859184 Additional shortcut for ZoomIn/WordsZoomIn actions (Ctrl+= and Alt+=).
Browsers do the same for the ZoomIn action, so that it is easier
to press with just two button presses instead of three.
2013-01-22 00:05:50 +01:00
Tvangeste 6c032b5185 Fixed #178: Word Zoom Level is not preserved when switching UI modes (Ctrl+S). 2013-01-21 22:49:58 +01:00
Tvangeste 77a992a296 Fixed #176: Menu button is not centered when toolbar is vertically positioned.
We just disable the Left and Right areas for the main toolbar in the new UI mode. :)
2013-01-21 21:53:53 +01:00
Tvangeste d5dd8eb940 Do not store the welcome page in the user history. 2013-01-20 19:26:17 +01:00
Tvangeste 4d5665d816 Make the default history item length to be the same as the limit for the headwords.
So, it is 256 now.

And configurable via the same parameter in the config file: maxHeadwordSize.
2013-01-17 15:24:13 +01:00
Tvangeste 3ed7772996 History Pane rewrite.
The new History Pane features proper mouse and keyboard navigation,
multiple selection and ability to remove the selected entries,
plus a dynamic context menu. Additionaly, the History's size is now
configurable in Preferences.

Use Ctrl+H to show/hide the History Pane.

History Pane's titlebar can be styled via #historyPaneTitleBar, e.g.:

/* Colored header for the History Pane */
  background: lightsteelblue;
  margin: 2px;
}

Closes #162: Make History sidebar independent from the Search Pane
Closes #159: "Send to main window" button from Pop-Up window does nothing when History is shown
Closes #158: Preserve History mode after restart
Closes #157: History with new UI: New words are not added when History is shown
Closes #156: History with new UI: Extra Groups widget in History is shown
Closes #155: History with new UI: Arrow keys navigation in History doesn't work
Closes #154: History with new UI: DEL key does not delete the current history entry
2013-01-17 10:08:53 +01:00
Abs62 c40de2dbf6 Fix send word to main window for new UI when history view mode is on 2013-01-10 23:10:48 +04:00
Tvangeste bba95a2f3f Make sure that UI mode and Always On Top flag are preserved on config changes. 2013-01-09 13:17:15 +01:00
Tvangeste 9e29b43922 Restored the code to add actions from the hidden menu back to the main window.
So that if Menu Button is hidden (or the whole toolbar is hidden) all
the actions would still work, including the one to show the main menu back.

One of the possibilities when the Menu Button is hidden is when not all
toolbar buttons fit into winow and are being automatically hidden.
2013-01-06 13:46:34 +01:00
Tvangeste ed6d23d27d Fixed #152: Magic wand is located before the translation input, should be after. 2013-01-06 12:22:20 +01:00
Tvangeste 9ad4da4cb5 Fixed #143: Make the new UI mode the default one. 2013-01-05 12:35:18 +01:00
Tvangeste 43e9417663 Fixed Issue #148: Menubar toggle state is not remembered on program restart. 2013-01-04 22:42:25 +01:00
Tvangeste fb33faabbc Fixed Issue #149: ESC does not work in the input dropdown field of the new UI 2013-01-02 10:55:23 +01:00
Julian Depetris Chauvin 0638f1b8dc Zoom in/out with Ctrl + Scroll wheel
This is standard behavior in pretty much any modern application (Notepad, Explorer, PDF reader and all browsers).
2013-01-01 20:05:29 -03:00
Tvangeste 915384d9d0 MenuButton should not have focus. 2012-12-31 19:23:47 +01:00
Tvangeste 0a355bf6d0 Added shortcuts for the both sidepanels (Ctrl+S for search, Ctrl+R for results navigation). 2012-12-30 11:06:58 +01:00
Tvangeste 321df3c224 Added menu accelerators. 2012-12-30 10:29:19 +01:00
Tvangeste 747b227653 Proper checkmark for the Menubar action. 2012-12-29 21:24:48 +01:00
Tvangeste e8cefa1330 Added a new "Menu Button" when the main menubar is hidden.
This button is very similar to Chrome browser's (wrench) button.
2012-12-29 19:46:43 +01:00
Tvangeste cb8724ce1c Implemented "Always on Top" functionality.
This feature has been frequently requested by various users.
2012-12-29 12:29:37 +01:00
Abs62 402b481d74 Focus GoldenDict window after restoring it from tray by hotkey under Ubuntu (issue #95) 2012-12-29 14:01:36 +04:00
Tvangeste 32b77e2848 Tweaked content margins for dictsPane. 2012-12-27 13:11:11 +01:00
Tvangeste 14ba44980c Names for backButton, forwardButton, soundButton and a couple of separators. 2012-12-27 09:30:43 +01:00
Tvangeste 35cda1c22c Name print, save, zoomIn, zoomOut and zoomBase buttons for convenient CSS styling. 2012-12-26 18:16:21 +01:00
Tvangeste 26f87ddcc6 Move Print and Save buttons further down.
The buttons are rarerly used and there is no point in keeping them close
to the beginning of the toolbar.
2012-12-26 15:04:32 +01:00
Tvangeste 7c903dd2b2 Some more cases where it is appropriate to hide the word list. 2012-12-25 21:38:28 +01:00
Tvangeste 70a2c8bfbe Minor bugfixes for the new UI mode. 2012-12-25 11:12:13 +01:00
Tvangeste 42c3b37a45 Fixed issue #144: wordlist suggestions stay on the screen even when the window is moved/resized. 2012-12-25 10:25:54 +01:00
Tvangeste cfa66ff0a1 Fixed regression #141. 2012-12-24 22:58:00 +01:00
Tvangeste da13998518 Updated UI: Browser-like interface vs search in the sidebar.
Users now have a choice:

* The new way: The field to enter words located like in all browsers, in the toolbar.
* The old way: to search in the sidebar.

Both UI modes are supported and can be switched between via View -> Search Pane menu.
2012-12-24 12:30:03 +01:00
Abs62 ce742142a1 Some strange crashes 2012-12-22 21:46:53 +04:00
Abs62 9c9faff6f6 Show dictionary info on right click in groups edit dialog 2012-12-20 17:25:03 +04:00
Abs62 0ed97ae6d3 Uninitialized variable in windows builds 2012-12-13 20:17:44 +04:00
Abs62 8901dccbef Switch user styles on-the-fly 2012-12-10 18:14:13 +04:00
Abs62 5070b5b859 std::vector -> QVector in config 2012-12-10 16:49:45 +04:00
Vladimir Sizikov 1907ddab94 Second part of renamings activated() -> triggered().
Using triggered() is a proper Qt 4.* way.
2012-12-04 09:33:47 +01:00
Tvangeste 2836b66d54 Renamed Qt3-legacy *_activated() -> *_triggered().
This fixes the problems on pure Qt4-only environments.
2012-12-03 22:58:55 +01:00
Abs62 e28b25a76e Change zoom limit from 3x to 5x 2012-12-03 17:13:13 +04:00