@ignapk@mastodon.social avatar ignapk , to random

Constrict by Wartybix was accepted into GNOME Circle!

It compresses your videos to your chosen file size — useful for uploading to services with specific file size limits.

Congratulations and welcome! 🎉

https://flathub.org/apps/io.github.wartybix.Constrict

ALT
@sstendahl@floss.social avatar sstendahl , to random

I cannot express how cool this is. This is the first time I’m running Graphs on a mobile phone, and it just works. Quite nicely as well.

and has really made it very easy to make your apps adaptive and behave nice on mobile phones. This is really powerful stuff. So many applications work really nicely on .

Me showcasing Graphs on a OnePlus 6 with PostmarketOS. The application works quite well adaptively.

@pojntfx@mastodon.social avatar pojntfx , to random

If there is one thing LLMs with tool calling are excellent at, it's updating dependencies/fixing deprecations. Moved Senbara from the old shortcuts dialog to the new one in like 60s with a single prompt; despite the training data being from before that was even a component, and it even managed to use the new automatic resource loader properly.

ALT
@KekunPlazas@mamot.fr avatar KekunPlazas , to random

Over November 2025, I've been able to contribute to @gnome , and it was a pleasure!

I focused on GNOME Clocks, with the goal of making it as good as possible for GNOME 50. I focused on , and all sorts of bug fixes and features, as well as issue and MR triaging.

I also fixed some tiny issues in and , and helped make gettext-pseudolocale as good as possible.

I hope to find more free time to make GNOME Clocks 50 dependable as a mobile clocks app.

@mlundblad@fosstodon.org avatar mlundblad , to random

Finally got momentum on the redesigned I planned for Maps for GNOME 50, redesigning the sidebar a bit (taking a bit inspiration from Nucleus) with the aim of ultimatly it use an AdwMultiLayoutView using a bottom sheet in narrow/mobile mode. And showing place info in there as well…

Right now in a state of a bit "first break it, then fix it"… 😄

ALT
@phosh@social.phosh.mobi avatar phosh , to random

's file selector (pfs) picked up existing 👍-nails of files since some time but didn't create missing ones. @arunmanij fixed that by creating a thumbnailing service. The file chooser calls into this service to request the creation of the missing thumbnails.

Having things in an extra service allows us to experiment with different implementations (it currently uses GnomeDesktopThumbnail under the hood) and also to sandbox things further if desired. Since pfs is used by our portal implementation all apps using it (including s) will leverage that automatically.

A video of a phone running Phosh. The user has the file chooser open. When they change into a folder the items are initially plain placeholders. After some time they're replaced by thumbnails of the files content. The whole process takes a moment as we're thumbnailing videos as otherwise the replacement would be instant and hard to demo.

@tbernard@mastodon.social avatar tbernard , to random

Mahjongg was accepted into Circle! 🀄🀄🀄

It's one the historical GNOME games, but thanks to Mat's modernization work over the past few cycles it looks very fresh and clean nowadays. Welcome :)

https://apps.gnome.org/Mahjongg

ALT
@linuxmagazine@fosstodon.org avatar linuxmagazine , to random
@rdbende@mastodon.social avatar rdbende , to random

I've been running for almost as long as I've been using computers, and I've tried and customized many different things, but nowhere else have I felt that excitement that stock can give nowadays.

ALT
@danialbehzadi@persadon.com avatar danialbehzadi , to random

Early preview of WIP rewrite of Boxes

image/png
image/png
image/png

@TheEvilSkeleton@treehouse.systems avatar TheEvilSkeleton , to random

As part of our volunteer-driven accessibility initiative in GNOME Calendar, and for the first time in the 10+ years of Calendar's existence, we finally completed and merged the first step needed to have a working calendar app for people who rely on keyboard navigation. This merge request in particular makes the event widgets focusable with navigation keys (arrow left/up/right/down) and activatable with space/enter. This will be available in GNOME 49.

Most of GNOME Calendar's layout and widgets consist of custom widgets and complex calculations, both independently and according to other factors (window size, height and width of each cell, number of events, positioning, etc.), so these widgets need to be minimal to have as little overhead as possible. This means that these widgets also need to have the necessary accessibility features reimplemented or even rethought, including and starting with the event widgets.

We also hope to get other parts of GNOME Calendar accessible before GNOME 49, but I can't promise anything at the moment. We did start working with making the month view accessible: https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564

TheEvilSkeleton OP ,
@TheEvilSkeleton@treehouse.systems avatar

Happy Disability Pride Month everybody :)

During the past few weeks, there's been an overwhelming amount of progress with accessibility on GNOME Calendar:

• Event widgets/popovers will convey to screen readers that they are toggle buttons. They will also convey of their states (whether they're pressed or not) and that they have a popover. (See !587)

• Calendar rows will convey to screen readers that they are check boxes, along with their states (whether they're checked or not). Additionally, they will no longer require a second press of a tab to get to the next row; one tab will be sufficient. (See !588)

• Month and year spin buttons are now capable of being interacted with using arrow up/down buttons. They will also convey to screen readers that they are spin buttons, along with their properties (current, minimum, and maximum values). The month spin button will also wrap, where going back a month from January will jump to December, and going to the next month from December will jump to January. (See !603)

• Events in the agenda view will convey to screen readers of their respective titles and descriptions. (See !606)

Accessibility on Calendar has progressed to the point where I believe it's safe to say that, as of GNOME 49, Calendar will be usable exclusively with a keyboard, without significant usability friction!

There's still a lot of work to be done in regards to screen readers, for example conveying time appropriately and event descriptions. But really, just 6 months ago, we went from having absolutely no idea where to even begin with accessibility in Calendar — which has been an ongoing issue for literally a decade — to having something workable exclusively with a keyboard and screen reader! :3

Huge thanks to @nekohayo for coordinating the accessibility initiative, especially with keeping the accessibility meta issue updated; Georges Stavracas for single-handedly maintaining GNOME Calendar and reviewing all my merge requests; and @tyrylu for sharing feedback in regards to usability.

All my work so far has been unpaid and voluntary; hundreds of hours were put into developing and testing all the accessibility-related merge requests. I would really appreciate if you could spare a little bit of money to support my work, thank you 🩷

https://ko-fi.com/theevilskeleton
https://github.com/sponsors/TheEvilSkeleton

(Boost appreciated)

TheEvilSkeleton OP ,
@TheEvilSkeleton@treehouse.systems avatar

After two weeks of writing, revising, and trying to make everything as digestible as possible, I finally published "GNOME Calendar: A New Era of Accessibility Achieved in 90 Days", where I explain in detail the steps we took to turn GNOME Calendar from an app that was literally unusable with a keyboard and screen reader to an app that is (finally) accessible to keyboard and screen reader users as of GNOME 49!

https://tesk.page/2025/07/25/gnome-calendar-a-new-era-of-accessibility-achieved-in-90-days/

TheEvilSkeleton OP ,
@TheEvilSkeleton@treehouse.systems avatar

At last, all the accessibility improvements on GNOME Calendar are finally available as a stable release. Get it on Flathub while it's hot!!!

https://flathub.org/en/apps/org.gnome.Calendar

TheEvilSkeleton OP ,
@TheEvilSkeleton@treehouse.systems avatar

After two long and painful years, several design iterations, and more than 50 rebases later, we finally merged the infamous, trauma-inducing merge request !362 on GNOME Calendar.

The calendars list in the quick-add popover has undergone accessibility improvements, providing a better experience for assistive technologies and keyboard users (to a limited extent). Specifically: tabbing from outside the list will focus the selected calendar in the list; tabbing from inside the list will skip the entire list; arrow keys automatically select the focused calendar; and finally, assistive technologies now inform the user of the checked/selected state.

Admittedly, the quick-add popover is currently unreachable via keyboard because we lack the resources to implement keyboard focus for month and week cells. We are currently trying to address this issue in merge request !564, and hope to get it merged for GNOME 50, but it's a significant undertaking for a single unpaid developer. If it is not too much trouble, I would really appreciate some donations, to keep me motivated to improve accessibility throughout GNOME and sustain myself: https://tesk.page/#donate

For non-accessibility-related details about this merge request, feel free to check out https://mastodon.social/@nekohayo/115571375702642784

TheEvilSkeleton OP ,
@TheEvilSkeleton@treehouse.systems avatar

WE DID IT, WE FUCKING DID IT

WE GOT KEYBOARD NAVIGATION WORKING IN GNOME CALENDAR'S MONTH VIEW

https://gitlab.gnome.org/GNOME/gnome-calendar/-/merge_requests/564/diffs?commit_id=f1b564c0c6c2fd59bf3fe752407381b6029a2e36 (not merged yet)

Do note that the screen recording attached won't have any alt text, to avoid redundancy. Everything written below is a detailed explanation of the experience, and the recording is essentially a visual demonstration:

  • When entering the month view with Tab, focus is set to the first event widget, and pressing Tab will focus the next event widget horizontally.
  • Ctrl+Tab will move focus to the month cell located at the focused event widget. Ctrl+Arrow will move focus to the edges of the view.
  • When out of boundaries horizontally, the focus moves onto the other side of the view.
  • When out of boundaries vertically, the view will automatically scroll to that direction.
  • Shift+Arrow will move focus and initiate selection; pressing arrow keys will select ranges of cells, and letting go of Shift will display the new event popover.
  • When a month cell has overflowing events (as in, there are not enough event widgets that can fit inside the month cell), pressing tab will focus the overflow button, and activating it will show a list of events.

video/mp4

@TheEvilSkeleton@treehouse.systems avatar TheEvilSkeleton , to random

Since Upscaler has just reached 150,000 installs on Flathub, I'm releasing Upscaler 1.5.0! Upscaler is an app that allows you to upscale images locally, securely, and completely offline.

Thanks to @zoeyTheWitch 's wonderful contribution, this release introduces the long overdue functionality to load multiple images at once and add them to the queue. This avoids having to load and add each image to the queue, which will significantly speed up the process of adding images to the queue.

The entire async and threading model was ported to the asyncio and threading modules, thanks to the long awaited (pun very much intended) asyncio integration in PyGObject that was made available recently.

Loading images has become much faster and smoother, while using less memory as a direct result of the asyncio and threading port.

This release also makes saving the resulting images completely optional. Additionally, there is now a copy button to copy images without saving them. As such, the process to upscale images has gotten more straightforward than ever – just load the image, set the desired scaling factor and the image type.

The progress rows have gotten a redesign to make them more reminiscent to typical rows with progress bars.

You can get Upscaler 1.5.0 on Flathub: https://flathub.org/apps/io.gitlab.theevilskeleton.Upscaler

The cursor drags and drops a couple of images into Upscaler. Once loaded, the page transitions into the options page, with a carousel showcasing the images, a section for adjusting the scale factor, a section for selecting the type of image, and a section with the "Upscale" button. The cursor then presses the "Remove" button located at the top right of each image, which removes the associated image. Afterwards, the cursor presses the "Upscale" button, which adds every image but the first one to the queue, where the first image automatically starts upscaling. After completion, the "Copy" and "Save" button appear. The cursor presses the "Copy" button and pastes it into the file manager, in which the image appears. The "Open in External Program" appears. And finally, the cursor presses the aforementioned button, where the app launcher dialog appears.

@mikulski@pol.social avatar mikulski , to random Polish

Praca nad apką idzie dalej, oto drobne demko tego, co mam zrobione do tej pory. Mam sporo rozmaitych bugów, w oczy rzucają się brakujące ikony (podejrzewam, że może to kwestia uprawnień flatpaka?) czy muszę coś zrobić z pobieraniem filmów, bo o ile na tym filmiku wszystko ładnie działa, to filmy z różnych instancji działają... Różnie. Nie pokazuję też tutaj tube.pol.social z tego względu, że API nie zwraca mi streamingPlaylists z listą streamków .m3u8 w różnej rozdzielczości, żebym mógł ładnie odtwarzać dany film, gdzie jak testuję API w przeglądarce, to wszystko działa, zatem nie wiem, dlaczego mojemu klientowi tego nie zwraca. Jeżeli uda mi się skończyć pierwszą działającą wersję apki z pobieraniem feeda, prostym wyszukiwaniem i odtwarzaniem filmów z wybranej przez użytkownika instancji, to udostępniam apkę i jej kodzik do testowania oraz wrzucam filmik z jej pokazówką (może się przy okazji otworzę i zamienię z dwa słowa :P)

video/mp4

@pojntfx@mastodon.social avatar pojntfx , to random

Finally managed to get post-login redirects to specific "URLs" (well, NavigationView tags, to be precise) to work. That was quite a bit more complex than I expected it to be!

@mikulski@pol.social avatar mikulski , to random Polish

Stworzenie własnej apki GNOME na Linuxie jest prostsze niż myślałem. Pobrałem sobie przedwczoraj GNOME Buildera, parę kliknięć i mam gotowe środowisko do pisania apki w Pythonie i budowania Flatpaka i od wczoraj robię własnego klienta PeerTuba. Kiedyś dłubałem w Gtk3 w C, jak chodzi o Pythona, Gtk4 i Libadwaitę to jestem zielony i robię to na czuja, ale jest taka apka, jak Workbench z masą gotowców, z których mogę sobie czerpać (bo niestety na ChacieGPT nie mogę zbytnio polegać, bo jest głupiutki xD). Teraz mam zrobione okienko z dynamicznym wczytywaniem filmów z infinite scrollem. Nie wiem, jak uda mi się ze zrobieniem odtwarzacza filmów, będę kombinował dalej :P

ALT
@dansup@mastodon.social avatar dansup , to random

[Thread, post or comment was deleted by the author]

  • Loading...
  • Lehmanator ,
    @Lehmanator@fosstodon.org avatar

    @dansup @vidzy hmm I've been learning & want to start a project I can list on my resume before applying to Rust jobs.
    Was thinking a / client would be perfect. Was leaning toward since the backend is also Rust, but the UI for that would be more complex & is daunting for my zero exp w/ UI (outside of React)

    would probably need a lot less UI complexity, so maybe I'll make that instead.

    @TheEvilSkeleton@treehouse.systems avatar TheEvilSkeleton , to random

    Introducing Refine, an app to tweak advanced and experimental settings in GNOME. It is an alternative to GNOME Tweaks, and is a pet project I'm currently working to experiment with PyGObject and dconf, while following the data-driven, object-oriented, and composition paradigms.

    The entire codebase is made up of widgets that provide all the functionality needed to add an option. For example, instead of adding each option programmatically in Refine, the ultimate goal is to have it all done in the UI file.

    For example, if we want to add an option to enable or disable middle click paste, all we need is the following code in the UI file:

    $RefineSwitchRow {<br></br>  title: _('Middle Click Paste');<br></br>  schema-id: 'org.gnome.desktop.interface';<br></br>  key: 'gtk-enable-primary-paste';<br></br>}<br></br>
    

    That's it. The RefineSwitchRow widget will do whatever it needs to do to ensure the option is available, grab the setting if it's available, and display it to the user. Many of these widgets provide extra functionality, such as a Reset button.

    You can get Refine on Flathub: https://flathub.org/apps/page.tesk.Refine

    Everything else (source code, screenshot, etc.) is in the project website: https://tesk.page/refine/, as well as the Flathub link.

    TheEvilSkeleton OP ,
    @TheEvilSkeleton@treehouse.systems avatar

    Introducing Refine 0.5.0, the GNOME Tweaks alternative leveraging the data-driven and composition paradigms. This version re-adds the Document font option, and renames "Middle Click Paste" to "Middle Click to Paste Text" with an accompanying subtitle.

    Thanks to @CodedOre, 0.5.0 also adds the capability to rearrange the titlebar's window buttons. This new feature also lets you add the minimize and maximize buttons.

    While we thoroughly tested right-to-left (RTL) direction and keyboard navigation with a screen reader, it's worth noting that we're no experts. We welcome feedback from those who use Refine in RTL and/or with a keyboard and screen reader.

    You can get Refine 0.5.0 right now on Flathub.

    If you would like to help fund projects like Refine, please consider looking at the donation channels at https://dir.floss.fund/view/funding/@tesk.page.

    The cursor drags and drops window title buttons to different sides of the header a few times, which automatically updates the header. The cursor then clicks on these buttons, which brings up a pop-up menu of actions. Finally, the cursor presses the "Reset" button, which resets the layout to the default.

    @david_swift@mastodon.de avatar david_swift , to random

    for is no longer developed on GitHub.

    Find it on the Gitea instance for Aparoksha.

    This is because GitHub is the very opposite of FOSS.

    More information on Aparoksha here.