Minutes of Plasma Hangout

Bhushan Shah bhush94 at gmail.com
Tue Mar 28 10:19:15 UTC 2017


Sorry for sending this late but here we go!

--- notes ---

Sho_

 * [General] Improved IconItem to make source size (and by implication aspect ratio, useful for sizing) available as implicit size
 * [Kicker] Ported custom image mode in compact representation from Image to IconItem, fixes missing hover highlight effect
 * [AppDash] Looking into making the delegate a bit more similar to FV (two text lines by default)
 * [Other] Looking into a QML Label bug where it elides text way too early
 * [Other] Some Yakuake hacking
 oh and maybe a nice news
 a while back i worked on a qt patch to fix qsfpm doing stupid and causing tons of unnecessary refreshs (e.g. costly icon reloads) in TM
 that patch didn't fly as-is but in course of the long log discussion on qt-dev dfaure came up with a nice approach that was merged
 my plan is to deal with the two things i mentioned i'm looking at + look into making yakuake and konvi releases so sitter hates me a little bit less

notmart:

 * triaging
 * high dpi support for Aurorae (pushed)
 * small compilation fix on modeltest (pushed)
 * desktop scripting functions for locking/unlocking the corona (pushed)
 * UI fixes for logout dialog (pushed)
 * mini edit mode for desktop: extra property for containment plasmoid, all handles open when toolbox is open (pushed)
 * Kirigami2: introduce ApplicationItem when ApplicationWindow can't be used (like gemini that neeeds to do its own window) https://phabricator.kde.org/D5166
 Diff 5166 "introduce ApplicationItem" [Needs Review] https://phabricator.kde.org/D5166
 now, pain-points for this week
 the main thing, i plan to do is to pester qt people as much as possible, with 3 qt changes i have rotting there since a long time
 https://codereview.qt-project.org/#/c/189158/
 https://codereview.qt-project.org/#/c/185946/
 https://codereview.qt-project.org/#/c/185259/
 and hopefully, getting something moved

kbroulik:


 Investigated and fixed fastblur not being applied to logout screen causing poor performance. User switcher needs same treatment eventually and also the style changes that were added to logout (e.g. bg contrast, darker bg etc)
 Fixed kdialog --attach arg (kf5 porting oversight), should get properly dimmed parent windows (on X) again, e.g. Save As window in Chrome browser
 Not much from me other than that, been snowboarding past week.
 nothing in particular, maybe will do some playing around with notifications or per-activity places (but won't promis on the latter, if you want to do it, sure, go ahead :D)
 also I'm quite eager about the browser ext but somewhat waiting for d_ed on that :)

d_ed:

 last week: I did some rewrite in xembedsniproxy so now we have a few methods for injecting the clicks into windows when activated via SNI
 Also worth noting on bugzilla, I'm putting all the generic "OMG my CPU is too high" into one bug of completely uselessness.  Then when we have an idea of something to investigate splitting that out into a new bug report.
 I actually now have two interesting leads to follow up, which could be quite encouraging. It's mostly waiting on this one bug reporter who's being useful

romangg:


 * Committed D4921 - should work without errors, could still need some additional work to simplify the code, but have other stuff to do at the moment
 Diff 4921 "[Menu] Harmonize openRelative placement" [Closed] https://phabricator.kde.org/D4921
 * DRM plugin and atomic mode setting rework in many areas. Needs reviews:
 ** D5118
 Diff 5118 "[DRM plugin] Remember static kernel objects, amplify use of DrmCrtc" [Needs Review] https://phabricator.kde.org/D5118
 ** D5179
 Diff 5179 "[DRM plugin] Reorganize DrmBuffer" [Needs Review] https://phabricator.kde.org/D5179
 ** D5191
 Diff 5191 "[DRM plugin] Correct Atomic Mode Setting" [Needs Review] https://phabricator.kde.org/D5191
 ** TODO/soon: Direct Scanout

bshah:

 - I'm remotely debugging Nexus 6P plasma mobile port for linux_unix-10
  - it throws weird error in libhybris linker : linker.cpp:2498 | DL_ERR("invalid maskwords for gnu_hash = 0x%x, in \"%s\" expecting power to two"
 - I am also mostly working on packaging side for plasma mobile on arch project
 For next week I am also continuing on this two things

--- log ---

15:31:37 <bshah> Okay.. so who is here for meeting?
15:31:42 <Sho_>  here
15:31:50 <bshah> notmart: kbroulik: Sho_: ivan||home: d_ed
15:31:57 <notmart>       meeting!
15:31:59 <notmart>       here
15:32:05 <kbroulik>      here
15:32:05 <d_ed>  I am here.
15:32:24 <bshah> okay anyone I missed?
15:32:26 <bshah> romangg:
15:32:34 <romangg>       yea
15:32:38 <bshah> also Riddell :)
15:32:51 <bshah> so.. Sho_ starts while we wait for others
15:33:08 <Sho_>  kinda short-ish this week
15:33:10 <Sho_>  * [General] Improved IconItem to make source size (and by implication aspect ratio, useful for sizing) available as implicit size
15:33:11 <Sho_>  * [Kicker] Ported custom image mode in compact representation from Image to IconItem, fixes missing hover highlight effect
15:33:13 <Sho_>  * [AppDash] Looking into making the delegate a bit more similar to FV (two text lines by default)
15:33:14 <Sho_>  * [Other] Looking into a QML Label bug where it elides text way too early
15:33:16 <Sho_>  * [Other] Some Yakuake hacking
15:34:03 <Sho_>  oh and maybe a nice news
15:34:22 <Sho_>  a while back i worked on a qt patch to fix qsfpm doing stupid and causing tons of unnecessary refreshs (e.g. costly icon reloads) in TM
15:34:41 <bshah> qsfpm?
15:34:45 <Sho_>  that patch didn't fly as-is but in course of the long log discussion on qt-dev dfaure came up with a nice approach that was merged
15:34:46 <kbroulik>      QSortFilterProxyModel
15:34:48 <bshah> oh.. QSortFilter..
15:34:49 <bshah> right
15:35:10 <Sho_>  that will save a lot of cycles in the panel
15:35:37 <kbroulik>      ftr https://codereview.qt-project.org/#/c/189066/
15:35:51 <Sho_>  that's it from my side
15:36:14 <bshah> okay..
15:36:18 <bshah> so next is notmart
15:36:41 <notmart>       ok, so first thing, last week
15:36:55 <notmart>       also short-ish, but at least got some long standing things merged
15:37:05 <notmart>       * triaging
15:37:06 <notmart>       * high dpi support for Aurorae (pushed)
15:37:08 <notmart>       * small compilation fix on modeltest (pushed)
15:37:10 <notmart>       * desktop scripting functions for locking/unlocking the corona (pushed)
15:37:11 <notmart>       * UI fixes for logout dialog (pushed)
15:37:13 <notmart>       * mini edit mode for desktop: extra property for containment plasmoid, all handles open when toolbox is open (pushed)
15:37:14 <notmart>       * Kirigami2: introduce ApplicationItem when ApplicationWindow can't be used (like gemini that neeeds to do its own window) https://phabricator.kde.org/D5166
15:37:14 <sKreamer>      Diff 5166 "introduce ApplicationItem" [Needs Review] https://phabricator.kde.org/D5166
15:37:19 <notmart>       now, pain-points for this week
15:37:57 <notmart>       the main thing, i plan to do is to pester qt people as much as possible, with 3 qt changes i have rotting there since a long time
15:38:03 <notmart>       https://codereview.qt-project.org/#/c/189158/
15:38:07 <notmart>       https://codereview.qt-project.org/#/c/185946/
15:38:11 <notmart>       https://codereview.qt-project.org/#/c/185259/
15:38:26 <notmart>       and hopefully, getting something moved
15:38:50 <notmart>       questions/next?
15:39:20 <bshah> if no questions.. its kbroulik's turn
15:39:24 <Sho_>  need help pestering?
15:39:40 <notmart>       Sho_: yeah, may be nice :)
15:39:52 <kbroulik>      Investigated and fixed fastblur not being applied to logout screen causing poor performance. User switcher needs same treatment eventually and also the style changes that were added to logout (e.g. bg contrast, darker bg etc)
15:39:52 <kbroulik>      Fixed kdialog --attach arg (kf5 porting oversight), should get properly dimmed parent windows (on X) again, e.g. Save As window in Chrome browser
15:39:52 <kbroulik>      Not much from me other than that, been snowboarding past week.
15:39:56 <Sho_>  oki will check them links after dinner
15:40:31 <notmart>       today i'll finish the build of a patched qt on the laptop to have the same test working on 2 machines to prove one of the comments wrong (or right, depends) then i'll probably ping fregl about them
15:40:37 <notmart>       want to be 100% sure of all 3 tough
15:42:00 <bshah> kbroulik: any plans for next week? :)
15:42:00 <notmart>       kbroulik: kudos for figuring out dimming of chrome :)
15:42:19 <notmart>       yeah, important we put plans in the meeting as well
15:42:44 <kbroulik>      nothing in particular, maybe will do some playing around with notifications or per-activity places (but won't promis on the latter, if you want to do it, sure, go ahead :D)
15:42:49 <Sho_>  my plan is to deal with the two things i mentioned i'm looking at + look into making yakuake and konvi releases so sitter hates me a little bit less
15:43:01 <kbroulik>      also I'm quite eager about the browser ext but somewhat waiting for d_ed on that :)
15:43:15 <d_ed>  I should be free now that the kwin patches are all done
15:43:21 <d_ed>  (from my side anyway)
15:43:24 <d_ed>  \o/
15:43:35 <bshah> also, its d_ed's turn now
15:43:40 <d_ed>  oh, how convenient
15:44:11 <Sho_>  (oh and some simplemenu stuff i have to do)
15:44:29 <d_ed>  last week: I did some rewrite in xembedsniproxy so now we have a few methods for injecting the clicks into windows when activated via SNI
15:45:30 <d_ed>  Also worth noting on bugzilla, I'm putting all the generic "OMG my CPU is too high" into one bug of completely uselessness.  Then when we have an idea of something to investigate splitting that out into a new bug report.
15:46:02 <d_ed>  I actually now have two interesting leads to follow up, which could be quite encouraging. It's mostly waiting on this one bug reporter who's being useful
15:46:25 <bshah> link? bug numbers?
15:46:25 <notmart>       yeah, good idea
15:46:39 <bshah> (.. I can search inbox but well :p)
15:46:39 <notmart>       what are the leads, curiosity?
15:47:14 <kbroulik>      notmart: the qt thing you're investigating on 3 computers is the ungrab mouse regression in Qt 5.8, right? I just again stumbled upon a bug report complaining about this on bko
15:47:23 <notmart>       even tough i already imagine d_ed in the end with a pipe and a funny hat saying elementary my dear watson
15:48:04 <d_ed>  1) some X window is updating a property like crazy, that causes XWindowTaskModel to do it's all it's thing.
15:48:05 <notmart>       kbroulik: ungrab mouse? wasn't really lookng into it at the moment, no?
15:48:15 <notmart>       kbroulik: bug #?
15:48:26 <notmart>       that should be looked more into as well
15:48:28 <d_ed>  and yes I know the QSFPM will fix some, but maybe it's  a property that can be cached and compared
15:48:51 <d_ed>  the second thing is QSGAnimationDriver seems to sometimes go mental
15:49:01 <kbroulik>      notmart: Bug 376277
15:49:01 <sKreamer>      KDE bug 376277 in plasmashell (System Tray) "Right clicking on a system tray icon causes keeps focus on the icon even if user has moved elsewhere" [normal,] https://bugs.kde.org/show_bug.cgi?id=376277
15:49:07 <d_ed>  it takes the rate to use based on the refresh rate of the primary monitor at the time plasmashell is started
15:49:13 <notmart>       d_ed: so may be cause by a particular external application that does weird shit with its windows?
15:49:15 <d_ed>  and from what I can see that never updates
15:49:30 <d_ed>  notmart: possible, I've given him a patch with some debug so we'll know what window and what property
15:49:45 <kbroulik>      well, new TM backend doesn't have batching, so when an app changes its window title 10.000 times it will freeze plasmashell for literally minutes
15:50:05 <notmart>       kbroulik: ah, yeah, i've seen the bug
15:50:14 <Sho_>  d_ed: the qsfpm will help a lot (currently any change to any data roll causes qsfpm to emit layoutChanged even if the change doesn't impact sorting at all, causing the view to do costly delegate work). that said, the old libtm compressed changes across 200ms and the new one doesn't
15:50:14 <kbroulik>      but I don't think this is responsible for the majority of cpu consumption complaints
15:50:27 <notmart>       and, in my two 5.8 systems i never managed to reproduce it (or the reports similar to it :/)
15:51:02 <notmart>       d_ed: oh, awesome
15:51:37 <bshah> alright.. move on?
15:51:39 <d_ed>  sure
15:51:46 <bshah> its romangg's turn
15:52:02 <romangg>       * Committed D4921 - should work without errors, could still need some additional work to simplify the code, but have other stuff to do at the moment
15:52:02 <sKreamer>      Diff 4921 "[Menu] Harmonize openRelative placement" [Closed] https://phabricator.kde.org/D4921
15:52:12 <romangg>       * DRM plugin and atomic mode setting rework in many areas. Needs reviews:
15:52:14 <romangg>       ** D5118
15:52:14 <sKreamer>      Diff 5118 "[DRM plugin] Remember static kernel objects, amplify use of DrmCrtc" [Needs Review] https://phabricator.kde.org/D5118
15:52:15 <romangg>       ** D5179
15:52:16 <sKreamer>      Diff 5179 "[DRM plugin] Reorganize DrmBuffer" [Needs Review] https://phabricator.kde.org/D5179
15:52:17 <romangg>       ** D5191
15:52:17 <sKreamer>      Diff 5191 "[DRM plugin] Correct Atomic Mode Setting" [Needs Review] https://phabricator.kde.org/D5191
15:52:18 <romangg>       ** TODO/soon: Direct Scanout
15:52:54 <bshah> for curious, what is direct scanout?
15:53:38 <romangg>       intercept a present before Gl kicks in and just scan out the wayland buffer directly without Gl context switches.
15:54:08 <romangg>       useful for fullscreen apps. basically what currently is done via compositor disable for wayland.
15:54:21 <bshah> okay
15:54:21 <d_ed>  romangg: talking of which, I spent a week with a weston developer week before last. mpv is apparently a great thing to test against
15:54:24 <Sho_>  i appreciate someone working on kwin performance stuff
15:55:01 <romangg>       d_ed: thanks for the tipp. what is also very good: neverball :D
15:55:20 <romangg>       you can execute it using XWayland or as Wayland native app!
15:55:39 <d_ed>  does your fullscreen thing work for XWyaland?
15:55:52 <d_ed>  I assumed that all went via SHM
15:56:00 <Sho_>  what about bouncy ball?
15:56:05 <Sho_>  :)
15:56:17 <bshah> :D
15:56:32 <romangg>       Xwayland works, but with tearing. XWayland doesn't use SHM. But SHM should also work.
15:56:48 <romangg>       the tearing in Xwayland is not my fault though: https://bugs.freedesktop.org/show_bug.cgi?id=99702
15:57:08 <kbroulik>      "it doesn't tear, it doesn't feel like X, please add tearing back!"
15:57:10 <romangg>       TLDR: XWayland uses a single buffer to paint into.
15:57:14 <romangg>       XD
15:57:23 <romangg>       kbroulik: for the full X experience
15:57:47 <romangg>       it's quite interesting that we didn't hit this problem on XWayland before.
15:58:01 <Sho_>  someone needs to look into making kwin_wayland work on qt 5.9
15:58:14 <Sho_>  so people not on 5.7 can use it again
15:58:33 <bshah> well... report bugs to qt? :P
15:59:19 <romangg>       One last thing:
15:59:26 <d_ed>  it works on my 5.8
16:00:01 <romangg>       last point: Now writing on my proposal for a GSoC project, in which I want to work on several things lacking in KWin Wayland sessions. Sorted by priority (imo):
16:00:10 <romangg>       ** Screen recording
16:00:11 <romangg>       ** Redshift
16:00:13 <romangg>       ** Thumbnails / window meta data
16:00:14 <romangg>       ** Multi GPU in DRM plugin
16:00:16 <romangg>       ** Page flips per output in Compositor-Scene-DRM path).
16:00:20 <romangg>       Probably I can't finish them all until end of GSoC, but I think they all need someone to start working on ASAP if we want the Wayland session to become attractive enough for daily use in the near future.
16:00:37 <bshah> romangg: suggestion, propose less, do more.. ;)
16:00:44 <d_ed>  yeah, that's too much for a gSOC
16:00:45 <notmart>       all of them in a single gsoc? O.o
16:00:52 <Sho_>  romangg: martin and I spent quite some time trying to tell sebas how to implement the window meta data thing on wayland, we'll have to retarget that at you :)
16:01:02 <Sho_>  maybe that will speed it up
16:01:03 <kbroulik>      window metadata <3
16:01:07 <notmart>       some like redshift, probably easy, other look quite imposing
16:01:07 <Sho_>  we had all the handle stuff pretty much worked out
16:01:26 <notmart>       like window metadata, like multi gpu
16:01:28 <kbroulik>      I think window metadata could/should use the same we do with global menu nowadays
16:01:39 <kbroulik>      ie. write dbus service as x prop or qt extended surface, profit.
16:02:17 <romangg>       It's a little bit difficult for me to find now the "one project" I want to work on for the next few months in GSoC because I have multiple things running in parallel.
16:02:22 <notmart>       so all on dbus, minimize platform specific code
16:02:26 <notmart>       (which iirc does?)
16:02:47 <romangg>       yea, it uses dbus.
16:02:49 <bshah> romangg: its fine, you can work on "everything" but as a gsoc proposal or project stick to thing or two
16:03:16 <Sho_>  it's generally better to make gsoc projects smaller in scope and realistically finishable
16:04:20 <notmart>       screen recording wasn't already started "as a side effect" by something d_ed did?
16:04:48 <Sho_>  sorry to be that guy but can we move the meeting along ..? i'm starving
16:04:55 <bshah> ah right
16:05:02 <bshah> breakout!
16:05:03 <romangg>       notmart: the diff was abandoned
16:05:13 <romangg>       because of performance problems.
16:05:22 <bshah> its my turn now..
16:05:22 <d_ed>  not really
16:05:23 <notmart>       but wasn't usable at all? ie didn't work conceptually?
16:05:39 <Sho_>  i think windowmetadata/thumbnails are more important than screen recording
16:05:53 <notmart>       yes, i would put that as gsoc thing
16:06:13 <notmart>       other things can be done as a sideproject, but conentrate on that for now
16:06:18 <d_ed>  the performance problem was me doing a simple version, but saying "but we would do this", but then it got abandoned because I got shown an existing branch of someone else trying
16:06:20 <Sho_>  it's also the only thing on that list i could mentor because i know how it's supposed to work
16:06:34 <notmart>       d_ed: ah, ok
16:06:39 <romangg>       the only problem I have with it right now is that live updating thumbnails are not supported. but I would need to talk with sebas about that. or could you answer it to me Sho_?
16:06:49 --      HoloIRCUser is now known as llucas
16:07:02 <bshah> romangg: perhaps takt this in breakout?
16:07:03 <llucas>        From my perspective screen recording is more important than window Metadata, but I am biased
16:07:05 <bshah> :)
16:07:10 <Sho_>  llucas, heh
16:07:16 <notmart>       iirc at some point we said screw live updates for now
16:07:29 <romangg>       bshah: ok.
16:07:40 <Sho_>  romangg: you're working with sebas' existing lib currently?
16:08:06 <romangg>       Sho_: until now I haven't worked much on it because I needed to do the DRM stuff. But yeah, that's the plan.
16:08:14 <bshah> so.. from my side..
16:08:22 <Sho_>  romangg: ah
16:08:29 <Sho_>  anyways yeah we can talk in the futuuure
16:08:55  *      Sho_ needs to run to dinner and then finish work because this coffeeshop closes at 10 (and i'm trying to not have an insane day cycle a bit more in the immediate future)
16:08:55 <romangg>       Sho_: awesome! I didn't know you were involved in it as well :)
16:08:57 <bshah> - I'm remotely debugging Nexus 6P plasma mobile port for linux_unix-10
16:09:15 <bshah>  - it throws weird error in libhybris linker : linker.cpp:2498 | DL_ERR("invalid maskwords for gnu_hash = 0x%x, in \"%s\" expecting power to two"
16:09:37 <Sho_>  romangg: sebas' problem was "what to replace window ids with on wayland" so martin and i worked out a plan for that for the lib to use but it wasn't implemented yet
16:09:38 <bshah> - I am also mostly working on packaging side for plasma mobile on arch project
16:10:14 <bshah> For next week I am also continuing on this two things
16:10:24 <bshah> questions? or we are done
16:11:25 <kbroulik>      gotta go, sorry
16:11:51 <bshah> alright.. meeting is done.. I will send notes to list in sometime
16:12:03 <Sho_>  thanks for hosting
16:12:08 <notmart>       we are done then.. thanks bshah for taking care of it!
16:12:32 <bshah> oh also.. I won't be available next monday.. going to Spanish embassy.
16:12:37 <bshah> (wish me luck)
16:12:47 <romangg>       good luck! :)
16:12:50 <notmart>       eh, good luck :)
16:12:52 <notmart>       i can host it
16:13:03 <bshah> well I suppose sebas will be back
16:13:14 <notmart>       or sebas if he's back, yeah
16:13:47 <romangg>       when is sebas back?
16:14:11 <bshah> wednesday I suppose

-- 
Bhushan Shah
http://blog.bshah.in
IRC Nick : bshah on Freenode
GPG key fingerprint : 0AAC 775B B643 7A8D 9AF7 A3AC FE07 8411 7FBC E11D


More information about the Plasma-devel mailing list