Sotoki zim file use redirection to article not in the same "directory".
So it breaks relative urls.
Instead of providing the content of the target entry, we must redirect
to the target entry. So, relative url are not broken.
Fixes#384, #206
Connect the &QWebEnginePage::linkHovered signal to set the m_linkHovered
member.
The Ctrl + Click and middle click events are intercepted to directly open the m_linkHovered
variable if it's an external link
We know this is a search request base on the "tld" of the domain.
We render the search using the kiwix::SearchRenederer.
As now we can have a tld (".search") of more than 4 char, we must get
the zimId by spliting the url on "." instead of removing 4 char.
We don't need to configure the (default) profile each time we create a
new web page.
Let's create a specific profile for the application and use it everywhere.
This is the profile who is responsible to :
- configure itself with the schemeHandler for "zim"
- handle the download (this probably fix a bug if a user close the page
while a download associated to the page is running)
`kiwix::Library` now have a feature to directly get a reader from
the library. It also use a map to avoid creating several readers.
Use it instead of managing our own reader map.
New field "download path" in the settings page.
To start a download it now uses the download path stored in the settings. Use the new api
of https://github.com/kiwix/kiwix-lib/pull/310 to work.
The program crashes because it tries to use mp_downloader->getAria2LaunchCmd()
but the mp_downloader is null if the aria2 launch command fail.
Now the program displays an error message to warn users that all download fct will not working.
This PR https://github.com/kiwix/kiwix-lib/pull/306 is needed in order to display the aria2 launch cmd
The method `getAria2LaunchCmd` doesn't exist in kiwix-lib.
Remove it as it now avoid kiwix-desktop to compile correctly.
Proper message will be displayed correctly when #351 will be merged.
Because the close tab button is now a custom QToolButton, when you press
it from another tab, we have to refer to the cursor position to know the
index of the tab.