diff options
Diffstat (limited to 'static')
-rw-r--r-- | static/fluoride.js | 34 | ||||
-rw-r--r-- | static/style.css | 51 |
2 files changed, 62 insertions, 23 deletions
diff --git a/static/fluoride.js b/static/fluoride.js index c7f3109..e6624d1 100644 --- a/static/fluoride.js +++ b/static/fluoride.js @@ -152,6 +152,7 @@ function replyToLinkLocal(a) { var copy = status.cloneNode(true); copy.id = "reply-to-popup"; var ract = event.target.getBoundingClientRect(); + copy.style["max-width"] = (window.innerWidth - ract.left - 32) + "px"; if (ract.top > window.innerHeight / 2) { copy.style.bottom = (window.innerHeight - window.scrollY - ract.top) + "px"; @@ -245,6 +246,7 @@ function handleReplyLink(a) { var copy = status.cloneNode(true); copy.id = "reply-popup"; var ract = event.target.getBoundingClientRect(); + copy.style["max-width"] = (window.innerWidth - 98) + "px"; if (ract.left > window.innerWidth / 2) { copy.style.right = (window.innerWidth - ract.right - 12) + "px"; @@ -298,20 +300,24 @@ function setPos(el, cx, cy, mw, mh) { } var imgPrev = null; +var imgX = 0; +var imgY = 0; function handleImgPreview(a) { a.onmouseenter = function(e) { var mw = document.documentElement.clientWidth; var mh = document.documentElement.clientHeight - 24; + imgX = e.clientX; + imgY = e.clientY; var img = document.createElement("img"); img.id = "img-preview"; img.src = e.target.getAttribute("href"); img.style["max-width"] = mw + "px"; img.style["max-height"] = mh + "px"; + imgPrev = img; img.onload = function(e2) { - setPos(e2.target, e.clientX, e.clientY, mw, mh); + setPos(imgPrev, imgX, imgY, mw, mh); } document.body.appendChild(img); - imgPrev = img; } a.onmouseleave = function(e) { var img = document.getElementById("img-preview"); @@ -324,8 +330,24 @@ function handleImgPreview(a) { return; var mw = document.documentElement.clientWidth; var mh = document.documentElement.clientHeight - 24; - setPos(imgPrev, e.clientX, e.clientY, mw, mh); + imgX = e.clientX; + imgY = e.clientY; + setPos(imgPrev, imgX, imgY, mw, mh); + } +} + +function onPaste(e) { + if (!e.clipboardData.files) + return; + var fp = document.querySelector("#post-file-picker") + var dt = new DataTransfer(); + for (var i = 0; i < fp.files.length; i++) { + dt.items.add(fp.files[i]); } + for (var i = 0; i < e.clipboardData.files.length; i++) { + dt.items.add(e.clipboardData.files[i]); + } + fp.files = dt.files; } document.addEventListener("DOMContentLoaded", function() { @@ -357,7 +379,7 @@ document.addEventListener("DOMContentLoaded", function() { } } - var links = document.querySelectorAll(".user-profile-decription a"); + var links = document.querySelectorAll(".user-profile-decription a, .user-fields a"); for (var j = 0; j < links.length; j++) { links[j].target = "_blank"; } @@ -366,6 +388,10 @@ document.addEventListener("DOMContentLoaded", function() { for (var j = 0; j < links.length; j++) { handleImgPreview(links[j]); } + + var pf = document.querySelector(".post-form") + if (pf) + pf.addEventListener("paste", onPaste); }); // @license-end diff --git a/static/style.css b/static/style.css index cd7e98c..19cceab 100644 --- a/static/style.css +++ b/static/style.css @@ -194,11 +194,14 @@ textarea { border-color: #777777; } -.notification-container.favourite .status-container, -.notification-container.reblog .status-container { +.notification-container .status-container { opacity: 0.6; } +.notification-container.mention .status-container { + opacity: unset; +} + .notification-info-text span { vertical-align: middle; } @@ -277,7 +280,8 @@ textarea { margin-top: 2px; } -.user-profile-decription { +.user-profile-decription, +.user-fields { overflow-wrap: break-word; margin: 8px 0; } @@ -286,10 +290,22 @@ textarea { margin: 0; } +.user-profile-decription img { + height: auto; + width: auto; + max-height: 240px; + max-width: 280px; + object-fit: contain; +} + .d-inline { display: inline; } +.p-0 { + padding: 0; +} + .btn-link { border: none; outline: none; @@ -354,10 +370,6 @@ a:hover, display: none; } -.post-form-field>* { - vertical-align: middle; -} - .emoji-item-container { width: 220px; display: inline-block; @@ -422,9 +434,6 @@ img.emoji { margin-right: 2px; } -.user-list-container { -} - .user-list-item { overflow: auto; margin: 0 0 12px 0; @@ -441,6 +450,10 @@ img.emoji { overflow: auto; } +.user-list-action { + margin: 0 12px; +} + #settings-form { margin: 8px 0; } @@ -449,10 +462,6 @@ img.emoji { margin: 4px 0; } -.settings-form-field>* { - vertical-align: middle; -} - #settings-form button[type=submit] { margin-top: 8px; } @@ -517,16 +526,16 @@ img.emoji { margin-top: 6px; } -.notification-title-container { +.page-title-container { margin: 8px 0; } -.notification-text { - vertical-align: middle; +.page-refresh { + margin-right: 8px; } -.notification-refresh { - margin-right: 8px; +.notification-text { + vertical-align: middle; } .notification-read { @@ -575,6 +584,10 @@ kbd { position: fixed; } +.quote { + color: #789922; +} + .dark { background-color: #222222; background-image: none; |