cashapp / paparazzi

Render your Android screens without a physical device or emulator
https://cashapp.github.io/paparazzi/
Apache License 2.0
2.23k stars 211 forks source link

Add boolean Flag to decide if image should be original size or not #1382

Closed emuguy1 closed 1 month ago

emuguy1 commented 2 months ago

Inspired by different other comments, Issues and another Pull Request by @sdoward #543, I tried to add a more simpler solution to the problem I and other developers are facing. As I want to use the created Screenshots to also upload it to the PlayStore and need full Res Images for that the current limit is blocking me from using the images.

Therefore I added an optional boolean flag 'useDeviceResolution', that when set to true, lets the resulting image be the deviceConfigs scale.

In the default case the image still gets downscaled to decrease file size.

I would really appreciate a feedback and if possible a fast inclution in the project, as I really want/need this feature.

emuguy1 commented 2 months ago

@swankjesse Is there any update on when this can be included in an release? What would be the process to include something like this. Is there something I can help to get this issue resolved?

mehrmann commented 2 months ago

We're facing the same issue, would want this to be merged so we can choose to have high resolution screenshots.

jrodbx commented 2 months ago

@emuguy1 I'm ambivalent about adding this as it will likely be rewritten and break in the future; that being said, it seems like a simple enough thing to include now. Mind adding a test that varies the boolean value using TestParameterInjector (see paparazzi-gradle-plugin/src/test/projects/locale-qualifier for an example)?

emuguy1 commented 1 month ago

@swankjesse @jrodbx can maybe one of you take a look at this. It fails with a gradle build error saying it cant find the guava-fix.gradle

Build file '/Users/runner/work/paparazzi/paparazzi/paparazzi-gradle-plugin/src/test/projects/device-resolution/build.gradle' line: 28

* What went wrong:
A problem occurred evaluating root project 'device-resolution'.
> Could not read script '/Users/runner/work/paparazzi/paparazzi/paparazzi-gradle-plugin/src/test/projects/guava-fix.gradle' as it does not exist.

I did find the error with the image difference. But this one I cant work out. I definitely see the file, the build gradle is the same as in the other projects and there it works.

Thanks for the help in advance.

TWiStErRob commented 1 month ago

Update from main and remove the apply: https://github.com/cashapp/paparazzi/commit/d20664920ee8b46c1741cecb5f3804b7d9ff1d73

emuguy1 commented 1 month ago

it works!!!!!! nice thanks a lot.