Skip to content
This repository has been archived by the owner on Jun 3, 2020. It is now read-only.

Commit

Permalink
Merge pull request #168 from geeeeeeeeek/issue/refinements-on-multi-t…
Browse files Browse the repository at this point in the history
…ab-view

Refinements on multi tab view
  • Loading branch information
akashnimare authored Jun 16, 2017
2 parents 935b377 + 7f8d933 commit 68c9043
Show file tree
Hide file tree
Showing 11 changed files with 519 additions and 476 deletions.
11 changes: 10 additions & 1 deletion app/main/menu.js
Original file line number Diff line number Diff line change
Expand Up @@ -83,13 +83,22 @@ const viewSubmenu = [
}
},
{
label: 'Toggle Developer Tools',
label: 'Toggle DevTools for Zulip App',
accelerator: process.platform === 'darwin' ? 'Alt+Command+I' : 'Ctrl+Shift+I',
click(item, focusedWindow) {
if (focusedWindow) {
focusedWindow.webContents.toggleDevTools();
}
}
},
{
label: 'Toggle DevTools for Active Tab',
accelerator: process.platform === 'darwin' ? 'Alt+Command+U' : 'Ctrl+Shift+U',
click(item, focusedWindow) {
if (focusedWindow) {
sendAction('tab-devtools');
}
}
}
];

Expand Down
268 changes: 149 additions & 119 deletions app/renderer/css/main.css
Original file line number Diff line number Diff line change
@@ -1,143 +1,173 @@
* {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI",
Helvetica, Arial, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol";
-webkit-font-smoothing: antialiased;
color: #444;

vertical-align: top;
}

body {
/*******************
* General rules *
*******************/
html, body {
height: 100%;
margin: 0;
background-image: url(../img/topography.png);
}

input,
button {
font-size: 1em;
cursor: default;
user-select:none;
}

#content {
display: flex;
height: 100%;
background: #eee url(../img/ic_loading.gif) no-repeat;
background-size: 60px 60px;
background-position: center;
}

#sidebar {
background: #222c31;
width: 54px;
padding: 10px 0 20px 0;
justify-content: space-between;
display: flex;
flex-direction: column;
-webkit-app-region: drag;
}

@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: local('Material Icons'),
local('MaterialIcons-Regular'),
url(../fonts/MaterialIcons-Regular.ttf) format('truetype');
}

/*******************
* Left Sidebar *
*******************/
#tabs-container {
display: flex;
align-items: center;
flex-direction: column;
}

.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
/* Preferred icon size */
font-size: 24px;
display: inline-block;
line-height: 1;
text-transform: none;
letter-spacing: normal;
word-wrap: normal;
white-space: nowrap;
direction: ltr;
/* Support for all WebKit browsers. */
-webkit-font-smoothing: antialiased;
/* Support for Safari and Chrome. */
text-rendering: optimizeLegibility;
}

.action-button {
display: flex;
flex-direction: column;
align-items: center;
padding: 10px;
}

.action-button i {
color: #6c8592;
font-size: 28px;
}

.action-button:hover i {
color: #98a9b3;
}

.tab {
position: relative;
margin: 5px 0;
cursor: pointer;
}

header {
.tab.active::before {
content: "";
background: #fff;
border-radius: 0 3px 3px 0;
width: 4px;
position: absolute;
height: 35px;
left: -10px;
top: 5px;
}

.tab .server-tab {
background: #a4d3c4;
background-size: 100%;
border-radius: 4px;
width: 35px;
height: 35px;
position: relative;
margin: 5px 0;
z-index: 11;
line-height: 31px;
color: #194a2b;
text-align: center;
margin: 0px 0px 30px 0px;
overflow: hidden;
opacity: 0.6;
}

header img {
width: 50px;
.tab .server-tab:hover {
opacity: 0.8;
}

header h1 {
display: inline-block;
margin: 10px 0px 10px 10px;

font-weight: 500;
.tab .settings-tab {
background: #eee;
}


section.server {
display: inline-block;
padding: 50px;
margin-top: calc(50vh - 135px);

text-align: left;

box-shadow: 0px 0px 100px rgba(0,0,0,0.15);

background-color: #fff;

animation-name: pulse;
animation-duration: 2s;
animation-iteration-count: infinite;
.tab .settings-tab i {
font-size: 28px;
line-height: 36px;
}

section.shake {
animation-name: shake;
animation-duration: 0.5s;
animation-iteration-count: 1;
}

form label {
display: block;

font-weight: 600;
margin-bottom: 5px;
}

form input[type=text] {
width: 300px;
border: 2px solid #ccc;
padding: 10px 10px;

outline: none;

transition: all 0.2s ease;
}

form input[type=text]:hover,
form input[type=text]:focus {
border-color: #aaa;
.tab.active .server-tab {
opacity: 1;
}

form button {
padding: 10px 10px;

background-color: #52c2af;
.tab .server-tab-badge.active {
border-radius: 9px;
min-width: 11px;
padding: 0 3px;
height: 17px;
background-color: #f44336;
font-size: 10px;
font-family: sans-serif;
position: absolute;
right: -6px;
z-index: 15;
top: -2px;
float: right;
color: #fff;

border: 2px solid #52c2af;
outline: none;

cursor: pointer;

transition: all 0.2s ease;
}

form button:hover {
background-color: #30b09a;
border-color: #30b09a;
}

form button:active {
background-color: #14957f;
border-color: #14957f;
text-align: center;
line-height: 17px;
display: block;
}

form #error {
margin: 5px 0px 0px;

font-size: 0.8em;
font-weight: 600;

color: rgb(201, 107, 107);

opacity: 0;
transform: translateY(-10px);

height: 15px;

transition: all 0.2s ease;
.tab .server-tab-badge {
display: none;
}

form #error.show {
/*******************
* Webview Area *
*******************/
webview {
opacity: 1;
transform: translateY(0px);
transition: opacity 0.3s;
flex-grow: 1;
}

/* -- generic components -- */
.center {
text-align: center;
}

@keyframes pulse {
0% { box-shadow: 0px 0px 100px rgba(0,0,0,0.15); }
50% { box-shadow: 0px 0px 100px rgba(0,0,0,0.30); }
100% { box-shadow: 0px 0px 100px rgba(0,0,0,0.15); }
webview.disabled {
flex: 0 1;
height: 0;
width: 0;
opacity: 0;
transition: opacity 0.3s;
}

@keyframes shake {
10%, 90% { transform: translate3d(-1px, 0, 0); }
20%, 80% { transform: translate3d(2px, 0, 0); }
30%, 50%, 70% { transform: translate3d(-4px, 0, 0); }
40%, 60% { transform: translate3d(4px, 0, 0); }
webview:focus {
outline: 0px solid transparent;
}
Loading

0 comments on commit 68c9043

Please sign in to comment.