diff options
| author | RblSb <msrblsb@gmail.com> | 2020-05-20 18:17:03 +0300 |
|---|---|---|
| committer | RblSb <msrblsb@gmail.com> | 2020-05-20 19:59:56 +0300 |
| commit | 844048b21f34b066bc003a13fae9fca92872c746 (patch) | |
| tree | 4719f5805ac387a550f2a3345d46bbd816e0223f /src/client/Buttons.hx | |
| parent | 8c995a8e206950d7dbb2c2eced641f70b38e44f8 (diff) | |
Fix chat word wrap
closes #6
Diffstat (limited to 'src/client/Buttons.hx')
| -rw-r--r-- | src/client/Buttons.hx | 26 |
1 files changed, 14 insertions, 12 deletions
diff --git a/src/client/Buttons.hx b/src/client/Buttons.hx index 1377b09..ffc7667 100644 --- a/src/client/Buttons.hx +++ b/src/client/Buttons.hx @@ -8,18 +8,18 @@ import js.html.Element; import client.Main.ge; import js.Browser.window; import js.Browser.document; -import js.html.Event; class Buttons { + static inline var CHAT_MIN_SIZE = 200; static var split:Split; static var settings:ClientSettings; public static function init(main:Main):Void { settings = main.settings; - if (settings.isSwapped) document.body.classList.add("swap"); + if (settings.isSwapped) swapPlayerAndChat(); initSplit(); - setSplitSize(settings.playerSize, settings.chatSize); + setSplitSize(settings.chatSize); initChatInput(main); final passIcon = ge("#guestpass_icon"); @@ -164,10 +164,7 @@ class Buttons { final swapLayoutBtn = ge("#swapLayoutBtn"); swapLayoutBtn.onclick = e -> { - settings.isSwapped = ge("body").classList.toggle("swap"); - final sizes = document.body.style.gridTemplateColumns.split(" "); - sizes.reverse(); - document.body.style.gridTemplateColumns = sizes.join(" "); + swapPlayerAndChat(); Settings.write(settings); } } @@ -188,6 +185,13 @@ class Buttons { return el.classList.toggle("active"); } + static function swapPlayerAndChat():Void { + settings.isSwapped = ge("body").classList.toggle("swap"); + final sizes = document.body.style.gridTemplateColumns.split(" "); + sizes.reverse(); + document.body.style.gridTemplateColumns = sizes.join(" "); + } + static function initSplit():Void { if (split != null) split.destroy(); split = new Split({ @@ -201,19 +205,17 @@ class Buttons { }); } - static function setSplitSize(playerSize:Float, chatSize:Float):Void { + static function setSplitSize(chatSize:Float):Void { + if (chatSize < CHAT_MIN_SIZE) return; final sizes = document.body.style.gridTemplateColumns.split(" "); - final playerId = settings.isSwapped ? sizes.length - 1 : 0; final chatId = settings.isSwapped ? 0 : sizes.length - 1; - sizes[playerId] = '${playerSize}fr'; - sizes[chatId] = '${chatSize}fr'; + sizes[chatId] = '${chatSize}px'; document.body.style.gridTemplateColumns = sizes.join(" "); } static function saveSplitSize():Void { final sizes = document.body.style.gridTemplateColumns.split(" "); if (settings.isSwapped) sizes.reverse(); - settings.playerSize = Std.parseFloat(sizes[0]); settings.chatSize = Std.parseFloat(sizes[sizes.length - 1]); Settings.write(settings); } |
