diff --git a/themes/antergos/css/style.css b/themes/antergos/css/style.css index eef1a26..4daee5b 100644 --- a/themes/antergos/css/style.css +++ b/themes/antergos/css/style.css @@ -46,7 +46,7 @@ } ::-webkit-scrollbar { - width: 12px; + width: 6px; } ::-webkit-scrollbar-track { @@ -59,7 +59,7 @@ } ::-webkit-scrollbar-thumb:hover { - background-color: #B3B3B3; + background-color: #757575; } .user-wrap2::-webkit-scrollbar { @@ -120,6 +120,10 @@ a { color: #F5F5F5; } +.bg-switch h3 { + color: #f5f5f5; +} + .bg-switch .bgs .bg { text-align: center; text-decoration: none; @@ -165,15 +169,14 @@ a { } #bg-switch-wrapper { - margin-right: -250px; - right: 0; + right: -250px; width: 250px; background: rgba(0, 0, 0, 0.5); position: fixed; height: 100%; overflow-y: auto; z-index: 1000; - transition: all 0.4s ease 0s; + transition: right 0.8s cubic-bezier(0.77, 0, 0.175, 1); } .bg-switch-container { @@ -193,9 +196,8 @@ a { } #bg-switch-wrapper.active { - right: 250px; + right: 0px; width: 250px; - transition: all 0.4s ease 0s; overflow-x: hidden; } @@ -214,6 +216,8 @@ a { background-size: cover !important; background-repeat: no-repeat !important; background-position: center !important; + transition: left 0.8s cubic-bezier(0.77, 0, 0.175, 1); + } #user-target2 { @@ -286,6 +290,11 @@ a { right: 9px; } +.panel-heading img { + max-height: 30px; + width: auto; +} + .login-wrapper { list-style-type: none; display: table-row; diff --git a/themes/antergos/js/greeter.js b/themes/antergos/js/greeter.js index fc57c16..fbb78c4 100644 --- a/themes/antergos/js/greeter.js +++ b/themes/antergos/js/greeter.js @@ -64,6 +64,7 @@ class AntergosThemeUtils { this.lang = window.navigator.language.split( '-' )[ 0 ].toLowerCase(); this.translations = window.ant_translations; this.$log_container = $('#logArea'); + this.recursion = 0; if ( 'undefined' === typeof window.navigator.languages ) { window.navigator.languages = [ window.navigator.language ]; @@ -144,16 +145,11 @@ class AntergosThemeUtils { background_images_dir = config.get_str( 'branding', 'background_images' ) || ''; if ( background_images_dir ) { background_images = greeterutil.dirlist( background_images_dir ) || []; + this.log(background_images); } if ( background_images && background_images.length ) { - var images = []; - for ( var file of background_images ) { - if ( file.match( /(png|PNG)|(jpg|JPEG)|(bmp|BMP)/ ) ) { - images.push( file ); - } - } - background_images = images; + background_images = this.find_images( background_images ); } } @@ -163,6 +159,33 @@ class AntergosThemeUtils { this.background_images = background_images; this.background_images_dir = background_images_dir; } + + + find_images( dirlist ) { + var images = [], + subdirs = []; + + for ( var file of dirlist ) { + if ( file.match( /(png|PNG)|(jpg|JPEG)|(bmp|BMP)/ ) ) { + images.push( file ); + } else if ( ! file.match( /\w+\.\w+/ ) ) { + subdirs.push( file ) + } + } + + if ( subdirs.length && ! images.length && this.recursion < 3 ) { + this.recursion++; + for ( var dir of subdirs ) { + var list = config.dirlist( dir ); + + if ( null !== list && list.length ) { + images.push.apply( images, this.find_images( list ) ); + } + } + } + + return images; + } } @@ -185,7 +208,7 @@ class AntergosBackgroundManager { this.current_background = _util.cache_get( 'background_manager', 'current_background' ); if ( ! _util.background_images_dir.length || ! _util.background_images.length ) { - this.log( 'AntergosBackgroundManager: [ERROR] No background images detected.' ); + _util.log( 'AntergosBackgroundManager: [ERROR] No background images detected.' ); $( '.header' ).fadeTo( 300, 0.5, function() { $( '.header' ).css( "background-image", 'url(img/fallback_bg.jpg)' ); @@ -690,15 +713,15 @@ class AntergosTheme { switch ( event.which ) { case 13: action = _self.auth_pending ? _self.submit_password() : ! _self.user_list_visible ? _self.show_user_list() : 0; - _self.log( action ); + _util.log( action ); break; case 27: action = _self.auth_pending ? _self.cancel_authentication() : 0; - _self.log( action ); + _util.log( action ); break; case 32: action = (! _self.user_list_visible && ! _self.auth_pending) ? _self.show_user_list() : 0; - _self.log( action ); + _util.log( action ); break; default: break; diff --git a/themes/antergos/js/mock.js b/themes/antergos/js/mock.js index 18aff2d..6f3c565 100644 --- a/themes/antergos/js/mock.js +++ b/themes/antergos/js/mock.js @@ -251,6 +251,10 @@ if ( typeof lightdm == 'undefined' ) { return branding[ key ]; } }; + config.get_bool = function( section, key ) { + return true; + }; + greeterutil.dirlist = function( directory ) { if ( '/usr/share/antergos/wallpapers' === directory ) {