From 937b7a6af8f5385ca2b6454f1e1e71d9275b6ac0 Mon Sep 17 00:00:00 2001 From: Rigel Kent <sendmemail@rigelk.eu> Date: Mon, 9 Mar 2020 10:22:11 +0100 Subject: [PATCH] Better display of accounts and channel pages on small screens --- client/src/app/+accounts/accounts.component.html | 2 +- client/src/app/+accounts/accounts.component.ts | 6 ++++++ .../src/app/+video-channels/video-channels.component.html | 4 ++-- .../src/app/+video-channels/video-channels.component.ts | 8 +++++++- 4 files changed, 16 insertions(+), 4 deletions(-) diff --git a/client/src/app/+accounts/accounts.component.html b/client/src/app/+accounts/accounts.component.html index 6a76393b9..8498fb16f 100644 --- a/client/src/app/+accounts/accounts.component.html +++ b/client/src/app/+accounts/accounts.component.html @@ -32,7 +32,7 @@ </div> <div class="right-buttons"> - <a *ngIf="isAccountManageable" routerLink="/my-account" class="btn btn-outline-tertiary mr-2" i18n>Manage</a> + <a *ngIf="isAccountManageable && !isInSmallView" routerLink="/my-account" class="btn btn-outline-tertiary mr-2" i18n>Manage</a> <my-subscribe-button *ngIf="videoChannels" [account]="account" [videoChannels]="videoChannels"></my-subscribe-button> </div> </div> diff --git a/client/src/app/+accounts/accounts.component.ts b/client/src/app/+accounts/accounts.component.ts index 2ca6062c2..bf71179f3 100644 --- a/client/src/app/+accounts/accounts.component.ts +++ b/client/src/app/+accounts/accounts.component.ts @@ -11,6 +11,7 @@ import { I18n } from '@ngx-translate/i18n-polyfill' import { VideoChannelService } from '@app/shared/video-channel/video-channel.service' import { VideoChannel } from '@app/shared/video-channel/video-channel.model' import { ListOverflowItem } from '@app/shared/misc/list-overflow.component' +import { ScreenService } from '@app/shared/misc/screen.service' @Component({ templateUrl: './accounts.component.html', @@ -36,6 +37,7 @@ export class AccountsComponent implements OnInit, OnDestroy { private restExtractor: RestExtractor, private redirectService: RedirectService, private authService: AuthService, + private screenService: ScreenService, private i18n: I18n ) { } @@ -91,6 +93,10 @@ export class AccountsComponent implements OnInit, OnDestroy { ) } + get isInSmallView () { + return this.screenService.isInSmallView() + } + onUserChanged () { this.getUserIfNeeded(this.account) } diff --git a/client/src/app/+video-channels/video-channels.component.html b/client/src/app/+video-channels/video-channels.component.html index 6192b8ae5..d210e2a4b 100644 --- a/client/src/app/+video-channels/video-channels.component.html +++ b/client/src/app/+video-channels/video-channels.component.html @@ -18,7 +18,7 @@ </div> <div class="right-buttons"> - <a *ngIf="isChannelManageable" [routerLink]="[ '/my-account/video-channels/update', videoChannel.nameWithHost ]" class="btn btn-outline-tertiary mr-2" i18n>Manage</a> + <a *ngIf="isChannelManageable && !isInSmallView" [routerLink]="[ '/my-account/video-channels/update', videoChannel.nameWithHost ]" class="btn btn-outline-tertiary mr-2" i18n>Manage</a> <my-subscribe-button #subscribeButton [videoChannels]="[videoChannel]"></my-subscribe-button> </div> @@ -26,7 +26,7 @@ <div class="actor-followers" i18n>{videoChannel.followersCount, plural, =1 {1 subscriber} other {{{ videoChannel.followersCount }} subscribers}}</div> <a [routerLink]="[ '/accounts', videoChannel.ownerBy ]" i18n-title title="Go the owner account page" class="actor-owner"> - <span i18n>Created by {{ videoChannel.ownerBy }}</span> + <span class="d-inline-flex"><span i18n class="d-none d-sm-block mr-1">Created by</span>{{ videoChannel.ownerBy }}</span> <img [src]="videoChannel.ownerAvatarUrl" alt="Owner account avatar" /> </a> </div> diff --git a/client/src/app/+video-channels/video-channels.component.ts b/client/src/app/+video-channels/video-channels.component.ts index 00b9938d9..f3cd5dea5 100644 --- a/client/src/app/+video-channels/video-channels.component.ts +++ b/client/src/app/+video-channels/video-channels.component.ts @@ -10,6 +10,7 @@ import { Hotkey, HotkeysService } from 'angular2-hotkeys' import { SubscribeButtonComponent } from '@app/shared/user-subscription/subscribe-button.component' import { I18n } from '@ngx-translate/i18n-polyfill' import { ListOverflowItem } from '@app/shared/misc/list-overflow.component' +import { ScreenService } from '@app/shared/misc/screen.service' @Component({ templateUrl: './video-channels.component.html', @@ -32,7 +33,8 @@ export class VideoChannelsComponent implements OnInit, OnDestroy { private authService: AuthService, private videoChannelService: VideoChannelService, private restExtractor: RestExtractor, - private hotkeysService: HotkeysService + private hotkeysService: HotkeysService, + private screenService: ScreenService ) { } ngOnInit () { @@ -79,6 +81,10 @@ export class VideoChannelsComponent implements OnInit, OnDestroy { if (this.isUserLoggedIn()) this.hotkeysService.remove(this.hotkeys) } + get isInSmallView () { + return this.screenService.isInSmallView() + } + isUserLoggedIn () { return this.authService.isLoggedIn() }