Depend on tidy API for attribute extraction rather than regexes.
1. htmlparser methods return nodes instead of pre-parsed strings
2. htmlparser provides some methods to extract text/attr from nodes
Gitlab: #1248
Change-Id: I367d703680938fb0b7c5055ac41e079c1322da30
Introduces MessageParser to encapsulate text treatment for raw text messages.
The async parsing sequence is as follows:
- Markdown -> HTML (md4c)
- link coloration (tidy-html5)
- notify UI
- request link preview info from PreviewEngine for the first link
- Preview engine uses QtNetwork instead of QtWebengine
- Linkification is handled by MessageParser instead of linkify.js
QtWebengine is no longer required for message parsing.
Gitlab: #1033
Gitlab: #855
Change-Id: Ief9b91aa291caf284f08230acaf57976f80fa05b