-
Notifications
You must be signed in to change notification settings - Fork 790
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(browser,ui): port to Qt WebEngine #1125
Conversation
I would really like adding support for Qt WebEngine, but without losing backend Qt WebKit at least as a build option. Refactoring out the @kaygdev Would you be interested in continuing to work on this PR to land it as an option, rather than a replacement? I see the need for |
Hi trollixx, Sorry for the late response. I can change the replacement of QWebKit to a build option. However, this will take some time, because I currently have absolutely no time. I hope/think that this will change in spring. |
Build time option is what Zeal used to have a while back, when QWebEngine was quite unstable. I believe it's much better now, but I don't want to drop support for Qt WebKit. Also it would be really great to use web engine provided by the platform on Windows, and that require having a proper abstraction layer. I'll close this for now, feel free to reopen or create a new PR whenever you get time to work on this. It'd would also be better to discuss the design beforehand. Thanks! |
After spending more time figuring out how to deal with dual backend, and testing out this PR, I think it'd be much better to ship the next version of Zeal with Qt WebEngine rather than wait on the updated Qt WebKit. Once the next QtWK is released we can reassess the situation, and add it as the second backend. I think developing and abstraction layer will also be easier with WK2 based QtWK. |
@kaygdev I'll rebase your changes on top of the current master, and merge. |
0a0d058
to
59fc0bb
Compare
Hi trollixx, thanks for accepting and rebasing my pull request. You can contact me when a new version of Webkit is available. I hope I have time then and can support you with the implementation. |
59f93f8
to
a110d73
Compare
0afeac5
to
9132bf9
Compare
957e462
to
08e8a24
Compare
filter: invert(1) hue-rotate(180deg) contrast(120%) !important; | ||
} | ||
|
||
::-webkit-scrollbar { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think scroll bars should follow the system theme not web page, will remove this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem with this was, in dark mode I have a complete dark window but with bright scrollbars in the docset part. The WebEngine don't use the the scrollbar style from the Qt Application.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see. OK, let's keep this for now. In general I think the dark mode should be smarter and follow application's theme.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately, it's a bit broken, no buttons. I'll look into styling scroll bars later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have always steadfastly refused to use ::-webkit-scrollbar styling because it mangles the scrollbar in this way. Hopefully they’ll follow Firefox’s lead soon, in implementing scrollbar-color and the rest of that lot, and in defaulting to a dark scrollbar (without ruining the controls) on dark content.
This also fixes #865 tested this ci build https://ci.appveyor.com/project/zealdocs/zeal/builds/32459448 on a windows surface |
@asouini thanks for reporting! |
Porting from the obsolete QWebKit to the QWebEngine. Most features should work with it (QWebEngine does not have all features like QWebKit).
In addition, this modification blocks requests from local pages to web pages. Some documentation sets track the user with Google Analytics, this is now blocked.