Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Sep 27 07:11
    Tom Englund commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 27 07:11
    Tom Englund commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 27 07:11
    Tom Englund commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 27 07:10
    Tom Englund commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 23:30
    Roman Gilg commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 23:30
    Roman Gilg commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 23:30
    Roman Gilg commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 23:30
    Roman Gilg commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 23:30
    Roman Gilg commented on merge request #229 make rules take a list of desktops in KWinFT
  • Sep 26 12:08
    Roman Gilg commented on issue #298 kwin crashes sometimes when compositor gets unredirected in KWinFT
  • Sep 26 12:06
  • Sep 24 20:46
    Sergio Blanco commented on merge request #220 fix: firefox returns to SDDM when opening or closing the hamburger menu (wayland) in KWinFT
  • Sep 24 17:43
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 16:16
    Sergio Blanco commented on merge request #220 fix: firefox returns to SDDM when opening or closing the hamburger menu (wayland) in KWinFT
  • Sep 24 12:12
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 12:11
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 12:11
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 12:10
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 12:10
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
  • Sep 24 12:10
    Tom Englund commented on merge request #229 Draft: make rules take a list of desktops in KWinFT
Tom Englund
@gulafaran:matrix.org
[m]
had some ideas about having something like window->debug a bit like window->control but not sure
Roman Gilg
@romangg:matrix.org
[m]
...which then is composited back into the actual class with a smart pointer.
You can have a QObject templated when there is no Q_OBJECT, Q_PROPERTY and so on macro in it.
Tom Englund
@gulafaran:matrix.org
[m]
damn was just checking out your branch, thats some serious work. cool :)
Roman Gilg
@romangg:matrix.org
[m]
Haha, thank you! :)
The last commit is still wip, but the other ones are ok.
Tom Englund: I was wondering if you're currently still working on rules stuff. You were looking into some fixes for that just recently, right? Because I may want to do kwinft/kwinft#241 now, which may create conflicts.
Tom Englund
@gulafaran:matrix.org
[m]
Roman Gilg: well i got that draft laying around waiting for some kind of virtual_desktop_manager integration struct or similiar but then got looped into debug_console thought of using it and appending a few useful things to actually debug or test things properly
Roman Gilg: so proceed on, il rebase with any conflicts 👍️
idea was to add one more tab for space properties aswell and fill in bunch of useful things heh but yeah noticed quite a lot was a bit off on it
Tom Englund
@gulafaran:matrix.org
[m]
il probably get more things going anyhow in ~1 week when the vacation days run out and the regular boring work, sleep, eat shedule begins again xD, so yeah dont worry. anything you work on that conflicts. il rebase! dont let me hold you up
1 reply
Roman Gilg
@romangg:matrix.org
[m]
Haha, thank you. That sounds cool. I'll likely also be finished until then with the base-objects-2 branch. As I see it this concludes the major refactorings necessary in kwinft's core infrastructure.
So then it's a good point in time to do feature work.
Juan Jose Casafranca
@jjcasmar_gitlab
Kwinft is based on wlroots, right?
1 reply
Roman Gilg
@romangg:matrix.org
[m]
There are changes lined up to increase the usage in the future: kwinft/kwinft!186
Must wait on the next wlroots release 0.16 for that.
Tom Englund
@gulafaran:matrix.org
[m]
Roman Gilg: did a short test nothing obvious with 230
Roman Gilg
@romangg:matrix.org
[m]
Thank you Tom! I'm gonna merge it then later today. :)
I had already rebased the base-object-2 branch onto it and doing some work there right now.
Tom Englund
@gulafaran:matrix.org
[m]
Roman Gilg: i have a uh question tho, seeing you use enum_index in this MR aswell, 395518 in coverity has an odd error about it, ive tried various things in godbolt and locally and cant really tell why its complaining
either its false positive or its catching some oddball case :p
Roman Gilg
@romangg:matrix.org
[m]
I see hmm. It's weird but I don't think it's a real issue. It somehow assumes that lay could be layer::count, which would be an issue as local layers variable only has 15 entries. Maybe accessing it with at would silence the warning.
i.e. layers.at(enum_index(lay)).push_back(win)
Tom Englund
@gulafaran:matrix.org
[m]
yeah well the even more weird thing is "KWin::enum_index(lay) (which evaluates to 15)." lay can never be 15, count is 12 if using the enums uh values
i guess another question not related to the MR is what if lay is unknown, -1 are we doing some UB here :p
Roman Gilg
@romangg:matrix.org
[m]
I guess -1 can never happen by the internal logic. But that shit is definitely old code without proper safeguards for stuff like this. 🙄
I mean going through an array by a layer enum which starts at -1 is typical 90s programming techniques on its own.
Tom Englund
@gulafaran:matrix.org
[m]
Roman Gilg: this code group/output could probably be moved to update_layer , and sorting just copying the list to a vector, using std::sort(vector.begin(), vector.end(), { return enum_index(win->layer()) < enum_index(win2-layer()) }; :p
oh well it has room for future improvements! now to rebase towards your new rules :p
Roman Gilg
@romangg:matrix.org
[m]
Is now a good time to switch over kwinft to C++20?
2 replies
I could make use of some C++20 concepts in my template code.
Tom Englund
@gulafaran:matrix.org
[m]
have mostly refactored my rules patches, but digging into some regression and the attempt at integration struct, but its a bit slow on this turd rebuilding xD
next week tho then il enjoy my ryzens again xD
*refactored/rebased
Roman Gilg
@romangg:matrix.org
[m]
But better to concentrate first on getting the template objects done somehow and afterwards make them pretty with C++20.
Tom Englund
@gulafaran:matrix.org
[m]
are they related to those lambda capture changes i found last time?
Roman Gilg
@romangg:matrix.org
[m]
Hmm, can't remember. Do you have a link?
Tom Englund
@gulafaran:matrix.org
[m]
kwinft/kwinft!168 first thread
but seems those only caused warnings i think
not that that draft will apply nor quite "rebase" any more since quite a lot changed so could technically close it i guess
Roman Gilg
@romangg:matrix.org
[m]
First build error for me is this:
diff --git a/input/wayland/redirect.cpp b/input/wayland/redirect.cpp
index 666fe6b67..bc7b6c06c 100644
--- a/input/wayland/redirect.cpp
+++ b/input/wayland/redirect.cpp
@@ -471,17 +471,18 @@ void redirect::handle_fake_input_device_added(Wrapland::Server::FakeInputDevice*
                          device->setAuthentication(true);
                      });

-    auto devices
-        = fake::devices<input::platform>({std::make_unique<fake::pointer>(device, &platform),
-                                          std::make_unique<fake::keyboard>(device, &platform),
-                                          std::make_unique<fake::touch>(device, &platform),
-                                          platform});
+    fake::devices<input::platform> devices{
+        .pointer = std::make_unique<fake::pointer>(device, &platform),
+        .keyboard = std::make_unique<fake::keyboard>(device, &platform),
+        .touch = std::make_unique<fake::touch>(device, &platform),
+        .platform = platform,
+    };

     platform_add_pointer(devices.pointer.get(), platform);
     platform_add_keyboard(devices.keyboard.get(), platform);
     platform_add_touch(devices.touch.get(), platform);

     fake_devices.insert({device, std::move(devices)});
 }
While the aggregate can be fixed with this new lovely aggregate syntax, it won't work with the move ctors defaulted in the fake::devices struct.
But if I remove the move ctors the insert into fake_devices map doesn't work anymore. :/
Then there was a second build error with sstream. But I stopped at this point.
Tom Englund
@gulafaran:matrix.org
[m]
right so new things then, but yeah once i get access to my ryzen i can test around more with building with c++20 hm
Roman Gilg
@romangg:matrix.org
[m]
I hope until then the base-objects-2 branch is finished. I want that branch getting done so bad! 😂
Tom Englund
@gulafaran:matrix.org
[m]
isnt technically that called designated initializers that is only entering in c++20?
Roman Gilg
@romangg:matrix.org
[m]
You mean in comparison to what was in there before?
Tom Englund
@gulafaran:matrix.org
[m]
yeah