Skip to content
  • Hjem
  • Seneste
  • Etiketter
  • Populære
  • Verden
  • Bruger
  • Grupper
Temaer
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Kollaps
FARVEL BIG TECH
  1. Forside
  2. Ikke-kategoriseret
  3. Decided to try writing a Wayland compositor for fun.

Decided to try writing a Wayland compositor for fun.

Planlagt Fastgjort Låst Flyttet Ikke-kategoriseret
227 Indlæg 2 Posters 0 Visninger
  • Ældste til nyeste
  • Nyeste til ældste
  • Most Votes
Svar
  • Svar som emne
Login for at svare
Denne tråd er blevet slettet. Kun brugere med emne behandlings privilegier kan se den.
  • yalter@mastodon.onlineY yalter@mastodon.online

    funny how while working on alt-tab i discovered that mouse scrolling on top of the DMS bar switches workspaces, which completely replaced any need i had for alt-tab, so i ended up never using it

    this DMS bar scrolling feature also removed one of my main usecases for the overview

    and then the new horizontal window drag gesture removed my other main usecase for the overview, so now i'm opening the overview quite rarely too

    (both have their uses; just curious to watch my own habits shift)

    #niri

    yalter@mastodon.onlineY This user is from outside of this forum
    yalter@mastodon.onlineY This user is from outside of this forum
    yalter@mastodon.online
    wrote on sidst redigeret af
    #203

    I've had one of those sessions today where I worked with a ton of random windows on a long workspace, while preparing slides for a uni scientific presentation. All kinds of various PDFs, file managers, InkScape, GIMP and so on.

    Horizontal mouse headerbar drag to scroll the view was a lifesaver. Definitely a good choice adding this. Along with scrolling the view on DnD near the screen edge. Going through the overview, or always through the keyboard, would be very annoying.

    #niri

    yalter@mastodon.onlineY 1 Reply Last reply
    0
    • yalter@mastodon.onlineY yalter@mastodon.online

      I've had one of those sessions today where I worked with a ton of random windows on a long workspace, while preparing slides for a uni scientific presentation. All kinds of various PDFs, file managers, InkScape, GIMP and so on.

      Horizontal mouse headerbar drag to scroll the view was a lifesaver. Definitely a good choice adding this. Along with scrolling the view on DnD near the screen edge. Going through the overview, or always through the keyboard, would be very annoying.

      #niri

      yalter@mastodon.onlineY This user is from outside of this forum
      yalter@mastodon.onlineY This user is from outside of this forum
      yalter@mastodon.online
      wrote on sidst redigeret af
      #204

      yuxqiu just improved the default GPU detection logic in Smithay, so niri-git now works out of the box on Asahi and Pinephone devices, without having to manually configure render-drm-device!

      #niri

      yalter@mastodon.onlineY 1 Reply Last reply
      0
      • yalter@mastodon.onlineY yalter@mastodon.online

        yuxqiu just improved the default GPU detection logic in Smithay, so niri-git now works out of the box on Asahi and Pinephone devices, without having to manually configure render-drm-device!

        #niri

        yalter@mastodon.onlineY This user is from outside of this forum
        yalter@mastodon.onlineY This user is from outside of this forum
        yalter@mastodon.online
        wrote on sidst redigeret af
        #205

        i added the pointer warping thing from blender to when you drag the view around in niri with the mouse

        hf with this new way to pass time during boring meetings

        (on a more serious note this helps when you need to scroll further than the edge of your monitor allows)

        also unrelated: merged optional config includes earlier today

        #niri

        yalter@mastodon.onlineY 1 Reply Last reply
        0
        • yalter@mastodon.onlineY yalter@mastodon.online

          i added the pointer warping thing from blender to when you drag the view around in niri with the mouse

          hf with this new way to pass time during boring meetings

          (on a more serious note this helps when you need to scroll further than the edge of your monitor allows)

          also unrelated: merged optional config includes earlier today

          #niri

          yalter@mastodon.onlineY This user is from outside of this forum
          yalter@mastodon.onlineY This user is from outside of this forum
          yalter@mastodon.online
          wrote on sidst redigeret af
          #206

          on niri-git, the nautilus rename popup now works properly with IMEs running

          (and generally popups with text fields should work now)

          #niri

          yalter@mastodon.onlineY 1 Reply Last reply
          0
          • yalter@mastodon.onlineY yalter@mastodon.online

            on niri-git, the nautilus rename popup now works properly with IMEs running

            (and generally popups with text fields should work now)

            #niri

            yalter@mastodon.onlineY This user is from outside of this forum
            yalter@mastodon.onlineY This user is from outside of this forum
            yalter@mastodon.online
            wrote on sidst redigeret af
            #207

            Experimenting with a restructure of the niri rendering code to uncurse it somewhat by getting rid of all complex impl Iterator chains and lifetimes, which also lets me remove some intermediate small Vecs. In essence, going from pull to push iteration.

            I'm surprised that the result is consistently 2-3x faster than before. Wonder if it's the Vecs, or if inverting (massive) codegen'd iterators into a normal call stack passing a closure arg, providing the main benefit

            #niri

            yalter@mastodon.onlineY 1 Reply Last reply
            0
            • yalter@mastodon.onlineY yalter@mastodon.online

              Experimenting with a restructure of the niri rendering code to uncurse it somewhat by getting rid of all complex impl Iterator chains and lifetimes, which also lets me remove some intermediate small Vecs. In essence, going from pull to push iteration.

              I'm surprised that the result is consistently 2-3x faster than before. Wonder if it's the Vecs, or if inverting (massive) codegen'd iterators into a normal call stack passing a closure arg, providing the main benefit

              #niri

              yalter@mastodon.onlineY This user is from outside of this forum
              yalter@mastodon.onlineY This user is from outside of this forum
              yalter@mastodon.online
              wrote on sidst redigeret af
              #208

              Finished the push-based rendering refactor, made a write-up here for the curious: https://github.com/YaLTeR/niri/pull/3113

              It even ended up with a negative delta (+762 -780) which is always a W.

              Btw I ran the comparison on my Eee PC and there the difference is even more extreme, like 8x faster rendering list construction (which is once again only a part of the total rendering time, and notably doesn't include actual rendering, but still nice).

              #niri

              yalter@mastodon.onlineY 1 Reply Last reply
              0
              • yalter@mastodon.onlineY yalter@mastodon.online

                Finished the push-based rendering refactor, made a write-up here for the curious: https://github.com/YaLTeR/niri/pull/3113

                It even ended up with a negative delta (+762 -780) which is always a W.

                Btw I ran the comparison on my Eee PC and there the difference is even more extreme, like 8x faster rendering list construction (which is once again only a part of the total rendering time, and notably doesn't include actual rendering, but still nice).

                #niri

                yalter@mastodon.onlineY This user is from outside of this forum
                yalter@mastodon.onlineY This user is from outside of this forum
                yalter@mastodon.online
                wrote on sidst redigeret af
                #209

                biblically accurate window management

                #niri

                yalter@mastodon.onlineY 1 Reply Last reply
                0
                • yalter@mastodon.onlineY yalter@mastodon.online

                  biblically accurate window management

                  #niri

                  yalter@mastodon.onlineY This user is from outside of this forum
                  yalter@mastodon.onlineY This user is from outside of this forum
                  yalter@mastodon.online
                  wrote on sidst redigeret af
                  #210

                  i'm reviving the PR integrating Tracy GPU profiling into Smithay. Here are two test captures from niri: one for normal + screencast rendering, one for iGPU + dGPU monitor rendering

                  #niri

                  yalter@mastodon.onlineY 1 Reply Last reply
                  0
                  • yalter@mastodon.onlineY yalter@mastodon.online

                    i'm reviving the PR integrating Tracy GPU profiling into Smithay. Here are two test captures from niri: one for normal + screencast rendering, one for iGPU + dGPU monitor rendering

                    #niri

                    yalter@mastodon.onlineY This user is from outside of this forum
                    yalter@mastodon.onlineY This user is from outside of this forum
                    yalter@mastodon.online
                    wrote on sidst redigeret af
                    #211

                    Looking for ideas on how to go about translating niri (the binary, and the wiki). If you have experience doing this with other FOSS projects, please share:

                    https://github.com/YaLTeR/niri/discussions/3135

                    #niri

                    yalter@mastodon.onlineY 1 Reply Last reply
                    0
                    • yalter@mastodon.onlineY yalter@mastodon.online

                      Looking for ideas on how to go about translating niri (the binary, and the wiki). If you have experience doing this with other FOSS projects, please share:

                      https://github.com/YaLTeR/niri/discussions/3135

                      #niri

                      yalter@mastodon.onlineY This user is from outside of this forum
                      yalter@mastodon.onlineY This user is from outside of this forum
                      yalter@mastodon.online
                      wrote on sidst redigeret af
                      #212

                      Is there any good way of moving a process into a systemd StartTransientScope together with its children?

                      In niri we put spawned processes into scopes, so oomd and other stuff can work properly. Usually you do it by putting yourself into a scope, then exec-ing the target program. But that's a 7 ms toll on startup time, so in niri we spawn the program right away, and then put it into a scope. However, if the program forks fast enough, that child doesn't go into the scope..

                      #niri #linux #systemd

                      yalter@mastodon.onlineY 1 Reply Last reply
                      0
                      • yalter@mastodon.onlineY yalter@mastodon.online

                        Is there any good way of moving a process into a systemd StartTransientScope together with its children?

                        In niri we put spawned processes into scopes, so oomd and other stuff can work properly. Usually you do it by putting yourself into a scope, then exec-ing the target program. But that's a 7 ms toll on startup time, so in niri we spawn the program right away, and then put it into a scope. However, if the program forks fast enough, that child doesn't go into the scope..

                        #niri #linux #systemd

                        yalter@mastodon.onlineY This user is from outside of this forum
                        yalter@mastodon.onlineY This user is from outside of this forum
                        yalter@mastodon.online
                        wrote on sidst redigeret af
                        #213

                        Turns out GNOME Shell has the same problem: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6565

                        I also wrote it down in a more detailed form on the niri issues for future reference: https://github.com/YaLTeR/niri/issues/3201

                        yalter@mastodon.onlineY 1 Reply Last reply
                        0
                        • yalter@mastodon.onlineY yalter@mastodon.online

                          Turns out GNOME Shell has the same problem: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/6565

                          I also wrote it down in a more detailed form on the niri issues for future reference: https://github.com/YaLTeR/niri/issues/3201

                          yalter@mastodon.onlineY This user is from outside of this forum
                          yalter@mastodon.onlineY This user is from outside of this forum
                          yalter@mastodon.online
                          wrote on sidst redigeret af
                          #214

                          niri can now include the mouse pointer on window screenshots, a feature that had several more edge cases than I thought before starting to work on it (and it's likely not the ones you think, those ones were easy)

                          #niri

                          yalter@mastodon.onlineY 1 Reply Last reply
                          0
                          • yalter@mastodon.onlineY yalter@mastodon.online

                            niri can now include the mouse pointer on window screenshots, a feature that had several more edge cases than I thought before starting to work on it (and it's likely not the ones you think, those ones were easy)

                            #niri

                            yalter@mastodon.onlineY This user is from outside of this forum
                            yalter@mastodon.onlineY This user is from outside of this forum
                            yalter@mastodon.online
                            wrote on sidst redigeret af
                            #215

                            Merged another long time overdue niri PR: mouse cursor via metadata in PipeWire screencasts (lets you toggle Show Cursor on/off in OBS), and full mouse cursor support in window casts.

                            The cursor is visible only when the window is receiving mouse events—if you're moving the mouse on top of something else covering the target window, the cursor won't be (unintentionally) painted.

                            Thanks @abmantis for driving this, including debugging a memory bug in PW!

                            #niri

                            yalter@mastodon.onlineY 1 Reply Last reply
                            0
                            • yalter@mastodon.onlineY yalter@mastodon.online

                              Merged another long time overdue niri PR: mouse cursor via metadata in PipeWire screencasts (lets you toggle Show Cursor on/off in OBS), and full mouse cursor support in window casts.

                              The cursor is visible only when the window is receiving mouse events—if you're moving the mouse on top of something else covering the target window, the cursor won't be (unintentionally) painted.

                              Thanks @abmantis for driving this, including debugging a memory bug in PW!

                              #niri

                              yalter@mastodon.onlineY This user is from outside of this forum
                              yalter@mastodon.onlineY This user is from outside of this forum
                              yalter@mastodon.online
                              wrote on sidst redigeret af
                              #216

                              Working on a screencast IPC for niri. The idea is to give info to desktop bars to be able to add a screencast indicator whenever something is recording the screen.

                              Got it hooked up for both PipeWire (obviously) and wlr-screencopy. For the latter there's no good way to tell if something is a screencast so I went with some heuristics.

                              Here's the icon working on the DMS bar, as well as a popup with the full available info I made for debugging.

                              #niri

                              yalter@mastodon.onlineY 1 Reply Last reply
                              0
                              • yalter@mastodon.onlineY yalter@mastodon.online

                                Working on a screencast IPC for niri. The idea is to give info to desktop bars to be able to add a screencast indicator whenever something is recording the screen.

                                Got it hooked up for both PipeWire (obviously) and wlr-screencopy. For the latter there's no good way to tell if something is a screencast so I went with some heuristics.

                                Here's the icon working on the DMS bar, as well as a popup with the full available info I made for debugging.

                                #niri

                                yalter@mastodon.onlineY This user is from outside of this forum
                                yalter@mastodon.onlineY This user is from outside of this forum
                                yalter@mastodon.online
                                wrote on sidst redigeret af
                                #217

                                Oh right, for PipeWire I can send the node ID, which DMS can then use to fetch the consumer application name!

                                #niri

                                yalter@mastodon.onlineY 1 Reply Last reply
                                0
                                • yalter@mastodon.onlineY yalter@mastodon.online

                                  Oh right, for PipeWire I can send the node ID, which DMS can then use to fetch the consumer application name!

                                  #niri

                                  yalter@mastodon.onlineY This user is from outside of this forum
                                  yalter@mastodon.onlineY This user is from outside of this forum
                                  yalter@mastodon.online
                                  wrote on sidst redigeret af
                                  #218

                                  The screencast IPC is now merged: https://yalter.github.io/niri/niri_ipc/struct.Cast.html

                                  #niri

                                  yalter@mastodon.onlineY 1 Reply Last reply
                                  0
                                  • yalter@mastodon.onlineY yalter@mastodon.online

                                    The screencast IPC is now merged: https://yalter.github.io/niri/niri_ipc/struct.Cast.html

                                    #niri

                                    yalter@mastodon.onlineY This user is from outside of this forum
                                    yalter@mastodon.onlineY This user is from outside of this forum
                                    yalter@mastodon.online
                                    wrote on sidst redigeret af
                                    #219

                                    Also added niri msg action stop-cast to force-stop a PipeWire screencast

                                    #niri

                                    yalter@mastodon.onlineY 1 Reply Last reply
                                    0
                                    • yalter@mastodon.onlineY yalter@mastodon.online

                                      Also added niri msg action stop-cast to force-stop a PipeWire screencast

                                      #niri

                                      yalter@mastodon.onlineY This user is from outside of this forum
                                      yalter@mastodon.onlineY This user is from outside of this forum
                                      yalter@mastodon.online
                                      wrote sidst redigeret af
                                      #220

                                      working on my new visual style

                                      #niri

                                      yalter@mastodon.onlineY 1 Reply Last reply
                                      0
                                      • yalter@mastodon.onlineY yalter@mastodon.online

                                        working on my new visual style

                                        #niri

                                        yalter@mastodon.onlineY This user is from outside of this forum
                                        yalter@mastodon.onlineY This user is from outside of this forum
                                        yalter@mastodon.online
                                        wrote sidst redigeret af
                                        #221

                                        So yeah, I'm working on blur for niri. I'm doing "xray blur" first where the idea is that you only include background surfaces, so you pretty much never have to redo the blur—next to zero perf impact unless you have a video wallpaper or smth.

                                        Turns out that it's quite tricky to do well, especially with our Overview. I'm like on my third refactor attempt now but I think I've got a good approach.

                                        During this video there's no reblurring whatsoever, all just drawing cached static textures.

                                        #niri

                                        yalter@mastodon.onlineY 1 Reply Last reply
                                        0
                                        • yalter@mastodon.onlineY yalter@mastodon.online

                                          So yeah, I'm working on blur for niri. I'm doing "xray blur" first where the idea is that you only include background surfaces, so you pretty much never have to redo the blur—next to zero perf impact unless you have a video wallpaper or smth.

                                          Turns out that it's quite tricky to do well, especially with our Overview. I'm like on my third refactor attempt now but I think I've got a good approach.

                                          During this video there's no reblurring whatsoever, all just drawing cached static textures.

                                          #niri

                                          yalter@mastodon.onlineY This user is from outside of this forum
                                          yalter@mastodon.onlineY This user is from outside of this forum
                                          yalter@mastodon.online
                                          wrote sidst redigeret af
                                          #222

                                          Added non-xray blur, based on @drakulix's Smithay/COSMIC implementation.

                                          Keep in mind this blur work is still extremely WIP and with many issues (some visible on the video). It's also still not entirely clear to me how to best structure the code around it in niri. We'll see

                                          #niri

                                          yalter@mastodon.onlineY 1 Reply Last reply
                                          0
                                          Svar
                                          • Svar som emne
                                          Login for at svare
                                          • Ældste til nyeste
                                          • Nyeste til ældste
                                          • Most Votes


                                          • Log ind

                                          • Har du ikke en konto? Tilmeld

                                          • Login or register to search.
                                          Powered by NodeBB Contributors
                                          Graciously hosted by data.coop
                                          • First post
                                            Last post
                                          0
                                          • Hjem
                                          • Seneste
                                          • Etiketter
                                          • Populære
                                          • Verden
                                          • Bruger
                                          • Grupper