Add a setting for RTL text direction (integrating the url paramter)

Fixes #1191
This commit is contained in:
Marcel Klehr 2013-03-05 23:12:00 +01:00
parent 2b5cb2989c
commit 760e1b82c3
5 changed files with 32 additions and 3 deletions

View File

@ -60,3 +60,9 @@ Default: en
Example: `lang=ar` (translates the interface into Arabic)
## rtl
* Boolean
Default: true
Displays pad text from right to left.

View File

@ -29,6 +29,7 @@
"pad.settings.stickychat": "Chat always on screen",
"pad.settings.colorcheck": "Authorship colors",
"pad.settings.linenocheck": "Line numbers",
"pad.settings.rtlcheck": "Read content from right to left?",
"pad.settings.fontType": "Font type:",
"pad.settings.fontType.normal": "Normal",
"pad.settings.fontType.monospaced": "Monospace",

View File

@ -313,7 +313,7 @@ function handshake()
if (settings.rtlIsTrue == true)
{
pad.changeViewOption('rtl', true);
pad.changeViewOption('rtlIsTrue', true);
}
// If the Monospacefont value is set to true then change it to monospace.

View File

@ -62,20 +62,36 @@ var padeditor = (function()
},
initViewOptions: function()
{
// Line numbers
padutils.bindCheckboxChange($("#options-linenoscheck"), function()
{
pad.changeViewOption('showLineNumbers', padutils.getCheckbox($("#options-linenoscheck")));
});
// Author colors
padutils.bindCheckboxChange($("#options-colorscheck"), function()
{
padcookie.setPref('showAuthorshipColors', padutils.getCheckbox("#options-colorscheck"));
pad.changeViewOption('showAuthorColors', padutils.getCheckbox("#options-colorscheck"));
});
// Right to left
padutils.bindCheckboxChange($("#options-rtlcheck"), function()
{
pad.changeViewOption('rtlIsTrue', padutils.getCheckbox($("#options-rtlcheck")))
});
html10n.bind('localized', function() {
pad.changeViewOption('rtlIsTrue', ('rtl' == html10n.getDirection()));
padutils.setCheckbox($("#options-rtlcheck"), ('rtl' == html10n.getDirection()));
})
// font face
$("#viewfontmenu").change(function()
{
pad.changeViewOption('useMonospaceFont', $("#viewfontmenu").val() == 'monospace');
});
// Language
html10n.bind('localized', function() {
$("#languagemenu").val(html10n.getLanguage());
// translate the value of 'unnamed' and 'Enter your name' textboxes in the userlist
@ -104,12 +120,14 @@ var padeditor = (function()
if (value == "false") return false;
return defaultValue;
}
self.ace.setProperty("rtlIsTrue", settings.rtlIsTrue);
var v;
v = getOption('rtlIsTrue', false);
v = getOption('rtlIsTrue', ('rtl' == html10n.getDirection()));
// Override from parameters if true
if(settings.rtlIsTrue === true) v = true;
self.ace.setProperty("rtlIsTrue", v);
padutils.setCheckbox($("#options-rtlcheck"), v);
v = getOption('showLineNumbers', true);
self.ace.setProperty("showslinenumbers", v);

View File

@ -217,6 +217,10 @@
<input type="checkbox" id="options-linenoscheck" checked>
<label for="options-linenoscheck" data-l10n-id="pad.settings.linenocheck"></label>
</p>
<p>
<input type="checkbox" id="options-rtlcheck">
<label for="options-rtlcheck" data-l10n-id="pad.settings.rtlcheck"></label>
</p>
<% e.end_block(); %>
<table>
<% e.begin_block("mySettings.dropdowns"); %>