I think the thing that we'd want is to have a separate RTL icon theme that
inherits from the LTR icon theme, but overrides some icons with flipped
icons. This can be done with a few tweaks to the icon-theme specification,
and in GTK+.


On Wed, Oct 16, 2013 at 5:42 PM, fr33domlover <fr33domlo...@mailoo.org>wrote:

> You're right, drop shadows don't work well when flipped.
>
> But I have three suggestions:
>
> 1. When widgets do enable perfect clean flipping, use it
>
> 2. When an app has two directional matching widgets, e.g. left and right
> arrows, simply switch between then instead of fliping. This will
> probably require an "matching image" object property
>
> 3. Add guidance to the Gnome devel docs, which explains how to write
> just few extra simple lines which makes your app more RTL-ready, so that
> we won't need to "hunt" and fix the same bugs again and again in each
> new app/design/implementation/version
>
> On ד', 2013-10-16 at 23:25 +0200, Dov Grobgeld wrote:
> > No, I don't think it is universally reasonable. Because in general an
> > icon may have a style that is broken when the image is flipped.
> > Imagine e.g. if the buttons in some style contains arrows that were
> > drawn with an elliptical pen slanted at 45 degrees to the right. In
> > such a case the left and the right arrow are not a mirror image of one
> > another. Another example is if the style contains a drawing with
> > dropshadow to the right. Horizontally flipping the image would put the
> > drop shadow to the left, which would be inconsistent with the rest of
> > the theme. You may claim that if this was done throughout the
> > application then it wouldn't make any difference, but if e.g. have an
> > embedded label with "Latin name: " and an LTR widget then it would be
> > inconsistant within the application. Even between applications that
> > have either LTR or RTL directionality on the desktop would look
> > inconsistent.
> >
> >
> > Thus, imo there is no automatic solution, but you need to create
> > dedicated RTL images to make things look good in a RTL environment.
> >
> > Regards,
> > Dov
> >
> >
> >
> >
> >
> > On Wed, Oct 16, 2013 at 11:58 PM, fr33domlover
> > <fr33domlo...@mailoo.org> wrote:
> >         Hello Gtk+ developers,
> >
> >         My native language is an RTL language. I've been examining
> >         several RTL
> >         problems in GNOME software recently, and I noticed some
> >         recurring
> >         patterns.
> >
> >         Some of them are related to text alignment and fonts, which I
> >         won't talk
> >         about this time because I haven't found a universal solutio.
> >         But I think
> >         I did find a solution for images.
> >
> >         It is very common for images where the direction matters, such
> >         as
> >         prev/next arrows, to be in the wrong direction when apps run
> >         in RTL
> >         locales. So far, a volunteer has been fixing these problems by
> >         hand by
> >         sending patches to all GNOME software containing the problem.
> >         For
> >         example, the prev/next arrows in Epiphany and in Evolution's
> >         notification-bar bubble.
> >
> >         Here are some related bugs:
> >
> https://git.gnome.org/browse/rhythmbox/commit/?id=eb4641a127828a0fa567eb19c26c66ff7f3b2f52
> >
> https://git.gnome.org/browse/totem/commit/?h=gnome-3-10&id=9055f411d2332c43c725ccbb88f5f7c240885e91
> https://git.gnome.org/browse/totem/commit/?h=gnome-3-10&id=3ff23cf41e0192860ee2ad5c70c99c3c4d024196
> >
> >
> >         Instead of doing it by hand, or trying to teach developers how
> >         to make
> >         their apps direction-aware, I found a universal solution which
> >         requires
> >         a bit of work once, and will work after that without any
> >         developer
> >         intervention.
> >
> >         The idea is: Directional Images.
> >
> >         Example: An arrow is a directional image. The direction of the
> >         arrow
> >         matters. When an arrow icon is rendered in RTL locales, it
> >         should be
> >         rendered horizontally flipped, so right becomes left and left
> >         becomes
> >         right.
> >
> >         A folder image is a non-directional image. Changing its
> >         direction
> >         doesn't make any sense or different in any direction or
> >         locale. The same
> >         is true for people's faces, an image of the Earth, a map of a
> >         city, etc.
> >
> >         The solution I suggest is to add a "directional" boolean
> >         property to
> >         GTK's image class used for icons. The property will be stored
> >         as image
> >         metadata, and set by the designer of the image. After that,
> >         the code
> >         which renders the menu/toolbar icons will just need to check
> >         if the
> >         image is directional and the locale is RTL. If both are true,
> >         draw the
> >         image horizontally flipped. Otherwise, draw as usual.
> >
> >         I believe it shouldn't take extra resources, because the
> >         drawing loop
> >         will simply need to fill pixels from the other side. No extra
> >         processing
> >         is required (unless computing "size - x" in each loop
> >         iteration is too
> >         much slower than just "x", which I doubt").
> >
> >         Is it possible? Does it sound a reasonable approach?
> >
> >
> >
> >         fr33domlover
> >
> >         _______________________________________________
> >         gtk-devel-list mailing list
> >         gtk-devel-list@gnome.org
> >         https://mail.gnome.org/mailman/listinfo/gtk-devel-list
> >
> >
>
>
> _______________________________________________
> gtk-devel-list mailing list
> gtk-devel-list@gnome.org
> https://mail.gnome.org/mailman/listinfo/gtk-devel-list
>



-- 
  Jasper
_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-devel-list

Reply via email to