Merge pull request #7309 from owncloud/mobile-header
Header optimizations for mobile
This commit is contained in:
commit
387cdc81dc
|
@ -0,0 +1,22 @@
|
|||
@media only screen and (max-width: 600px) {
|
||||
|
||||
/* compress search box on mobile, expand when focused */
|
||||
.searchbox input[type="search"] {
|
||||
width: 15%;
|
||||
-webkit-transition: width 100ms;
|
||||
-moz-transition: width 100ms;
|
||||
-o-transition: width 100ms;
|
||||
transition: width 100ms;
|
||||
}
|
||||
.searchbox input[type="search"]:focus,
|
||||
.searchbox input[type="search"]:active {
|
||||
width: 155px;
|
||||
}
|
||||
|
||||
/* do not show display name on mobile when profile picture is present */
|
||||
#header .avatardiv.avatardiv-shown + #expandDisplayName {
|
||||
display: none;
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -37,11 +37,12 @@ body { background:#fefefe; font:normal .8em/1.6em "Helvetica Neue",Helvetica,Ari
|
|||
.header-right { float:right; vertical-align:middle; padding:0.5em; }
|
||||
.header-right > * { vertical-align:middle; }
|
||||
|
||||
/* Profile picture in header */
|
||||
#header .avatardiv {
|
||||
float: left;
|
||||
display: inline-block;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
#header .avatardiv img {
|
||||
opacity: 1;
|
||||
}
|
||||
|
@ -218,17 +219,19 @@ textarea:disabled {
|
|||
color: #bbb;
|
||||
}
|
||||
|
||||
|
||||
/* Searchbox */
|
||||
.searchbox input[type="search"] {
|
||||
position: relative;
|
||||
font-size: 1.2em;
|
||||
padding: .2em .5em .2em 1.5em;
|
||||
padding-left: 1.5em;
|
||||
background: #fff url('../img/actions/search.svg') no-repeat .5em center;
|
||||
border: 0;
|
||||
border-radius: 1em;
|
||||
border-radius: 2em;
|
||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; filter:alpha(opacity=70); opacity: .7;
|
||||
margin-top: 10px;
|
||||
margin-top: 6px;
|
||||
float: right;
|
||||
}
|
||||
|
||||
input[type="submit"].enabled {
|
||||
background: #66f866;
|
||||
border: 1px solid #5e5;
|
||||
|
@ -719,12 +722,11 @@ label.infield { cursor:text !important; top:1.05em; left:.85em; }
|
|||
/* USER MENU */
|
||||
#settings {
|
||||
float: right;
|
||||
margin-top: 7px;
|
||||
margin-left: 10px;
|
||||
color: #bbb;
|
||||
}
|
||||
#expand {
|
||||
padding: 15px 15px 15px 5px;
|
||||
display: block;
|
||||
padding: 7px 12px 6px 7px;
|
||||
cursor: pointer;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,13 @@
|
|||
$(document).ready(function(){
|
||||
if (OC.currentUser) {
|
||||
$('#header .avatardiv').avatar(OC.currentUser, 32, undefined, true);
|
||||
var callback = function() {
|
||||
// do not show display name on mobile when profile picture is present
|
||||
if($('#header .avatardiv').children().length > 0) {
|
||||
$('#header .avatardiv').addClass('avatardiv-shown');
|
||||
}
|
||||
};
|
||||
|
||||
$('#header .avatardiv').avatar(OC.currentUser, 32, undefined, true, callback);
|
||||
// Personal settings
|
||||
$('#avatar .avatardiv').avatar(OC.currentUser, 128);
|
||||
}
|
||||
|
|
|
@ -39,10 +39,15 @@
|
|||
* This will behave like the first example, but it will hide the avatardiv, if
|
||||
* it will display the default placeholder. undefined is the ie8fix from
|
||||
* example 4 and can be either true, or false/undefined, to be ignored.
|
||||
*
|
||||
* 6. $('.avatardiv').avatar('jdoe', 128, undefined, true, callback);
|
||||
* This will behave like the above example, but it will call the function
|
||||
* defined in callback after the avatar is placed into the DOM.
|
||||
*
|
||||
*/
|
||||
|
||||
(function ($) {
|
||||
$.fn.avatar = function(user, size, ie8fix, hidedefault) {
|
||||
$.fn.avatar = function(user, size, ie8fix, hidedefault, callback) {
|
||||
if (typeof(size) === 'undefined') {
|
||||
if (this.height() > 0) {
|
||||
size = this.height();
|
||||
|
@ -91,6 +96,9 @@
|
|||
$div.html('<img src="'+url+'">');
|
||||
}
|
||||
}
|
||||
if(typeof callback === 'function') {
|
||||
callback();
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
|
|
|
@ -860,6 +860,7 @@ function initCore() {
|
|||
// checkShowCredentials();
|
||||
// $('input#user, input#password').keyup(checkShowCredentials);
|
||||
|
||||
// user menu
|
||||
$('#settings #expand').keydown(function(event) {
|
||||
if (event.which === 13 || event.which === 32) {
|
||||
$('#expand').click()
|
||||
|
@ -872,7 +873,8 @@ function initCore() {
|
|||
$('#settings #expanddiv').click(function(event){
|
||||
event.stopPropagation();
|
||||
});
|
||||
$(document).click(function(){//hide the settings menu when clicking outside it
|
||||
//hide the user menu when clicking outside it
|
||||
$(document).click(function(){
|
||||
$('#settings #expanddiv').slideUp(200);
|
||||
});
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
</title>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=1.0">
|
||||
<meta name="apple-itunes-app" content="app-id=543672169">
|
||||
<link rel="shortcut icon" href="<?php print_unescaped(image_path('', 'favicon.png')); ?>" />
|
||||
<link rel="apple-touch-icon-precomposed" href="<?php print_unescaped(image_path('', 'favicon-touch.png')); ?>" />
|
||||
|
@ -51,12 +51,12 @@
|
|||
<div id="logo-claim" style="display:none;"><?php p($theme->getLogoClaim()); ?></div>
|
||||
<div id="settings" class="svg">
|
||||
<span id="expand" tabindex="0" role="link">
|
||||
<?php if ($_['enableAvatars']): ?>
|
||||
<div class="avatardiv"></div>
|
||||
<?php endif; ?>
|
||||
<span id="expandDisplayName"><?php p(trim($_['user_displayname']) != '' ? $_['user_displayname'] : $_['user_uid']) ?></span>
|
||||
<img class="svg" alt="" src="<?php print_unescaped(image_path('', 'actions/caret.svg')); ?>" />
|
||||
</span>
|
||||
<?php if ($_['enableAvatars']): ?>
|
||||
<div class="avatardiv"></div>
|
||||
<?php endif; ?>
|
||||
<div id="expanddiv">
|
||||
<ul>
|
||||
<?php foreach($_['settingsnavigation'] as $entry):?>
|
||||
|
|
|
@ -332,6 +332,7 @@ class OC {
|
|||
}
|
||||
|
||||
OC_Util::addStyle("styles");
|
||||
OC_Util::addStyle("mobile");
|
||||
OC_Util::addStyle("icons");
|
||||
OC_Util::addStyle("apps");
|
||||
OC_Util::addStyle("fixes");
|
||||
|
|
|
@ -52,9 +52,11 @@ function updateAvatar (hidedefault) {
|
|||
|
||||
if(hidedefault) {
|
||||
$headerdiv.hide();
|
||||
$('#header .avatardiv').removeClass('avatardiv-shown');
|
||||
} else {
|
||||
$headerdiv.css({'background-color': ''});
|
||||
$headerdiv.avatar(OC.currentUser, 32, true);
|
||||
$('#header .avatardiv').addClass('avatardiv-shown');
|
||||
}
|
||||
$displaydiv.css({'background-color': ''});
|
||||
$displaydiv.avatar(OC.currentUser, 128, true);
|
||||
|
|
Loading…
Reference in New Issue