manuskript/manuskript/ui/views
Jan Wester d626d3ba75 Fixed & robustified image tooltips (issue #593)
Last time I touched this code, I went in looking for a specific problem,
and came out with a fix specific to that issue. That fix was not wrong,
yet it hardly covered all the problems present in the code once one took
into account issues like:

- local vs remote resources,
- relative vs absolute paths,
- different operating systems behaving differently, and
- Qt being uniquely buggy on different platforms.

The major part of it was fixed by using QUrl.fromUserInput(), which does
the exact kind of auto-detection for the nature of the resource that we
were in need of.

The rest of the issues were fixed by creating a number of test cases and
fixing problems as they popped up. Testing was done in Windows & Ubunty
against the above-mentioned test cases, which can be found in PR #629.

Regarding ImageTooltip.supportedSchemes

When QUrl.fromUserInput() misidentifies the scheme on Linux, it causes
all resemblance between the original request and the reply.request() in
the finished() signal to be lost, which results in this item getting
stuck in the ImageTooltip processing pipeline.

Limiting the supported schemes to the ones most commonly encountered
('file', 'http', 'https' and the schema-less local paths) is the only
reliable method I have found to work around this particular bug in Qt.
2019-09-10 11:30:35 -06:00
..
__init__.py Renaming source folder 2016-02-06 08:38:33 +01:00
basicItemView.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
basicItemView_ui.py Subclass textEditView 2017-11-27 15:00:07 +01:00
basicItemView_ui.ui Subclass textEditView 2017-11-27 15:00:07 +01:00
characterTreeView.py Changes every Enum to IntEnum 2017-11-15 21:05:48 +01:00
chkOutlineCompile.py Checkpoint: refactoring 2017-11-18 20:53:10 +01:00
cmbOutlineCharacterChoser.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
cmbOutlineLabelChoser.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
cmbOutlineStatusChoser.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
corkDelegate.py Fixes #246: Index card status can spillover 2017-12-04 13:52:58 +01:00
corkView.py Fix corkView background image on Windows 2019-02-26 13:25:30 -07:00
dndView.py Cleaning up imports, at last 2016-02-06 12:34:22 +01:00
lineEditView.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
MDEditCompleter.py Add a Spellchecker abstraction layer and clean up code 2019-04-30 09:54:31 -06:00
MDEditView.py Fixed & robustified image tooltips (issue #593) 2019-09-10 11:30:35 -06:00
metadataView.py Fix typos in code comments, invisible to end-users. 2018-01-29 10:30:41 -07:00
metadataView_ui.py Subclass textEditView 2017-11-27 15:00:07 +01:00
metadataView_ui.ui Subclass textEditView 2017-11-27 15:00:07 +01:00
outlineBasics.py Fix occasional crashes when (re)moving items 2019-05-19 09:33:19 -06:00
outlineDelegates.py Checkpoint: refactoring 2017-11-18 20:53:10 +01:00
outlineView.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
PDFViewer.py Adds QtWebEngine support, while keeping QtWebKit support. 2017-06-15 15:24:06 +02:00
plotDelegate.py Fix typos that are visible to end-users. 2018-01-29 10:30:41 -07:00
plotTreeView.py Changes every Enum to IntEnum 2017-11-15 21:05:48 +01:00
propertiesView.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
propertiesView_ui.py Fix background of popup menus that was transparent (black) 2019-02-27 10:49:05 -07:00
propertiesView_ui.ui Fix background of popup menus that was transparent (black) 2019-02-27 10:49:05 -07:00
sldImportance.py Moves sldImportance to views folder, where it belongs 2016-03-03 18:55:57 +01:00
sldImportance_ui.py Moves sldImportance to views folder, where it belongs 2016-03-03 18:55:57 +01:00
sldImportance_ui.ui Moves sldImportance to views folder, where it belongs 2016-03-03 18:55:57 +01:00
storylineView.py Changes Outline enums to IntEnum 2017-11-15 20:58:12 +01:00
storylineView_ui.py Adds a few more icons 2017-10-16 10:48:04 +02:00
storylineView_ui.ui Adds a few more icons 2017-10-16 10:48:04 +02:00
textEditView.py spellcheck: show 'add to dictionary' even if a word has no suggestions 2019-04-30 09:54:31 -06:00
treeDelegates.py Fix typos in code comments, invisible to end-users. 2018-01-29 10:30:41 -07:00
treeView.py Merge branch 'master' into develop 2017-11-30 10:13:25 +01:00
webView.py Conditional import of QtWebEngine or QtWebKit 2017-06-20 15:24:15 +02:00