Bug 47969 - RTL (CTL) should be enabled by default for users with keyboard layouts installed which require RTL (CTL)
Summary: RTL (CTL) should be enabled by default for users with keyboard layouts instal...
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Localization (show other bugs)
(earliest affected)
3.5.1 release
Hardware: All All
: medium enhancement
Assignee: ⁨خالد حسني⁩
Whiteboard: target:5.4.0
: 47143 (view as bug list)
Depends on: 54493
Blocks: RTL-CTL
  Show dependency treegraph
Reported: 2012-03-27 16:04 UTC by Shahar Or
Modified: 2017-10-12 15:43 UTC (History)
9 users (show)

See Also:
Crash report or crash signature:

Directionality buttons in Google Docs toolbar (733 bytes, image/png)
2014-02-10 14:57 UTC, Shahar Or

Note You need to log in before you can comment on or make changes to this bug.
Description Shahar Or 2012-03-27 16:04:08 UTC
Support for RTL, including those directionality controls, should be enabled by default, regardless of the user's locale.

This is because many RTL users choose a non-RTL locale and are then left wondering where the RTL controls are.

Here's the description from downstream Ubuntu bug:
This is concerning the usability issue where an RTL user gets in front of LibreOffice and doesn't find the two directionality buttons in the toolbar (OMG!!!). He won't find them anywhere until he does 8 mouse clicks to turn the RTL feature on:

Tools -> Options -> Language Settings -> Languages -> Enabled for complex text layout (CTL) -> CTL: <Language> -> OK

My mom can't do this :-/ .

This is how this happens:

CTL is off by default in LibreOffice, and thus RTL is, too.

As I've been briefed, this is how it gets turned on for RTL users automatically:
1. RTL locales
2. A language support package of one of the RTL languages is installed

The problem is that these two triggers for CTL don't cover all the situations where an RTL user runs LibreOffice.

Many RTL users choose a non-RTL locale. They can also choose not to install any of the language support packages. The presence of an RTL language layout is all that indicates their RTL-ness :) Even when RTL users use a friend's/public computer as guests they expect the RTL buttons.

Then, why make RTL off by default? Does it cost a lot of memory? Does it have bad Karma? :)

The expectation to have those RTL buttons is because they seem to be always there in Microsoft Office since as far as I can remember. I never had to turn anything on. They were always there by default.

In order to understand the severity of this issue, let me tell you what users do when they don't find those RTL buttons. They try to configure the toolbar, thinking that they must be disabled there. They find them enabled, actually. Although enabled in the toolbar, they don't appear :-O . After that they're quite lost so they might go to the correct Language Settings -> Languages configuration section. There, they will not find "RTL" or "Left to right". How would they know whether to enable the "Enhanced language support" for Asian languages or for Complex text layout? Most users would lose a few hairs by that point.


Thanks and blessings,
Comment 1 Joel Madero 2012-06-17 19:41:13 UTC
Unfortunately I think for performance reasons making this active by default won't be on our list. This may change as I've sent an email to the dev list but for now I'm marking it as WONTFIX, so if I don't get back to it in the next week or so we can assume it'll stay as WONTFIX
Comment 2 Joel Madero 2012-06-19 11:34:00 UTC
I jumped too fast for this one. There is an ongoing discussion about if/when and how to possibly do this. Moving back to NEW & assigning it to myself for the time being. I'll post when a final decision and/or fix has been made.
Comment 3 Shahar Or 2012-06-19 13:38:23 UTC
I would just like to reiterate that RTL users should always get their RTL support enabled. This is what they're used to from other productivity suites. If they don't have their RTL support then most people would consider it a major pain to go and figure out what the problem is.

My cents: enable by default for everyone.
Comment 4 Joel Madero 2012-07-11 21:25:39 UTC
Just an update on this. 

As of now there is no consensus (or even close to a consensus) on what to do about this issue. There is an ongoing discussion but as of now....this is on hold until further notice. There are quite a few options that we're considering, each with good things and bad things associated with them.

I'll post when there is an update, could be awhile though
Comment 6 Nathan Wells 2012-07-13 00:36:47 UTC
I think enabling the CTL by default would dramatically increase LibreOffice usage, because many first time users get frustrated and don't use LibreOffice again rather than taking the time to figure out how and where to enable CTL (and RTL).
Comment 7 bfoman (inactive) 2012-08-08 13:11:56 UTC
*** Bug 47143 has been marked as a duplicate of this bug. ***
Comment 8 Shahar Or 2012-08-20 21:22:40 UTC
Hi, here's a quote from the latest comment downstream Ubuntu bug report:

--- snip ---


RTL language user here (Hebrew), I signed up just to tell you that I got to this page after a nerve breaking search thru the menus looking for the RTL option exactly as Shahar described.

I was even more frustrated when I found out that the button is present on my sister's Windows machine running LibreOffice, but not on my Ubuntu laptop.

A little research is not gonna scare a CS MSc student of course, but every friend I know would have uninstalled the program or just stop using it.

From my experience, Usability >> Performance. What benefit do I get from an allegedly (did you actually benchmark the thing with and without the feature on and saw a meaningful difference?) faster program that I can't use?

You want better performance? Go look for the option to disable CTL. I'm not supposed to be looking for the option just to be able to use it. If the performance is OK for Microsoft Office with the feature on, no reason it won't be fine for LibreOffice.

Leave the damn thing on. And excuse my language & aggression :) I just wanna see open source get as usable as retail products.


--- snip ---
Comment 9 abdulmajeed 2012-08-25 04:04:24 UTC
I agree with the quote above 

any one who cares that much about performance mostly he is expert so he can disable the CTL 
but for normal and new users mostly they don't  know how to enable CTL

i think making LibreOffice  more friendly more important then high performance.

thank you      

Comment 10 Caolán McNamara 2012-09-04 11:47:18 UTC
There are no performance reasons for turning CTL or CJK on/off as far as I can recall. "Just" the explosion of bewildering extra features for users of plain-old-latin scripts.

Perhaps the least contentious solution is to additionally enable the CTL (or CJK) features on windows if a window keyboard layout is installed which falls into one of those categories. Filed an easy hack as bug 54493 to do that.
Comment 11 Joel Madero 2012-09-14 19:20:34 UTC
I am marking this as NEEDINFO for my own benefit. We are working on a solution, one of which was proposed by Caolán. It's on my list still and not being ignored. I'm hoping someone will take FDO#54493 so we can see if that's enough to satisfy most users. 

NEEDINFO is asking for info from our team, not from the bug reporter or any other commenter in this case. I took it out of NEW status because it's not currently being done (because we haven't decided on a solution). 

Thanks to everyone for being patient, we're trying to get the best solution for everyone.
Comment 12 Shahar Or 2012-09-14 21:52:32 UTC
I don't mean to add noise and turn this into a noisy bug.

I just want to point out an obvious question about the FDO#54493 solution.

What about Linux users? Hey- I'm a Linux user and I'm the one who reported this bug :)

But, really, even if the same principal can be implemented on all platforms, will that be enough? What about a scenario where a user:
1. turns on his system for the first time
2. opens up the lovely Writer
3. discovers there's no Arabic keyboard layout defined
4. opens his keyboard layout settings and adds his Arabic layout
5. tries to use Writer that's already open
6. discovers that there's no RTL support

That would be, I imagine, a common scenario in Linux distributions live CDs/USBs where it would leave a bad impression, unreflective of the overall Linux and LibreOffice experience.

Thanks for bearing with me,
Comment 13 Joel Madero 2012-09-14 22:02:04 UTC
No need to apologize! We're trying to keep our minds open to ideas. So, I'm going to work on a summary of proposals with pros and cons and bring this up again during conference call as it's clearly a popular issue that we're trying to think of creative solutions.

Can I ask a stupid American question, with Linux, do you need ibus to use Arabic (or other languages that use CTL)? If so, maybe we can do some kind of check with ibus and languages. I know I use Telugu which doesn't require CTL and I use it through ibus.
Comment 14 Shahar Or 2012-09-14 22:27:38 UTC
Thanks, Joel,

My example was Arabic but I'm a Hebrew user and not an Arabic user.

So I know about Hebrew that at least here in Ubuntu I don't need to make any special settings besides adding the Hebrew layout. So I guess that it doesn't require ibus but I'm just guessing.
Comment 15 Joel Madero 2012-09-14 22:36:17 UTC
Okay, maybe we should/can do a check on keyboard layouts. Feel free to post again with other suggestions. I know that turning it on for everyone isn't likely so we're looking for creative options.

Sorry about asking about Arabic, I should have defaulted to "Languages requiring CTL" ;) 

Thanks for the information
Comment 16 Shahar Or 2012-09-14 23:06:23 UTC
Here are some more ideas:

1. Dialog window on first run that asks whether you want RTL or not
2. Detect whether user is accustomed to RTL using webcam and eyeball processing logic (only joking)
3. Turn on RTL according to user's geographic location (simply a bad idea)
4. Determine whether user uses RTL by going through his files and browser history (might draw some headlines around the webs)
5. Determine whether user is RTL by listening on the microphone and detecting spoken langauges (I didn't think I'd think of this many ways to do this)

Are there significant GUI elements added for RTL support?

If CTL has more to it than RTL and enabling it adds a significant amount of GUI elements which are not RTL then perhaps CTL can be broken into RTL and other different independent features. That way turning RTL on would only add the RTL GUI elements thus having it on by default for everyone could be considered OK.

If there are indeed significant additions of RTL related elements in the GUI when RTL is on, then perhaps they can be made more discrete or less confusing somehow for non-RTL users, thus RTL could be turned on by default.

What about a dialog window popping up at the first occurrence of a character being typed in where that character originates in a RTL language? That window would ask whether to turn RTL support on. How about skipping the window and just enabling RTL in that case? Or how about popping up a window that just mentions that RTL support has been enabled because an RTL language was detected and that RTL support can be turned off in the settings. On second thought, this can be triggered by the editing of a document that has RTL in it.

Perhaps if it is only viewing a document with RTL then nothing will happen; when editing one a window asking whether to turn RTL on will appear; and when an RTL character is typed, then it would be turned on with or without a dialog window.

Comment 17 Ahmed Sa 2013-01-29 14:45:59 UTC
There is an easy solution: don't enable Text direction (RTL|LTR) buttons 
on the toolbar if CTL support isn't enabled, when user don't find this 
buttons they will try to add them to the toolbar, and then when they actvite
them we simple ask the user if he want to active CTL support in order to add
Comment 18 Ahmed Sa 2013-01-29 14:48:46 UTC
Sorry for re-commenting :)

There is an easy solution: don't enable Text direction (RTL|LTR) buttons on the toolbar if CTL support isn't enabled, when users don't find those buttons, they will try to add them to the toolbar, and when they activate them, we simple ask the user if he want to active CTL support in order to add this buttons to the toolbar
Comment 19 Emir Sarı 2013-02-01 20:15:01 UTC
As far as I remember, RTL is enabled by default on Microsoft Office (except MS Office for Mac, there is no bloody RTL support).  

For MS Office switchers, it would be great to have RTL on by default (and of course for native LO users as well).
Comment 20 Caolán McNamara 2013-07-12 14:48:37 UTC
This is (hopefully) now implemented for windows, i.e. any CTL keyboards installed then CTL is enabled, similarly for CJK. So remaining I guess is something similar for Linux/Mac.
Comment 21 Shahar Or 2013-07-17 11:39:45 UTC
I'm a Linux user and and RTL user (Hebrew) and I can attest that almost every user who will even want RTL turned on will always have an RTL keyboard layout present. That is, if we can count on distros to help him configure it.
Comment 22 QA Administrators 2014-02-02 02:06:34 UTC
Dear Bug Submitter,

Please read the entire message before proceeding.

This bug has been in NEEDINFO status with no change for at least 6 months. Please provide the requested information as soon as possible and mark the bug as UNCONFIRMED. Due to regular bug tracker maintenance, if the bug is still in NEEDINFO status with no change in 30 days the QA team will close the bug as INVALID due to lack of needed information.

For more information about our NEEDINFO policy please read the wiki located here: 

If you have already provided the requested information, please mark the bug as UNCONFIRMED so that the QA team knows that the bug is ready to be confirmed.

Thank you for helping us make LibreOffice even better for everyone!

Warm Regards,
QA Team
Comment 23 Shahar Or 2014-02-10 11:28:29 UTC
This is an issue in Linux, still.
Comment 24 Joel Madero 2014-02-10 13:44:08 UTC
I think after long discussion we decided that enabling it by default would cause more issues than leaving it off as a bunch of additional things are enabled when it is turned on that would confuse people who don't use RTL. I will try to verify this.
Comment 25 Shahar Or 2014-02-10 14:35:17 UTC

I don't even know what CTL encompasses.

My concern is of bi-directionality.

If bi-directionality is contained in a feature package of lots of other stuff, then that may be wrong.

The main bi-directionality feature is the addition of two, directionality, buttons to the toolbar, for example.

This should be resolved in a modern productivity suite.
Comment 26 Joel Madero 2014-02-10 14:39:50 UTC
So the new request is to have buttons in the toolbar which makes it easy to turn it on/off? That is different from the title of the bug (and what I thought was being requested). Just trying to clarify what exactly would make it easier for you and others in your position. Thanks!
Comment 27 Shahar Or 2014-02-10 14:57:33 UTC
Created attachment 93780 [details]
Directionality buttons in Google Docs toolbar

Thank you, Joel, for the attention.

Users of RTL languages expect two directionality buttons in the toolbar (and elsewhere, where directionality applies).

One of these buttons is 'Left to Right' and the other is 'Right to Left'.

Attached screen shot of Google Docs' directionality toolbar buttons.

These buttons appear when bi-directionality support is on in LibreOffice.

Whether this is part of CTL, I don't know. I may have delved deeper into this subject in the past but I don't remember.

Just make sure that users of right-to-left languages (see Wikipedia for a complete list) have bi-directionality enabled by default in LibreOffice.

The detection of this should be based on the available keyboard layouts and not on the locale.
Comment 28 Joel Madero 2014-02-10 15:37:40 UTC
Marking as NEW but this is an enhancement request and likely will take quite a bit of work (detecting keyboard layouts is currently not part of the code if I'm not mistaken) - so that being said it could be a long time before it's implemented. If you are a developer or know a developer would like to attempt, we might be able to get some code pointers.

Thanks for explaining
Comment 29 ⁨خالد حسني⁩ 2016-12-26 06:14:33 UTC
“CTL” mode is now enabled by default unconditionally.