[WebBrowser Plasmoid] Port to QtWebEngine
ClosedPublic

Authored by broulik on Jan 23 2018, 11:36 AM.

Details

Summary

QtWebkit is old, unmaintained, possibly insecure, and also has quite a few bugs nowadays.
This also adds a couple of smaller features while at it:

  • Reload button turns into a Stop button while loading
  • Cursor changes shape over links
  • Address bar selects all text when clicked to ease typing a completely new address
  • Browser forward/back button on the mouse work

as well as a slew of features brought in by QtWebEngine, such as:

  • Text selection support
  • Context menu with "Copy link" and others

BUG: 371023
BUG: 361939
FIXED-IN: 5.13.0

Test Plan

QtWebEngine doesn't auto-zoom to fit as QtWebKit did, so I tried to replicate that using zoomFactor.

  • Navigated a couple of pages
  • It remembered the last visited page when plasma is restarted
  • Scrolling with mouse wheel now works
  • Context menus are using QQC plasma style

Diff Detail

Repository
R114 Plasma Addons
Lint
Lint Skipped
Unit
Unit Tests Skipped
broulik created this revision.Jan 23 2018, 11:36 AM
Restricted Application added a project: Plasma. · View Herald TranscriptJan 23 2018, 11:36 AM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
broulik requested review of this revision.Jan 23 2018, 11:36 AM
broulik edited the summary of this revision. (Show Details)Jan 23 2018, 11:40 AM
broulik added inline comments.Jan 23 2018, 1:46 PM
applets/webbrowser/contents/ui/main.qml
1

QTBUG-65942

Looks like it also fixes basically everything in 371023, no? That bug is a bit of a hodgepodge, so if it were me, I'd also add BUG: 371023 and ask the reporter to file new bugs for any remaining issues.

ngraham accepted this revision.Jan 28 2018, 11:37 PM

Fantastic! Works much better now. In testing, it looks like this does fix all the concerns in 371023.

This revision is now accepted and ready to land.Jan 28 2018, 11:37 PM
ngraham edited the summary of this revision. (Show Details)Jan 28 2018, 11:37 PM
broulik updated this revision to Diff 27057.Feb 13 2018, 1:28 PM
broulik edited the test plan for this revision. (Show Details)
  • Make QtWebEngine optional. Had to move the files into a "package" subdir and Phab doesn't see that it's a move..
broulik updated this revision to Diff 27058.Feb 13 2018, 1:29 PM
  • Fix diff
broulik edited the summary of this revision. (Show Details)Feb 13 2018, 1:29 PM
This revision was automatically updated to reflect the committed changes.