quittle / gradle-svg-2-android-vector

Gradle plugin for automatic conversion of SVG's to Android Vector graphics
Apache License 2.0
14 stars 1 forks source link

RTL support #166

Open zoran-vasilic opened 1 year ago

zoran-vasilic commented 1 year ago

Hi everyone, I wanted to ask if the plugin has support for rtl (right-to-left) SVG assets, since a lot of apps also require assets to be shown for Arabic markets.

Thanks for the answer.

quittle commented 1 year ago

Hey, it's me, everyone. Haha.

So this plugin does not do anything special for rtl cases but I would be happy to review a PR to add support for it if you wanted to take a swing at it

zoran-vasilic commented 1 year ago

@quittle Thank you for the quick answer. Yes, it would be good to add this support, since for our project that rtl support is needed. Also, how much time is needed to implement this feature, since this support is needed as soon as possible for our implementation? Is it possible to finish this until the end of next week?

quittle commented 1 year ago

It may be simple or it could take some work, I honestly don't know. This plugin is mostly a wrapper around a tool from the Android SDK that does this already so I imagine there's a decent chance Google already thought of this.

I recommend testing what your SVGs do today with this plugin, they may just work or may not. I'm not sure exactly what behavior you want from this plugin. Perhaps it's as simple as turning android:autoMirrored on for the vector drawables when RTL support is needed. If so, I recommend adding a new configuration to this plugin that uses a list of regexes to match the SVGs that need RTL support if it's not obvious from attributes of the SVG itself.

Regarding timing, it's Thanksgiving this week for me and I will be away on vacation through Wednesday next week. Depending on how I'm feeling, I may review a PR while away or may not, but no promises

zoran-vasilic commented 1 year ago

Okay, thanks for the information. It is not as urgent as I initially thought, so you could take some time and see what is the best approach. Basically, yes, it would be just enough to activate the android:autoMirrored property in vector drawables converted from SVGs, similar like what you can do with Android Studio with enable auto mirroring for RTL layout when converting SVGs to drawable xml via vector asset window. Based on if the SVG has direction="rtl" property, you should know that this should be an RTL drawable xml, just an example.

quittle commented 1 year ago

I don't actively maintain this project anymore. It's more in maintenance mode though I'd be happy to review a PR from you if you want to add it. I don't have the time or energy to focus on this plugin at the moment, sorry.

zoran-vasilic commented 1 year ago

I understand. Now the thing is that I am short on time as well, since I work for the company, but as a beginning, it's a nice step just to have it, and then improve it later when needed. Thanks for answering my questions once again and I wish you and your family a wonderful Thanksgiving. Go Browns. :)