diff options
-rw-r--r-- | src/locales/en.json | 1 | ||||
-rw-r--r-- | src/static/css/pad.css | 24 | ||||
-rw-r--r-- | src/static/js/chat.js | 14 | ||||
-rw-r--r-- | src/static/js/pad.js | 15 | ||||
-rw-r--r-- | src/templates/pad.html | 4 |
5 files changed, 58 insertions, 0 deletions
diff --git a/src/locales/en.json b/src/locales/en.json index 7f5846fd..de309ba1 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -32,6 +32,7 @@ "pad.settings.padSettings": "Pad Settings", "pad.settings.myView": "My View", "pad.settings.stickychat": "Chat always on screen", + "pad.settings.chatAndUsers": "Show Chat and Users", "pad.settings.colorcheck": "Authorship colors", "pad.settings.linenocheck": "Line numbers", "pad.settings.rtlcheck": "Read content from right to left?", diff --git a/src/static/css/pad.css b/src/static/css/pad.css index 4ba9f575..0ecf91f0 100644 --- a/src/static/css/pad.css +++ b/src/static/css/pad.css @@ -914,6 +914,30 @@ input[type=checkbox] { border-left: 1px solid #ccc !important; width: 185px !important; } +.chatAndUsers{ + display:block !important; + right:0px !important; + border-radius:0px !important; + height:200px !important; + width:182px !important; + margin:2px 0 0 0 !important; + border: none !important; + border-bottom: 1px solid #ccc !important; +} +.chatAndUsersChat > div > #titlecross{ + display:none; +} +.chatAndUsersChat{ + bottom:0px !important; + padding:0 !important; + margin:0 !important; + right:0 !important; + top: 315px !important; + width:182px !important; + border: none !important; + padding:5px !important; +} + @media screen and (max-width: 600px) { .toolbar ul li.separator { display: none; diff --git a/src/static/js/chat.js b/src/static/js/chat.js index 4cbbbaa7..82ca15bd 100644 --- a/src/static/js/chat.js +++ b/src/static/js/chat.js @@ -54,6 +54,20 @@ var chat = (function() isStuck = false; } }, + chatAndUsers: function(status){ + if(status || $('#options-chatandusers').prop('checked')){ + padcookie.setPref("chatAndUsers", true); + chat.stickToScreen(true); + $('#options-stickychat').prop("disabled", "disabled"); + $('#users').addClass("chatAndUsers"); + $("#chatbox").addClass("chatAndUsersChat"); + }else{ + chat.stickToScreen(false); + $('#options-stickychat').prop("disabled", false); + $('#users').removeClass("chatAndUsers"); + $("#chatbox").removeClass("chatAndUsersChat"); + } + }, hide: function () { // decide on hide logic based on chat window being maximized or not diff --git a/src/static/js/pad.js b/src/static/js/pad.js index 5bbf4123..7c2e22c7 100644 --- a/src/static/js/pad.js +++ b/src/static/js/pad.js @@ -120,6 +120,7 @@ var getParameters = [ { name: "userColor", checkVal: null, callback: function(val) { settings.globalUserColor = decodeURIComponent(val); } }, { name: "rtl", checkVal: "true", callback: function(val) { settings.rtlIsTrue = true } }, { name: "alwaysShowChat", checkVal: "true", callback: function(val) { chat.stickToScreen(); } }, + { name: "chatAndUsers", checkVal: "true", callback: function(val) { chat.chatAndUsers(); } }, { name: "lang", checkVal: null, callback: function(val) { window.html10n.localize([val, 'en']); } } ]; @@ -562,6 +563,10 @@ var pad = { chat.stickToScreen(true); // stick it to the screen $('#options-stickychat').prop("checked", true); // set the checkbox to on } + if(padcookie.getPref("chatAndUsers")){ // if we have a cookie for always showing chat then show it + chat.chatAndUsers(true); // stick it to the screen + $('#options-chatandusers').prop("checked", true); // set the checkbox to on + } if(padcookie.getPref("showAuthorshipColors") == false){ pad.changeViewOption('showAuthorColors', false); } @@ -791,6 +796,16 @@ var pad = { $('#options-stickychat').prop("checked", false); // set the checkbox for off } }, + determineChatAndUsersVisibility: function(){ + var chatAUVisCookie = padcookie.getPref('chatAndUsersVisible'); + if(chatAUVisCookie){ // if the cookie is set for chat always visible + chat.chatAndUsers(true); // stick it to the screen + $('#options-chatandusers').prop("checked", true); // set the checkbox to on + } + else{ + $('#options-chatandusers').prop("checked", false); // set the checkbox for off + } + }, determineAuthorshipColorsVisibility: function(){ var authColCookie = padcookie.getPref('showAuthorshipColors'); if (authColCookie){ diff --git a/src/templates/pad.html b/src/templates/pad.html index ce1ea218..48b46c41 100644 --- a/src/templates/pad.html +++ b/src/templates/pad.html @@ -134,6 +134,10 @@ <label for="options-stickychat" data-l10n-id="pad.settings.stickychat"></label> </p> <p> + <input type="checkbox" id="options-chatandusers" onClick="chat.chatAndUsers();"> + <label for="options-chatandusers" data-l10n-id="pad.settings.chatAndUsers"></label> + </p> + <p> <input type="checkbox" id="options-colorscheck"> <label for="options-colorscheck" data-l10n-id="pad.settings.colorcheck"></label> </p> |