martinrotter / rssguard

Feed reader (and podcast player) which supports RSS/ATOM/JSON and many web-based feed services.
GNU General Public License v3.0
1.52k stars 123 forks source link

[BUG]: Smooth scrolling on preview pane (with webengine) #793

Closed alexjp closed 1 year ago

alexjp commented 1 year ago

Brief description of the issue

Hi!

I am using rssguard, development builds with qt6, on wayland.

I notice that when previewing an rss article on the preview article pane (in my case, on the bottom), the scrolling is not "smooth scrolling". I can load the full page by clicking on the "URL" link, and still not smooth.

If I open the full page on a internal browser tab, it has "smooth scrolling".

One weird thing is:

If I go into settings of a feed and enable "Open articles via their url automatically", it will then have "smooth scrolling" on the preview article pane. More weird.... other feeds that don't have that option also now have "smooth scrolling". (even the same feed where it was enabled, if I disable that setting, it still has "smooth scrolling").

But if I restart rssguard, it all comes back again to no "smooth scrolling". (in the case of no feed having that option of "open articles via their url automatically" enabled).

How to reproduce the bug?

  1. Have no feed with "Open articles via their url automatically"
  2. Open feed
  3. Scroll up and down
  4. Notice that it isn't smooth

What was the expected result?

Expected "smooth scrolling" on the preview pane.

What actually happened?

"smooth scrolling" was not active on the preview article pane.

Debug log

time=" 0.120" type="debug" -> core: Initializing settings in '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/config/config.ini' (non-portable way). time=" 0.190" type="info" ->

GL Type: desktop Surface Type: OpenGL Surface Profile: CompatibilityProfile Surface Version: 4.6 QSG RHI Backend: OpenGL Using Supported QSG Backend: yes Using Software Dynamic GL: no Using Multithreaded OpenGL: yes

Init Parameters:

time=" 0.632" type="debug" -> database: File-based SQLite database connection 'DatabaseFactory' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 0.632" type="debug" -> database: File-based SQLite database has version '2'. time=" 0.633" type="debug" -> gui: Available icon theme paths: QList(/var/lib/flatpak/exports/share/icons, /usr/share/icons, :/icons, :/graphics, /home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/icons, /tmp/.mount_rssguaKVOmlb/usr/bin/icons) time=" 0.638" type="debug" -> gui: Icon theme 'breeze' already loaded. time=" 0.641" type="debug" -> gui: Found path of base skin: ':/skins/nudus-base'. time=" 0.641" type="debug" -> gui: Trying to load base file ':/skins/nudus-base/html_wrapper.html' for the skin. time=" 0.641" type="debug" -> gui: Local file ':/skins/nudus-light/html_style.css' exists, using it for the skin. time=" 0.641" type="debug" -> gui: Trying to load base file ':/skins/nudus-base/html_enclosure_image.html' for the skin. time=" 0.641" type="debug" -> gui: Trying to load base file ':/skins/nudus-base/html_single_message.html' for the skin. time=" 0.641" type="debug" -> gui: Trying to load base file ':/skins/nudus-base/html_enclosure_every.html' for the skin. time=" 0.641" type="debug" -> gui: Local file ':/skins/nudus-light/qt_style.qss' exists, using it for the skin. time=" 0.641" type="debug" -> gui: Trying to load base file ':/skins/nudus-base/html_adblocked.html' for the skin. time=" 0.643" type="debug" -> gui: Setting style: 'Fusion'. time=" 0.651" type="debug" -> gui: Skin 'nudus-light' loaded. time=" 0.665" type="debug" -> network: Persistent web data storage path: '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/web/storage'. time=" 0.665" type="debug" -> network: Using application-wide proxy to be system's default proxy. time=" 0.703" type="debug" -> core: OpenSSL version: 'OpenSSL 1.1.1f 31 Mar 2020'. time=" 0.703" type="debug" -> core: OpenSSL supported: 'true'. time=" 0.703" type="debug" -> core: Starting RSS Guard 4.2.4. time=" 0.704" type="debug" -> core: Instantiated class 'Application'. time=" 0.705" type="debug" -> core: Starting to load active localization. Desired localization is 'pt_PT'. time=" 0.707" type="debug" -> core: Application localization 'pt_PT' loaded successfully, specifically sublocalization 'pt_PT' was loaded. time=" 0.707" type="debug" -> core: Qt localization 'pt_PT' loaded successfully. time=" 0.721" type="debug" -> database: SQLite database connection 'MessagesModel' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 0.750" type="debug" -> message-model: Repopulated model, SQL statement is now: 'SELECT Messages.id, Messages.is_read, Messages.is_important, Messages.is_deleted, Messages.is_pdeleted, Messages.feed, Messages.title, Messages.url, Messages.author, Messages.date_created, Messages.contents, Messages.enclosures, Messages.score, Messages.account_id, Messages.custom_id, Messages.custom_hash, Feeds.title, CASE WHEN length(Messages.enclosures) > 10 THEN 'true' ELSE 'false' END AS has_enclosures FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE 0 > 1;'. time=" 0.750" type="debug" -> core: Auto-download timer started with interval 60000 ms. time=" 0.750" type="debug" -> core: Creating FeedDownloader singleton. time=" 0.750" type="debug" -> core: Requesting update for all feeds on application startup. time=" 0.759" type="debug" -> gui: Creating main application form in thread: '0x7f8bf5e609c0'. time=" 0.854" type="debug" -> gui: Current row changed - proxy 'QModelIndex(-1,-1,0x0,QObject(0x0))', source 'QModelIndex(-1,-1,0x0,QObject(0x0))'. time=" 0.899" type="warning" -> network: Using application-wide proxy. time=" 0.900" type="debug" -> network: Settings of BaseNetworkAccessManager loaded. time=" 1.202" type="debug" -> gui: Creating tray icon menu. time=" 1.202" type="debug" -> CTRL is NOT pressed while sorting articles - sorting with standard mode. time=" 1.203" type="debug" -> message-model: Repopulated model, SQL statement is now: 'SELECT Messages.id, Messages.is_read, Messages.is_important, Messages.is_deleted, Messages.is_pdeleted, Messages.feed, Messages.title, Messages.url, Messages.author, Messages.date_created, Messages.contents, Messages.enclosures, Messages.score, Messages.account_id, Messages.custom_id, Messages.custom_hash, Feeds.title, CASE WHEN length(Messages.enclosures) > 10 THEN 'true' ELSE 'false' END AS has_enclosures FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE 0 > 1 ORDER BY Messages.id DESC;'. time=" 1.203" type="debug" -> gui: Reloading of msg selections took 0 miliseconds. time=" 1.342" type="debug" -> CTRL is NOT pressed while sorting articles - sorting with standard mode. time=" 1.342" type="debug" -> message-model: Repopulated model, SQL statement is now: 'SELECT Messages.id, Messages.is_read, Messages.is_important, Messages.is_deleted, Messages.is_pdeleted, Messages.feed, Messages.title, Messages.url, Messages.author, Messages.date_created, Messages.contents, Messages.enclosures, Messages.score, Messages.account_id, Messages.custom_id, Messages.custom_hash, Feeds.title, CASE WHEN length(Messages.enclosures) > 10 THEN 'true' ELSE 'false' END AS has_enclosures FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE 0 > 1 ORDER BY Messages.date_created DESC, Messages.id DESC;'. time=" 1.343" type="debug" -> core: Showing the main window when the application is starting. time=" 1.350" type="debug" -> database: SQLite database connection 'FeedReader' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.350" type="debug" -> database: SQLite database connection 'FeedlyEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.351" type="debug" -> database: SQLite database connection 'GmailEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.352" type="debug" -> database: SQLite database connection 'GreaderEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.353" type="debug" -> database: SQLite database connection 'OwnCloudServiceEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.354" type="debug" -> database: SQLite database connection 'StandardServiceEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.365" type="debug" -> core: Filter accepts row 'alex (RSS/ATOM/JSON)' and filter result is: 'true'. time=" 1.365" type="debug" -> database: SQLite database connection 'StandardServiceRoot' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.366" type="debug" -> core: Custom ID of feed when loading from DB is '19'. time=" 1.367" type="debug" -> core: Custom ID of feed when loading from DB is '21'. time=" 1.367" type="debug" -> core: Custom ID of feed when loading from DB is '22'. time=" 1.367" type="debug" -> core: Custom ID of feed when loading from DB is '23'. time=" 1.367" type="debug" -> core: Custom ID of feed when loading from DB is '24'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '41'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '42'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '43'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '44'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '45'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '46'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '67'. time=" 1.368" type="debug" -> core: Custom ID of feed when loading from DB is '68'. time=" 1.369" type="debug" -> database: SQLite database connection 'RecycleBin' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.370" type="debug" -> database: SQLite database connection 'ImportantNode' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.372" type="debug" -> database: SQLite database connection 'RootItem' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.373" type="debug" -> database: SQLite connection 'StandardServiceRoot' is already active. time=" 1.373" type="debug" -> database: SQLite database connection 'StandardServiceRoot' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.376" type="debug" -> database: SQLite database connection 'TtRssServiceEntryPoint' to file '/home/alex/.local/share/kactivitymanagerd/activities/9dfb8733-c47a-4246-9fd8-5ca7293e97c8/.config/RSS Guard 4/database/database.db' seems to be established. time=" 1.382" type="debug" -> gui: Feed list item expanded - alex (RSS/ATOM/JSON) time=" 1.382" type="debug" -> core: Filter accepts row 'Lixeira' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'Important articles' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'Unread articles' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'Rótulos' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'Blogs' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'invent.kde.org' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'github' and filter result is: 'true'. time=" 1.382" type="debug" -> core: Filter accepts row 'Social' and filter result is: 'true'. time=" 1.382" type="debug" -> gui: Feed list item expanded - Rótulos time=" 1.382" type="debug" -> gui: Feed list item expanded - Blogs time=" 1.382" type="debug" -> gui: Feed list item expanded - invent.kde.org time=" 1.382" type="debug" -> gui: Feed list item expanded - github time=" 1.382" type="debug" -> gui: Feed list item expanded - Social time=" 1.382" type="debug" -> core: No execution message received from other app instances. time=" 1.387" type="debug" -> core: Filter accepts row 'alex (RSS/ATOM/JSON)' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Blogs' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'invent.kde.org' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'github' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Social' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Rótulos' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Important articles' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Unread articles' and filter result is: 'true'. time=" 1.387" type="debug" -> core: Filter accepts row 'Lixeira' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'David Edmundson's Web Log' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Adventures in Linux and KDE' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Planet KDE | English' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'KDE.news' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'qutebrowser development blog' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'KWin:master commits' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Plasma Desktop:master commits' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Plasma Workspace:master commits' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Release notes from qutebrowser' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Recent Commits to qutebrowser:qt6-v2' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Release notes from bismuth' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Release notes from klassy' and filter result is: 'true'. time=" 1.388" type="debug" -> core: Filter accepts row 'Kreddit, the KDE Community on Reddit' and filter result is: 'true'. time=" 1.683" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 1.683" type="debug" -> core: Silencing GUI message: ''. time=" 6.088" type="debug" -> CTRL is NOT pressed while sorting articles - sorting with standard mode. time=" 6.088" type="debug" -> Displaying messages from feeds IDs: ''44'' and URLs: 'https://planet.kde.org/global/atom.xml'. time=" 6.096" type="debug" -> message-model: Repopulated model, SQL statement is now: 'SELECT Messages.id, Messages.is_read, Messages.is_important, Messages.is_deleted, Messages.is_pdeleted, Messages.feed, Messages.title, Messages.url, Messages.author, Messages.date_created, Messages.contents, Messages.enclosures, Messages.score, Messages.account_id, Messages.custom_id, Messages.custom_hash, Feeds.title, CASE WHEN length(Messages.enclosures) > 10 THEN 'true' ELSE 'false' END AS has_enclosures FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE Feeds.custom_id IN ('44') AND Messages.is_deleted = 0 AND Messages.is_pdeleted = 0 AND Messages.account_id = 1 ORDER BY Messages.date_created DESC, Messages.id DESC;'. time=" 6.097" type="debug" -> core: Filter accepts row 'alex (RSS/ATOM/JSON)' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Blogs' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'invent.kde.org' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'github' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Social' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Rótulos' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Important articles' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Unread articles' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'Lixeira' and filter result is: 'true'. time=" 6.097" type="debug" -> core: Filter accepts row 'David Edmundson's Web Log' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Adventures in Linux and KDE' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Planet KDE | English' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'KDE.news' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'qutebrowser development blog' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'KWin:master commits' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Plasma Desktop:master commits' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Plasma Workspace:master commits' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Release notes from bismuth' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Recent Commits to qutebrowser:qt6-v2' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Release notes from qutebrowser' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Release notes from klassy' and filter result is: 'true'. time=" 6.098" type="debug" -> core: Filter accepts row 'Kreddit, the KDE Community on Reddit' and filter result is: 'true'. time=" 6.170" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 6.171" type="debug" -> core: Silencing GUI message: ''. time=" 10.421" type="debug" -> gui: Message list got focus with reason 'Qt::MouseFocusReason'. time=" 10.421" type="debug" -> gui: Current row changed - proxy 'QModelIndex(7,6,0x55860c588250,MessagesProxyModel(0x55860c6048a0, name = MessagesProxyModel))', source 'QModelIndex(7,6,0x0,MessagesModel(0x55860c5bd370))'. time=" 10.479" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 10.479" type="debug" -> core: Silencing GUI message: ''. time=" 16.023" type="debug" -> gui: Hovered link: 'QUrl(https://pointieststick.com/2022/09/02/this-week-in-kde-day-color/?utm_source=atom_feed)'. time=" 16.023" type="debug" -> core: Silencing GUI message: 'https://pointieststick.com/2022/09/02/this-week-in-kde-day-color/?utm_source=atom_feed'. time=" 16.617" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 16.617" type="debug" -> core: Silencing GUI message: ''. time=" 16.625" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 16.625" type="debug" -> core: Silencing GUI message: ''. time=" 17.726" type="warning" -> javascript: Failed to execute 'postMessage' on 'DOMWindow': The target origin provided ('https://r-login.wordpress.com') does not match the recipient window's origin ('https://pointieststick.com'). (source: https://r-login.wordpress.com/remote-login.php?wpcom_remote_login=key&origin=aHR0cHM6Ly9wb2ludGllc3RzdGljay5jb20%3D&wpcomid=140354881&time=1662522140:3) time=" 23.557" type="debug" -> gui: Hovered link: 'QUrl(https://community.kde.org/Infrastructure/GitLab)'. time=" 23.557" type="debug" -> core: Silencing GUI message: 'https://community.kde.org/Infrastructure/GitLab'. time=" 23.789" type="debug" -> gui: Hovered link: 'QUrl()'. time=" 23.790" type="debug" -> core: Silencing GUI message: ''. time=" 25.561" type="debug" -> gui: Main window's close event time=" 25.561" type="debug" -> gui: Main window's hide event time=" 25.564" type="debug" -> core: Cleaning up resources and saving application state. time=" 25.564" type="debug" -> core: Close lock was obtained safely. time=" 25.565" type="debug" -> core: Stopping StandardServiceRoot instance. time=" 25.565" type="debug" -> feed-downloader: Destroying FeedDownloader instance. time=" 25.569" type="debug" -> gui: Destroying FormMain instance. time=" 25.569" type="debug" -> gui: Destroying TabWidget instance. time=" 25.569" type="debug" -> gui: Destroying FeedMessageViewer instance. time=" 25.570" type="debug" -> gui: Destroying BaseToolBar instance. time=" 25.580" type="debug" -> gui: Destroying MessagesView instance. time=" 25.580" type="debug" -> gui: Destroying BaseToolBar instance. time=" 25.580" type="debug" -> gui: Destroying FeedsView instance. time=" 25.581" type="debug" -> gui: Destroying TabBar instance. time=" 25.582" type="debug" -> gui: Destroying StatusBar instance. time=" 25.585" type="debug" -> core: Destroying Application instance. time=" 25.585" type="debug" -> core: Destroying Mutex instance. time=" 25.606" type="debug" -> gui: Destroying IconFactory instance. time=" 25.606" type="debug" -> core: Destroying FeedReader instance. time=" 25.606" type="debug" -> feed-model: Destroying FeedsModel instance. time=" 25.606" type="debug" -> feed-model: Destroying FeedsProxyModel instance time=" 25.606" type="debug" -> message-model: Destroying MessagesModel instance. time=" 25.607" type="debug" -> message-model: Destroying MessagesProxyModel instance.

Operating system and version

martinrotter commented 1 year ago

managed to reproduce

martinrotter commented 1 year ago

i was not able to pinpoint the cause of this, i am lost for now

alexjp commented 1 year ago

i was not able to pinpoint the cause of this, i am lost for now

:( well... although smooth scrolling is really cool, its not like "I can't read the articles" without it :)

Thank you, hope you manage to pinpoint it later!

alexjp commented 1 year ago

quick update: I think i either solved it or workaround it:

launching rssguard with:

export QTWEBENGINE_CHROMIUM_FLAGS=--enable-features=VaapiVideoEncoder,VaapiVideoDecoder,CanvasOopRasterization --use-gl=desktop --enable-webrtc-pipewire-capturer   --ignore-gpu-blocklist   --enable-gpu-rasterization   --enable-zero-copy   --disable-gpu-driver-bug-workaround   --enable-oop-rasterization   --disable-sync-preferences   --enable-hardware-overlays   --enable-smooth-scrolling   --enable-quic   --password-store=gnome --disable-features=UseChromeOSDirectVideoDecoder

environment variable set, and it seems to be consistently always having smooth scroll!

martinrotter commented 1 year ago

QTWEBENGINE_CHROMIUM_FLAGS

I tested it and it really works. I will incorporate this as a switch by-off-default option into settings.

martinrotter commented 1 year ago

Actually only "--enable-smooth-scrolling" is enough.

martinrotter commented 1 year ago

OK, I fixed it.

I added extra setting to allow user to tweak THE environment variable and added proper default value for solving smooth scrolling.

image

alexjp commented 1 year ago

Nice :) thanks !!

yes, I was thinking that probably only that flag is needed. but if one is using wayland, with those flags, the webengine in chrome://gpu is mostly green :P ( it should be all green, haven't figured it out why it isn't on video decode).

image

your solution of custom flags is great :) thank you very much !