mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-04-21 07:56:16 -04:00
Merge pull request #1593 from marcelklehr/feature/rtl-pad-setting
Add a setting for RTL text direction (integrating the url paramter)
This commit is contained in:
commit
2a8038b9fe
5 changed files with 32 additions and 3 deletions
|
@ -60,3 +60,9 @@ Default: en
|
||||||
|
|
||||||
Example: `lang=ar` (translates the interface into Arabic)
|
Example: `lang=ar` (translates the interface into Arabic)
|
||||||
|
|
||||||
|
## rtl
|
||||||
|
* Boolean
|
||||||
|
|
||||||
|
Default: true
|
||||||
|
Displays pad text from right to left.
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
"pad.settings.stickychat": "Chat always on screen",
|
"pad.settings.stickychat": "Chat always on screen",
|
||||||
"pad.settings.colorcheck": "Authorship colors",
|
"pad.settings.colorcheck": "Authorship colors",
|
||||||
"pad.settings.linenocheck": "Line numbers",
|
"pad.settings.linenocheck": "Line numbers",
|
||||||
|
"pad.settings.rtlcheck": "Read content from right to left?",
|
||||||
"pad.settings.fontType": "Font type:",
|
"pad.settings.fontType": "Font type:",
|
||||||
"pad.settings.fontType.normal": "Normal",
|
"pad.settings.fontType.normal": "Normal",
|
||||||
"pad.settings.fontType.monospaced": "Monospace",
|
"pad.settings.fontType.monospaced": "Monospace",
|
||||||
|
|
|
@ -313,7 +313,7 @@ function handshake()
|
||||||
|
|
||||||
if (settings.rtlIsTrue == true)
|
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.
|
// If the Monospacefont value is set to true then change it to monospace.
|
||||||
|
|
|
@ -62,20 +62,36 @@ var padeditor = (function()
|
||||||
},
|
},
|
||||||
initViewOptions: function()
|
initViewOptions: function()
|
||||||
{
|
{
|
||||||
|
// Line numbers
|
||||||
padutils.bindCheckboxChange($("#options-linenoscheck"), function()
|
padutils.bindCheckboxChange($("#options-linenoscheck"), function()
|
||||||
{
|
{
|
||||||
pad.changeViewOption('showLineNumbers', padutils.getCheckbox($("#options-linenoscheck")));
|
pad.changeViewOption('showLineNumbers', padutils.getCheckbox($("#options-linenoscheck")));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Author colors
|
||||||
padutils.bindCheckboxChange($("#options-colorscheck"), function()
|
padutils.bindCheckboxChange($("#options-colorscheck"), function()
|
||||||
{
|
{
|
||||||
padcookie.setPref('showAuthorshipColors', padutils.getCheckbox("#options-colorscheck"));
|
padcookie.setPref('showAuthorshipColors', padutils.getCheckbox("#options-colorscheck"));
|
||||||
pad.changeViewOption('showAuthorColors', 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()
|
$("#viewfontmenu").change(function()
|
||||||
{
|
{
|
||||||
pad.changeViewOption('useMonospaceFont', $("#viewfontmenu").val() == 'monospace');
|
pad.changeViewOption('useMonospaceFont', $("#viewfontmenu").val() == 'monospace');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Language
|
||||||
html10n.bind('localized', function() {
|
html10n.bind('localized', function() {
|
||||||
$("#languagemenu").val(html10n.getLanguage());
|
$("#languagemenu").val(html10n.getLanguage());
|
||||||
// translate the value of 'unnamed' and 'Enter your name' textboxes in the userlist
|
// 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;
|
if (value == "false") return false;
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
self.ace.setProperty("rtlIsTrue", settings.rtlIsTrue);
|
|
||||||
|
|
||||||
var v;
|
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);
|
self.ace.setProperty("rtlIsTrue", v);
|
||||||
|
padutils.setCheckbox($("#options-rtlcheck"), v);
|
||||||
|
|
||||||
v = getOption('showLineNumbers', true);
|
v = getOption('showLineNumbers', true);
|
||||||
self.ace.setProperty("showslinenumbers", v);
|
self.ace.setProperty("showslinenumbers", v);
|
||||||
|
|
|
@ -217,6 +217,10 @@
|
||||||
<input type="checkbox" id="options-linenoscheck" checked>
|
<input type="checkbox" id="options-linenoscheck" checked>
|
||||||
<label for="options-linenoscheck" data-l10n-id="pad.settings.linenocheck"></label>
|
<label for="options-linenoscheck" data-l10n-id="pad.settings.linenocheck"></label>
|
||||||
</p>
|
</p>
|
||||||
|
<p>
|
||||||
|
<input type="checkbox" id="options-rtlcheck">
|
||||||
|
<label for="options-rtlcheck" data-l10n-id="pad.settings.rtlcheck"></label>
|
||||||
|
</p>
|
||||||
<% e.end_block(); %>
|
<% e.end_block(); %>
|
||||||
<table>
|
<table>
|
||||||
<% e.begin_block("mySettings.dropdowns"); %>
|
<% e.begin_block("mySettings.dropdowns"); %>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue