Commit graph

45 commits

Author SHA1 Message Date
Abs62 b7dbb6cd96
Merge pull request #999 from vedgy/move-send-to-main-window-option-in-ui
Move scanToMainWindow checkbox out of enableScanPopup group box
2018-04-17 20:31:33 +03:00
Igor Kushnir 5c74494935 Linux-specific: Add an option to disable scan popup inside Goldendict
When scan popup is configured to appear without any key modifiers
pressed and is active on X11, it interferes with selecting text inside
the scan popup window (or inside the main window if "Send translated
word to main window" option is enabled). It also makes searching text
inside article definition impossible - in the main window and
even more so in the scan popup window.

However, when scan popup is configured to appear only when some keys are
pressed, or when the scan flag feature is enabled, it may work fine
inside Goldendict windows.

It is possible to automatically decide whether to show scan popup when
selection or clipboard inside Goldendict changes. But such logic might
be unsuitable for some use cases. For example, invoking scan popup by
selecting article definition text in the main window works fine.
Therefore this commit makes ignoring selection and clipboard changes
inside Goldendict itself optional. This commit implements one of two
feature requests in issue #606.

This new option could have effect on non-X11 platforms if the hidden
trackClipboardChanges option is enabled. But it is much less useful on
these platforms because scan popup without key modifiers is unusable
there (at least under Windows). Let us show and use the option only on
X11 to avoid cluttering Preferences UI on other platforms.
2018-04-17 20:13:25 +03:00
Igor Kushnir fa308aae96 Move scanToMainWindow checkbox out of enableScanPopup group box
This option has effect even when scan popup functionality is disabled -
when the Ctrl+C+C hotkey is triggered. So the scanToMainWindow checkbox
should not be disabled when enableScanPopup is unchecked. Fixes #716.
2018-04-17 16:48:56 +03:00
Igor Kushnir 15dfdee49f Allow customizing unpinned scan popup window flags on X11 with Qt5
My tests in many desktop environments and window managers indicate that
no single configuration works perfectly in all environments. There are
also behavior differences between Qt::Popup and Qt::Tool flags, which
are not exactly bugs, so I suppose users might subjectively prefer
different options.

Customizing the flags allows the user to prevent unpinned scan popup
window flickering with Qt5 on Linux. In a way adding these options fixes
issue #645, which is: the scan popup window blinks rapidly, barely
noticeably in some applications, such as Calibre ebook-viewer
and Chromium. In this case the scan popup window usually ends up hidden
when selection ends, unless it was finished with a jerk.

I have tested the new options in 9 desktop environments and window
managers: at least one configuration for each eliminates #645 and makes
the scan popup window work the same as with Qt4 in this regard:
the popup window remains visible, text in the popup's translation line
keeps up with the text selection in the external application,
and the selected text is being translated on the fly.

Moreover, for each tested DE/WM, at least one configuration makes
the scan popup window work perfectly as far as I am concerned.

This issue was partially worked around with a 200ms scan popup delay
timer in the recent commit 58e41fe3ce
for the duplicate issue #854. However the timer solution is incomplete
because it requires the user to select text quickly and without delays.
If global mouse selection does not change for 200ms while the left mouse
button is held down, the user will likely not see the scan popup when
(s)he finishes selection, and will have to try selecting again -
hopefully faster this time.

The 200ms delay is no longer critically important after this commit,
but it is still beneficial: the lookup query changes less often,
which in turn reduces article definition update frequency.
So the delay improves the UI (perhaps subjectively) and performance.
2018-04-15 19:46:35 +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
Boyuan Yang 2c80aa4c67 Fix typos found by codespell 2017-09-16 21:18:42 +08: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 caf39bfdb5 Add option for turn on/off confirmation for favorites items deletion 2017-05-17 18:26:32 +03:00
Abs62 72523dcfb4 Add option to periodical save of Favorites 2017-05-13 13:18:25 +03:00
Abs62 fa9d1aecd9 Add option to enable/disable search via synonyms 2017-03-09 19:11:17 +03:00
Abs62 eba7f5578f Add support for GLS (Babylon source) format 2017-03-07 16:45:09 +03:00
Abs62 40e2895ee3 Increase upper limit of the history size (issue #667) 2016-02-06 13:12:31 +03:00
Abs62 0912df7cb5 Add SLOB dictionaries support 2015-01-22 18:17:05 +03: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 27c808ce2f Cosmetic for preferences dialog: Mark "Epwing" format name as non-translated 2014-05-27 17:56:15 +04:00
Abs62 d9169bd45b Add support for Epwing dictionaries 2014-05-20 17:59:56 +04:00
Abs62 e290a7239f Fix typos 2014-05-11 19:04:21 +04:00
Abs62 fd1d035c01 Add full-text search tuning tab to preferences dialog 2014-04-17 18:31:51 +04:00
Abs62 fe9998f2bf Add system proxy choose in preferences 2014-04-02 17:54:50 +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
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 83fe17a9ce Eliminate the tab scroll buttons in Preferences and Dictionaries dialogs 2013-06-07 19:14:45 +02:00
Abs62 d721e627b1 Allow to collapse/expand articles; auto collapse for big articles (issue #331) 2013-06-02 15:20:33 +04: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 2553ddf2b8 Periodical save of history (issue #209) 2013-02-05 16:51:23 +04: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 8901dccbef Switch user styles on-the-fly 2012-12-10 18:14:13 +04:00
Abs62 03af1da9af Win-specific: Play sounds via Bass library 2012-11-23 16:43:36 +04:00
Abs62 ad8ddc8daf Add option for word selection by single mouse click 2012-09-26 17:59:48 +04:00
Abs62 305c9ed1b8 Show/hide optional parts of articles (DSL dictionaries only) 2012-09-16 14:19:47 +04:00
Abs62 e5943ec7ed Allow to turn on/off history in preferences 2012-09-11 17:03:10 +04:00
Julian Depetris Chauvin ba2ce47ae3 Merge branch 'themighty1-mru-tab' 2012-04-02 15:41:58 -03:00
wwwwww 753b0185df MRU tab switching implemented 2012-02-17 00:00:00 +02:00
Abs62 9a1ceff5d8 1. Add button to scan popup window to send translated word into main window
2. Add option to use main window instead of scan popup window
2011-11-16 16:52:25 +04:00
Julian Depetris Chauvin eeb1a07343 Fix English lines and translations that depend on them 2011-07-30 14:20:11 -03:00
Abs62 68c80f48b2 Some simplification and cleanup 2011-07-27 16:47:29 +04:00
Abs62 f20b046229 Move scan popup extra technologies selection to "Advanced" tab in Preferences 2011-07-23 15:32:15 +04:00
Abs62 a8589b39bf Improvements in scan popup functionality.
1. Add search word under cursor through IAccessibleEx interface and UI Automation technology.
2. Reorganize GoldenDict main program and scan libraries interaction to reduce influence to other programs.
3. Fix crash in scan libraries in IE9 protected mode.
2011-07-09 23:26:30 +04:00
Tvangeste 0e9f5f28c2 Hide single tab option is implemented.
By default, it's turned off (== current behavior).
2011-06-23 16:20:32 +02:00
Julian Depetris Chauvin b1965dd44c Add a "Enable web plugins" option under Edit > Preferences > Network. It allows to listen to sound pronunciations from online dictionaries that rely on flash plugin such as howjsay.com and dictionary.com. Plugin must be installed for this option to work. See http://doc.trolltech.com/4.5/qtwebkit.html#netscape-plugin-support 2011-05-08 19:12:44 -03:00
Julian Depetris Chauvin 891f316015 Restore default behaviour for ESC key. There is now a "ESC key hides main window" option under Edit > Preferences > Interface. 2011-05-07 10:42:49 -03:00
Konstantin Isakov eea1e3a2df Re-introduce native Windows audio playback.
This one can only play .wav files, but is far more stable than Phonon.
Any existing installations would auto-switch from Phonon to this one.
Any attempt to play a non-wav file would suggest switching to Phonon.
2010-11-14 18:38:41 +03:00
Konstantin Isakov ab88fa4867 Drop the src/ directory. It's superfluous. 2010-05-15 16:42:18 +04:00
Renamed from src/preferences.ui (Browse further)