Advertisement · 728 × 90

Posts by Jan Skrasek

MS Teams "how was the call quality?" questionnaire, showing that some of the checkboxes in the form overlap with each other, making the text unreadable.

MS Teams "how was the call quality?" questionnaire, showing that some of the checkboxes in the form overlap with each other, making the text unreadable.

Today's comical MS Teams rendering issue:

1 week ago 2 1 0 0
Android Screenshot Plugin and Kover Code Coverage Having an official solution for Compose Screenshot is great. Basically, you get similar stuff to Paparazzi - a wrapper around layoutlib. What I enjoy is a separate source-set. But that comes with a li...

I migrated to the Android Screenshot Plugin, and I suddenly miss the Kover's code coverage. Here's the fix:

hrach.dev/posts/androi...

1 week ago 1 1 0 0
Video

I built a tiny IntelliJ IDEA plugin for something that had been bothering me for years github.com/saket/intell...

2 weeks ago 28 9 5 0
Post image Post image

It's interesting how clearly Google vs Apple shows up in something as small as virtual devices frames.

iOS simulator: sharp, natively rendered
Android emulator: transparent PNG, rough corners with jagged edges

2 weeks ago 10 3 1 0

In the next version of AGP

- R8 makes coroutines 2x faster

3 weeks ago 57 14 1 2
Video

hasUAVisualTransition landed in Firefox 149, making it available across all major engines. As well as having a very catchy name, it lets you avoid doubling up on page transitions. Here's how it works:

3 weeks ago 76 10 6 1

What happens to Square / Block Android OSS projects post layoffs?

Let's start with some context

OSS at Square is mostly a happy accident. Jack hired Bob, who's job was attracking world class engineers, and he did that through talks & OSS.

1 month ago 82 25 2 1

2022: We need to figure out a way to stop AI from wanting to kill humans
2026: We want AI to kill humans

1 month ago 1 6 0 0
Advertisement

Do you commit manually? If so, is the message (coauthor) prepared by AI?

1 month ago 1 0 1 0

Do you manually add co-authored-by or do you just not commit at all?

1 month ago 0 0 1 0
Nav3: fix Lifecycle for overlaid nav keys This is a post in a series on how I tackled Nav3 concepts and wired things together. Dialogs are modeled as an overlay scene; the destination behind the screen must remain rendered. Right now, its lif...

Nav3: fix Lifecycle for overlaid nav keys - a bugfix for you if you're already on nav3.

hrach.dev/posts/nav3-f...

2 months ago 0 1 0 0
Nav3: fix Lifecycle for overlaid nav keys This is a post in a series on how I tackled Nav3 concepts and wired things together. Dialogs are modeled as an overlay scene; the destination behind the screen must remain rendered. Right now, its lif...

Nav3: fix Lifecycle for overlaid nav keys - a bugfix for you if you're already on nav3.

hrach.dev/posts/nav3-f...

2 months ago 0 1 0 0
Nav3: Draggable Sheet
Nav3: Draggable Sheet YouTube video by Jan Škrášek

www.youtube.com/shorts/CryX2...

2 months ago 0 0 1 0
Nav3: Draggable Sheet This is a post in a series on how I tackled Nav3 concepts and wired things together. I needed a sheet that can be closed by dragging down - it surprised me a bit that the implementation is not that di...

Also, nice to see that it is easy to implement this draggable sheet.
hrach.dev/posts/nav3-d...

2 months ago 0 0 1 0
Nav3: ModalBottomSheet This is a post in a series on how I tackled Nav3 concepts and wired things together. I needed a sheet that can be closed by dragging it down. It surprised me a bit that the implementation isn’t that d...

A bit of my Nav3 experience - first ModalBottomSheets
hrach.dev/posts/nav3-m...

2 months ago 0 0 1 0

20 minutes later... it zipped everything back, I installed the plugin, and I can use Kotlin 2.3.

I'm definitely not a crazy proponent of wibe coding, etc. But truthfully, AI just empowers my skills to do more. I hope I won't lose the joy later on, but rn this is breathtaking.

2 months ago 0 0 0 0

Of course, I had to guide it a bit (like "decompile it first to see what exactly you need to remove and only after that write the script that manipulates the bytecode").

2 months ago 0 0 1 0
Advertisement
Post image

Is there any online editor I could use to do this? No? The only possibility is to do this programmatically. Do I need Kotlin 2.3 so much that I have to learn this? No, sorry.

Wait a moment. Claude code, hello there!

2 months ago 0 0 1 0

TLDR: We need to remove these two lines from bytecode. That's not easy, right? We can decompile, easily remove, but we cannot compile back.

So, bytecode manipulation it is. :( :( :( again.

2 months ago 0 0 1 0
Post image

Well, not so easy. The functionality is not easy to turn off in plugin.xml. :( :( :(

But we have the compiled .class, right? Let's look up the source code in GitHub. Oh yes, this is it: github.com/JetBrains/an...

2 months ago 0 0 1 0

Sorry, I do not have time to wait another week for a fix. So... let's download the Android plugin and disable the functionality that causes this (some lorem ipsum plugin, totally irrelevant - the Lorem ipsum is meant seriously, the code instantiating Lorem Ipsum generator is crashing).

2 months ago 0 0 1 0

I opened a ticket to JetBrains. They identified that it is not an issue of the Kotlin plugin in like 10 minutes (wowo), but the Android one that is crashing (and they posted the relevant stack trace).

2 months ago 0 0 1 0

But of course, the latest IntelliJ EAP supports a newer Android plugin that supports AGP 8.13. A win! Until you realize, it's buggy as hell, it crashes in certain files and then there is no auto-completion nor code highlighting.

2 months ago 0 0 2 0

I want to use Kotlin 2.3 because of certain features. To use it, you need AGP 8.13 to avoid R8 issues and thousands of build warnings. But if you use IntelliJ IDEA like me, no luck, buddy. It supports only 8.12 for now.

2 months ago 0 0 1 0

Want to re-raise this banger of an article, which really helped frame the differences between atproto and bluesky, and turned me into a convert for atproto

bsky.app/profile/dana...

2 months ago 75 11 0 0
Advertisement

The Kotlin ecosystem might not choose a strict 'SemVer' notation (and it's gonna be fine!)

blog.sellmair.io/the-kotlin-e...

3 months ago 6 3 1 1
Video

👀 Want to see a preview of what's coming up in #JetpackCompose?

We heard you that debugging shared elements is tricky. In 1.11.0-alpha03, a new composable LookaheadAnimationVisualDebugging was added.

Wrap your SharedTransitionLayout to add visual cues to track down those hard to debug issues. 🐛⤵️

3 months ago 41 12 1 1

I think we should aim for both.
Modern hardware should reasonnably be able to create a graph with hundreds of thousands of nodes in milliseconds.
Of course that doesn't work if there's IO in between but this is where we need Gradle strict mode.

3 months ago 4 1 0 0
Post image

The iPod shuffle turns 21 today!

3 months ago 113 10 5 3
Post image

GraphQL scalar specification just got LocalDateTime.

Love it! 😍🎉🎄
github.com/graphql/grap...

3 months ago 0 0 0 0