diff --git a/public/static/fonts_7/icomoon.css b/public/static/fonts_7/icomoon.css
index 4e7fc21..c71ec67 100644
--- a/public/static/fonts_7/icomoon.css
+++ b/public/static/fonts_7/icomoon.css
@@ -1,25 +1,24 @@
@font-face {
font-family: 'icomoon';
- src:
- url('icomoon.ttf?8qh3rt') format('truetype'),
- url('icomoon.woff?8qh3rt') format('woff'),
- url('icomoon.svg?8qh3rt#icomoon') format('svg');
+ src: url('icomoon.eot?f9daqg');
+ src: url('icomoon.eot?f9daqg#iefix') format('embedded-opentype'),
+ url('icomoon.ttf?f9daqg') format('truetype'),
+ url('icomoon.woff?f9daqg') format('woff'),
+ url('icomoon.svg?f9daqg#icomoon') format('svg');
font-weight: normal;
font-style: normal;
font-display: block;
}
-.icon {
+[class^="icon-"], [class*=" icon-"] {
/* use !important to prevent issues with browser extensions that change fonts */
- /*noinspection CssNoGenericFontName*/
font-family: 'icomoon' !important;
- speak: none;
+ speak: never;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
- vertical-align: -.0625em;
/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
@@ -94,12 +93,16 @@
}
.icon-order-rev:before {
content: "\ea46";
- font-size: 1.2em;
}
.icon-github:before {
content: "\eab0";
}
-
.icon-new-tab:before {
content: "\ea7e";
-}
\ No newline at end of file
+}
+.icon-eye:before {
+ content: "\e9ce";
+}
+.icon-eye-blocked:before {
+ content: "\e9d1";
+}
diff --git a/public/static/fonts_7/icomoon.svg b/public/static/fonts_7/icomoon.svg
index 1400c3b..955854e 100644
--- a/public/static/fonts_7/icomoon.svg
+++ b/public/static/fonts_7/icomoon.svg
@@ -19,6 +19,8 @@
+
+
@@ -30,7 +32,6 @@
-
-
+
\ No newline at end of file
diff --git a/public/static/fonts_7/icomoon.ttf b/public/static/fonts_7/icomoon.ttf
index cce7337..8f3d30b 100644
Binary files a/public/static/fonts_7/icomoon.ttf and b/public/static/fonts_7/icomoon.ttf differ
diff --git a/public/static/fonts_7/icomoon.woff b/public/static/fonts_7/icomoon.woff
index 8827eb2..acc1782 100644
Binary files a/public/static/fonts_7/icomoon.woff and b/public/static/fonts_7/icomoon.woff differ
diff --git a/src/UserAction.css b/src/UserAction.css
index 6452be3..e41c133 100644
--- a/src/UserAction.css
+++ b/src/UserAction.css
@@ -20,11 +20,18 @@
min-height: 2em;
height: 4em;
}
+
.reply-form button {
flex: 0 0 3em;
margin-right: 0;
}
+.reply-preview {
+ flex: 1;
+ min-height: 2em;
+}
+
+
.post-form-bar {
line-height: 2em;
display: flex;
@@ -58,6 +65,11 @@
height: 20em;
}
+.post-preview {
+ width: 100%;
+ min-height: 5em;
+}
+
.life-info-table {
width: 100%;
margin: auto;
diff --git a/src/UserAction.js b/src/UserAction.js
index 58f908c..a7c705b 100644
--- a/src/UserAction.js
+++ b/src/UserAction.js
@@ -1,5 +1,5 @@
import React, {Component, PureComponent} from 'react';
-import {API_BASE, SafeTextarea, PromotionBar} from './Common';
+import {API_BASE, SafeTextarea, PromotionBar, HighlightedMarkdown} from './Common';
import {MessageViewer} from './Message';
import {LoginPopup} from './infrastructure/widgets';
import {ConfigUI} from './Config';
@@ -394,6 +394,7 @@ export class ReplyForm extends Component {
this.state={
text: '',
loading_status: 'done',
+ preview: false,
};
this.on_change_bound=this.on_change.bind(this);
this.area_ref=this.props.area_ref||React.createRef();
@@ -462,11 +463,26 @@ export class ReplyForm extends Component {
});
});
}
+
+ toggle_preview() {
+ this.setState({
+ preview: !this.state.preview
+ });
+ }
render() {
return (