diff --git a/external/lang b/external/lang
index 2a9ef2c8..e0c436c9 160000
--- a/external/lang
+++ b/external/lang
@@ -1 +1 @@
-Subproject commit 2a9ef2c8025dd71a20fddca7c94cb7af30978c4b
+Subproject commit e0c436c957206aecd416981ba0050f88aa32259e
diff --git a/src/components/common/messaging/MessageBox.tsx b/src/components/common/messaging/MessageBox.tsx
index d6cad740..e3a11e28 100644
--- a/src/components/common/messaging/MessageBox.tsx
+++ b/src/components/common/messaging/MessageBox.tsx
@@ -1,5 +1,4 @@
-import { ShieldX } from "@styled-icons/boxicons-regular";
-import { Send } from "@styled-icons/boxicons-solid";
+import { Send, HappyAlt, ShieldX } from "@styled-icons/boxicons-solid";
import Axios, { CancelTokenSource } from "axios";
import { Channel } from "revolt.js";
import { ChannelPermission } from "revolt.js/dist/api/permissions";
@@ -40,6 +39,7 @@ import AutoComplete, { useAutoComplete } from "../AutoComplete";
import { PermissionTooltip } from "../Tooltip";
import FilePreview from "./bars/FilePreview";
import ReplyBar from "./bars/ReplyBar";
+import { Styleshare } from "@styled-icons/simple-icons";
type Props = {
channel: Channel;
@@ -65,29 +65,45 @@ const Base = styled.div`
textarea {
font-size: var(--text-size);
background: transparent;
+
+ &::placeholder {
+ white-space: nowrap;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ }
}
`;
const Blocked = styled.div`
display: flex;
align-items: center;
- padding: 14px 0;
user-select: none;
font-size: var(--text-size);
color: var(--tertiary-foreground);
+ .text {
+ padding: 14px 14px 14px 0;
+ }
+
svg {
flex-shrink: 0;
- margin-inline-end: 10px;
}
`;
const Action = styled.div`
- display: grid;
+ display: flex;
place-items: center;
> div {
- padding: 10px 12px;
+ height: 48px;
+ width: 48px;
+ padding: 12px;
+ }
+
+ .mobile {
+ @media (pointer: fine) {
+ display: none;
+ }
}
`;
@@ -112,12 +128,16 @@ export default function MessageBox({ channel }: Props) {
return (