1674 Commits

Author SHA1 Message Date
Kelson
40461d72b3
Merge pull request #1266 from kiwix/fix_for_issue1236
Windows version of kiwix-desktop no longer crashes when launched from a network folder
2024-12-04 20:25:32 +01:00
Veloman Yunkan
0dc685264d Restore tabs only after disabled sandbox is approved
Before this fix tabs could be restored before the user approved
disabling the QWebEngine sandbox (when the app is launched from a remote
location/network folder). If disabling the web browser sandbox in
kiwix-desktop has any real risk for the user then we shouldn't expose
them to it before notifying about implications and receiving their
confirmation to proceed.
2024-12-03 14:47:47 +04:00
Veloman Yunkan
d60cd6008a Handle launching from unmapped network folder too 2024-12-03 14:47:47 +04:00
Veloman Yunkan
f9045be5c3 Extracted wasAppStartedFromARemoteDrive() 2024-12-03 14:47:16 +04:00
Veloman Yunkan
a7913f6c14 Don't crash when there are no voices available 2024-12-03 14:31:11 +04:00
Kelson
4411d6a4a6
Merge pull request #1251 from kiwix/translatewiki
Localisation updates from https://translatewiki.net.
2024-11-30 08:36:03 +01:00
translatewiki.net
66c715a919
Localisation updates from https://translatewiki.net. 2024-11-28 13:06:29 +01:00
Kelson
6a11118724
Merge pull request #1258 from kiwix/run_ci_on_jammy
Switch Linux CI to jammy
2024-11-26 18:10:40 +01:00
Veloman Yunkan
25175d8313 Switch Linux CI to jammy 2024-11-26 19:14:43 +04:00
Kelson
833f2a00af
Merge pull request #1259 from kiwix/windows_settings_persisted_in_files
Under Windows settings are persisted in files too
2024-11-26 11:53:11 +00:00
Veloman Yunkan
d26df8d31e Switched Windows CI to release mode
All dependencies are now built under Windows in release mode, hence we
have no choice but to switch the Windows CI to release mode too.
2024-11-26 14:01:31 +04:00
Veloman Yunkan
af6c402443 Under Windows settings are persisted in files too
Before this fix the settings and session information should have been
written to the Windows registry however for some reason it didn't work.

In any case we want the settings to be saved in files so that it plays
better with portable mode (when we start supporting it for Windows
builds too).

Explicit settings (those configurable through the settings dialog, and
library filters) are saved in
"C:/Users/<USER>/AppData/Local/kiwix-desktop/Kiwix-desktop.conf"

Session info (window size, list of open tabs, last directory used for
opening a ZIM file) are saved in
"C:/Users/<USER>/AppData/Roaming/kiwix-desktop/kiwix-desktop.session"
2024-11-26 13:10:19 +04:00
Kelson
955c1d51a8
Merge pull request #1252 from kiwix/fix_for_issue_1235
Fixed the crash on application launch under Windows
2024-11-22 14:51:06 +01:00
Veloman Yunkan
e6a8622738 [HACK] Handling of empty result after elision
The bug itself happens due to initialization&update of MultiZimButton (via
established signal/slot connections) at a time when the main application
window hasn't yet been shown and the dimensions of various widgets are
bogus. The end result is that a too narrow menu leads to the elided text
string being empty which was outside of the assumptions of the
getElidedText() function.
2024-11-21 18:17:13 +04:00
Veloman Yunkan
a29722dcd0 QSettings object is created before first use
It looks like the bug was not triggerred under Linux due to a different
order of function calls (because of some peculiarity of concurrent
execution and/or signal processing).
2024-11-21 18:03:33 +04:00
Kelson
63b421e6d3
Merge pull request #1250 from kiwix/translatewiki
Localisation updates from https://translatewiki.net.
2024-11-21 06:40:51 +01:00
translatewiki.net
2d2f268555
Localisation updates from https://translatewiki.net. 2024-11-18 13:06:29 +01:00
Kelson
5d7eb1ad43
Merge pull request #1143 from kiwix/Issue#44-tts
Implement Basic Text to Speech
2024-11-15 17:54:28 +01:00
ShaopengLin
e3106ea566 Disable TTS If No Such QT Module
Some systems or QT versions might not have or the module is not available.
2024-11-15 02:51:33 -05:00
ShaopengLin
de1b7bb471 Proper Styling for TSS 2024-11-15 02:48:14 -05:00
ShaopengLin
5b298ddc0b Introduce KiwixApp::ToggleReading{Voice,Language}
Show the TTS bar and popup the respective selector on shortcut for accessibility.
2024-11-15 02:46:00 -05:00
ShaopengLin
f992bc5235 Restart Speech When TTS Language/Voice Changes 2024-11-15 01:45:04 -05:00
ShaopengLin
414b8a7ca5 Save Voice Selected For Each Lanugage
Keep track of the voices so user do not need to reconfigure.
2024-11-15 01:45:04 -05:00
ShaopengLin
9765987203 TTS Lanugage Matches Zim Locale
Tabs are by default Zim's Locale
2024-11-15 01:45:04 -05:00
ShaopengLin
8df319edd5 Added Voice Selector to TTS Bar 2024-11-15 01:45:03 -05:00
ShaopengLin
4c30141bf6 TTS Language Selector Popup On-Click Anywhere
Rather than only the arrow, clicking any place on the combobox should popup the selector
2024-11-15 01:44:26 -05:00
ShaopengLin
edb964165e TTS Lanugage Selector Entries Are Read-Only
The line edit should not be edit/highlight/selectable.
2024-11-15 01:44:26 -05:00
ShaopengLin
0b37a51a7e Added Language Selector to TTS Bar 2024-11-15 01:44:26 -05:00
ShaopengLin
8f4064b674 ESC Key Closes TTS Bar 2024-11-15 01:44:26 -05:00
ShaopengLin
c95528e7a0 Add Close Button to TTS Bar
Bar is default closed and shown on any speech activation.
2024-11-15 01:44:26 -05:00
ShaopengLin
9acefb1634 Introduce KiwixApp::ReadStopAction
Add shortcut on keyboard to stop reading for accessibility.
2024-11-15 01:43:32 -05:00
ShaopengLin
29bbc44b58 Introduce texttospeechbar.ui
Added the bar at bottom of webpage. Intoduced the stop speaking button.
2024-11-15 01:33:17 -05:00
ShaopengLin
815debd0ff TTS Actions Added to Right Click ContextMenu 2024-11-15 01:33:17 -05:00
ShaopengLin
b858c0d664 Introduce texttospeechbar.{h,cpp}
Basic Reading of Articles or Selected Texts.
2024-11-15 01:33:00 -05:00
Kelson
1a0580d2c2
Merge pull request #1246 from kiwix/Bugfix-toc-switch-tab
BugFix: Prevent crashes from tab switches due to Table Of Content
2024-11-14 08:46:49 +01:00
ShaopengLin
b5d3ff0901 BugFix Crash Scenario When Switch Tab
Qt's WebChannel's signal JsonObject references are unreliable, so use QString for parsing. Also added guard against a potential nullptr access.
2024-11-13 16:21:59 -05:00
Kelson
0beea2d73f
Merge pull request #1229 from kiwix/translatewiki
Localisation updates from https://translatewiki.net.
2024-11-13 20:26:16 +01:00
translatewiki.net
f1eb7e7ec2 Localisation updates from https://translatewiki.net. 2024-11-13 20:18:33 +01:00
Kelson
b2aa32ab78
Merge pull request #1237 from kiwix/Issue#42-toc-qtree-alternative
Introduce Table of Content Without Intense JS Invasion
2024-11-13 20:18:10 +01:00
ShaopengLin
36a2782a38 Add Tooltip to TOC
Elided item text is expanded here.
2024-11-13 20:10:17 +01:00
ShaopengLin
418f3e4562 Proper Styling to TOC 2024-11-13 20:10:17 +01:00
ShaopengLin
7311ac05af Proper Font and Sizes for TOC 2024-11-13 20:10:17 +01:00
ShaopengLin
5977cae3c5 Add Hide Button to TOC 2024-11-13 20:10:17 +01:00
ShaopengLin
b700b4e1eb Number TOC Header Entries 2024-11-13 20:10:17 +01:00
ShaopengLin
bb5f901f2a Navigate to Header On Click in TOC
Setting URL with anchor hash will act as navigation.
2024-11-13 20:10:17 +01:00
ShaopengLin
c3856cc79d Connect Sidebar to Display Table Of Content
Recursively load the header JSON.
2024-11-13 20:10:17 +01:00
ShaopengLin
befe60ba42 Signal Anchored Headers Parsed from JS
Signal emits the headers in pre-order in JSON format
2024-11-13 20:10:17 +01:00
ShaopengLin
d4bb28bb08 Ensure ReadingList&TOC display states consistent
Only one should be in checked state.
2024-11-13 20:10:17 +01:00
ShaopengLin
7d9efd5d6b Enter tableofcontentbar.{h,cpp,ui}
Re-enabled ToggleTOCAction to display the bar.
2024-11-13 20:10:17 +01:00
ShaopengLin
2b33686d40 Introduce KiwixWebChannelObject.{h, cpp}
Add channel to communicate between web page and Qt
2024-11-13 20:10:17 +01:00