diff --git a/images/session/icon-attachment.svg b/images/session/icon-attachment.svg
new file mode 100644
index 000000000..4bad555ff
--- /dev/null
+++ b/images/session/icon-attachment.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-back.svg b/images/session/icon-back.svg
new file mode 100644
index 000000000..7a9bdeeab
--- /dev/null
+++ b/images/session/icon-back.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-exit.svg b/images/session/icon-exit.svg
new file mode 100644
index 000000000..183e31b3f
--- /dev/null
+++ b/images/session/icon-exit.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-favorite.svg b/images/session/icon-favorite.svg
new file mode 100644
index 000000000..13b82fbb5
--- /dev/null
+++ b/images/session/icon-favorite.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-group.svg b/images/session/icon-group.svg
new file mode 100644
index 000000000..98452d2cf
--- /dev/null
+++ b/images/session/icon-group.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-menu.svg b/images/session/icon-menu.svg
new file mode 100644
index 000000000..96c42f086
--- /dev/null
+++ b/images/session/icon-menu.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-message.svg b/images/session/icon-message.svg
new file mode 100644
index 000000000..1ced1a524
--- /dev/null
+++ b/images/session/icon-message.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-microphone.svg b/images/session/icon-microphone.svg
new file mode 100644
index 000000000..1018297e3
--- /dev/null
+++ b/images/session/icon-microphone.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-network.svg b/images/session/icon-network.svg
new file mode 100644
index 000000000..62d545075
--- /dev/null
+++ b/images/session/icon-network.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-options.svg b/images/session/icon-options.svg
new file mode 100644
index 000000000..d007b5530
--- /dev/null
+++ b/images/session/icon-options.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-search.svg b/images/session/icon-search.svg
new file mode 100644
index 000000000..408a25ce3
--- /dev/null
+++ b/images/session/icon-search.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/images/session/icon-theme.svg b/images/session/icon-theme.svg
new file mode 100644
index 000000000..95f578573
--- /dev/null
+++ b/images/session/icon-theme.svg
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/js/views/user_details_dialog_view.js b/js/views/user_details_dialog_view.js
index 7638639e4..1b9109ccd 100644
--- a/js/views/user_details_dialog_view.js
+++ b/js/views/user_details_dialog_view.js
@@ -1,3 +1,4 @@
+
/* global i18n, Whisper */
// eslint-disable-next-line func-names
diff --git a/stylesheets/_session.scss b/stylesheets/_session.scss
index 9ad4bfc25..a55311bce 100644
--- a/stylesheets/_session.scss
+++ b/stylesheets/_session.scss
@@ -5,6 +5,18 @@ $session-color-black: #000;
$session-font-family: Waza;
+$session-transition-duration: 0.25s;
+
+
+$session-icon-size-sm: 16px;
+$session-icon-size-md: 20px;
+$session-icon-size-lg: 28px;
+
+
+.content{
+ background-color: $session-color-black !important;
+}
+
.session-button {
min-width: 165px;
width: auto;
@@ -41,4 +53,55 @@ $session-font-family: Waza;
@include transparent-background($session-color-white);
}
}
-
\ No newline at end of file
+
+
+.session-icon-button {
+ fill: $session-color-white;
+ opacity: 0.4;
+ cursor: pointer;
+ display: inline-block;
+ transition: opacity $session-transition-duration;
+
+ &.small {
+ line-height: $session-icon-size-sm;
+ height: $session-icon-size-sm;
+ width: $session-icon-size-sm;
+
+ margin: $session-icon-size-sm / 3;
+
+ img {
+ height: $session-icon-size-sm;
+ width: $session-icon-size-sm;
+ }
+ }
+
+ &.medium {
+ line-height: $session-icon-size-md;
+ height: $session-icon-size-md;
+ width: $session-icon-size-md;
+
+ margin: $session-icon-size-md / 3;
+
+ img {
+ height: $session-icon-size-md;
+ width: $session-icon-size-md;
+ }
+ }
+
+ &.large {
+ line-height: $session-icon-size-lg;
+ height: $session-icon-size-lg;
+ width: $session-icon-size-lg;
+
+ margin: $session-icon-size-lg / 3;
+
+ img {
+ height: $session-icon-size-lg;
+ width: $session-icon-size-lg;
+ }
+ }
+
+ &:hover{
+ opacity: 1;
+ }
+}
\ No newline at end of file
diff --git a/ts/components/session/SessionIconButton.tsx b/ts/components/session/SessionIconButton.tsx
new file mode 100644
index 000000000..876b020dc
--- /dev/null
+++ b/ts/components/session/SessionIconButton.tsx
@@ -0,0 +1,72 @@
+import React from 'react';
+import classNames from 'classnames';
+
+
+export enum SessionIconButtonTypes {
+ 'exit' = 'exit',
+ 'search' = 'search',
+ 'back' = 'back',
+ 'attachment' = 'attachment',
+ 'emoji' = 'emoji',
+ 'favorite' = 'favorite',
+ 'group' = 'group',
+ 'menu' = 'menu',
+ 'message' = 'message',
+ 'microphone' = 'microphone',
+ 'network' = 'network',
+ 'options' = 'options',
+ 'theme' = 'theme',
+}
+
+export enum SessionIconButtonSizes {
+ 'small' = 'small',
+ 'medium' = 'medium',
+ 'large' = 'large',
+}
+
+
+interface Props {
+ iconType: SessionIconButtonTypes;
+ iconSize: SessionIconButtonSizes;
+}
+
+
+export class SessionIconButton extends React.PureComponent {
+ constructor(props: any){
+ super(props);
+ this.clickHandler = this.clickHandler.bind(this);
+ }
+
+ public render() {
+ const {
+ iconType,
+ iconSize,
+ } = this.props;
+
+ let iconPath = `./images/session/icon-${iconType}.svg`;
+
+ return (
+
+

+
+ );
+ }
+
+ clickHandler(){
+ return;
+ }
+
+
+}
\ No newline at end of file