MOBILE-3814 styles: Adapt width to home pages

main
Pau Ferrer Ocaña 2022-02-10 11:42:44 +01:00
parent 4b075f0e6d
commit 98fe7224b9
14 changed files with 68 additions and 73 deletions

View File

@ -73,7 +73,8 @@
<!-- List of courses. --> <!-- List of courses. -->
<div class="safe-area-padding" *ngIf="hasCourses"> <div class="safe-area-padding" *ngIf="hasCourses">
<ion-grid class="ion-no-padding" [class.core-no-grid]="layouts.selected != 'card'"> <ion-grid class="ion-no-padding" [class.core-no-grid]="layouts.selected != 'card'"
[class.list-item-limited-width]="layouts.selected != 'card'">
<ion-row class="ion-no-padding"> <ion-row class="ion-no-padding">
<ion-col *ngFor="let course of filteredCourses" class="ion-no-padding" size="12" size-sm="6" size-md="6" size-lg="4" <ion-col *ngFor="let course of filteredCourses" class="ion-no-padding" size="12" size-sm="6" size-md="6" size-lg="4"
size-xl="3"> size-xl="3">

View File

@ -69,7 +69,7 @@
class="core-course-module-list-wrapper" [id]="section.id"> class="core-course-module-list-wrapper" [id]="section.id">
<ion-item-divider class="course-section ion-text-wrap" [class.item-dimmed]="section.visible === 0 || section.uservisible === false"> <ion-item-divider class="course-section ion-text-wrap" [class.item-dimmed]="section.visible === 0 || section.uservisible === false">
<ion-label> <ion-label>
<h2 *ngIf="section.name"> <h2 *ngIf="section.name" class="big">
<core-format-text [text]="section.name" contextLevel="course" [contextInstanceId]="course.id"> <core-format-text [text]="section.name" contextLevel="course" [contextInstanceId]="course.id">
</core-format-text> </core-format-text>
</h2> </h2>

View File

@ -1,7 +1,3 @@
:host {
--item-divider-font-size: var(--item-divider-font-size-big);
}
.core-course-section-nav-buttons { .core-course-section-nav-buttons {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;

View File

@ -1,7 +1,7 @@
@import "~theme/globals"; @import "~theme/globals";
:host { :host {
--horizontal-margin: 12px; --horizontal-margin: 10px;
ion-card { ion-card {
margin-left: var(--horizontal-margin); margin-left: var(--horizontal-margin);

View File

@ -101,6 +101,8 @@ ion-chip {
// List layout. // List layout.
ion-card.core-course-list-item { ion-card.core-course-list-item {
max-width: var(--list-item--max-width);
ion-icon.course-icon { ion-icon.course-icon {
padding: 12px; padding: 12px;
font-size: calc(var(--avatar-size) - 24px); font-size: calc(var(--avatar-size) - 24px);

View File

@ -25,6 +25,7 @@
<ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content> <ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content>
</ion-refresher> </ion-refresher>
<core-loading [hideUntil]="categoriesLoaded"> <core-loading [hideUntil]="categoriesLoaded">
<ion-list class="list-item-limited-width">
<ion-item *ngIf="currentCategory" class="ion-text-wrap"> <ion-item *ngIf="currentCategory" class="ion-text-wrap">
<ion-icon name="fas-folder" slot="start" [attr.aria-label]="'core.category' | translate"></ion-icon> <ion-icon name="fas-folder" slot="start" [attr.aria-label]="'core.category' | translate"></ion-icon>
<ion-label> <ion-label>
@ -42,11 +43,12 @@
<ng-container *ngIf="categories.length > 0"> <ng-container *ngIf="categories.length > 0">
<ion-item-divider> <ion-item-divider>
<ion-label> <ion-label>
<h2>{{ 'core.courses.categories' | translate }}</h2> <h2 class="big">{{ 'core.courses.categories' | translate }}</h2>
</ion-label> </ion-label>
</ion-item-divider> </ion-item-divider>
<section *ngFor="let category of categories"> <ion-card *ngFor="let category of categories">
<ion-item button class="ion-text-wrap" (click)="openCategory(category.id)" [attr.aria-label]="category.name" detail="true"> <ion-item button class="ion-text-wrap" (click)="openCategory(category.id)" [attr.aria-label]="category.name"
detail="true">
<ion-icon name="fas-folder" slot="start" [attr.aria-label]="'core.category' | translate"></ion-icon> <ion-icon name="fas-folder" slot="start" [attr.aria-label]="'core.category' | translate"></ion-icon>
<ion-label> <ion-label>
<h2> <h2>
@ -59,19 +61,20 @@
<span class="sr-only">{{ 'core.courses.therearecourses' | translate:{ $a: category.coursecount } }}</span> <span class="sr-only">{{ 'core.courses.therearecourses' | translate:{ $a: category.coursecount } }}</span>
</ion-badge> </ion-badge>
</ion-item> </ion-item>
</section> </ion-card>
</ng-container> </ng-container>
<ng-container *ngIf="courses.length > 0"> <ng-container *ngIf="courses.length > 0">
<ion-item-divider> <ion-item-divider>
<ion-label> <ion-label>
<h2 *ngIf="!showOnlyEnrolled">{{ 'core.courses.courses' | translate }}</h2> <h2 *ngIf="!showOnlyEnrolled" class="big">{{ 'core.courses.courses' | translate }}</h2>
<h2 *ngIf="showOnlyEnrolled">{{ 'core.courses.mycourses' | translate }}</h2> <h2 *ngIf="showOnlyEnrolled" class="big">{{ 'core.courses.mycourses' | translate }}</h2>
</ion-label> </ion-label>
</ion-item-divider> </ion-item-divider>
<core-courses-course-list-item *ngFor="let course of courses" [course]="course" [showDownload]="downloadEnabled"> <core-courses-course-list-item *ngFor="let course of courses" [course]="course" [showDownload]="downloadEnabled">
</core-courses-course-list-item> </core-courses-course-list-item>
</ng-container> </ng-container>
</ion-list>
<core-empty-box *ngIf="!categories.length && !courses.length" icon="fas-graduation-cap" <core-empty-box *ngIf="!categories.length && !courses.length" icon="fas-graduation-cap"
[message]="'core.courses.nocoursesyet' | translate"> [message]="'core.courses.nocoursesyet' | translate">
</core-empty-box> </core-empty-box>

View File

@ -9,7 +9,7 @@
</ion-refresher> </ion-refresher>
<core-loading [hideUntil]="loaded"> <core-loading [hideUntil]="loaded">
<ion-list> <ion-list class="list-item-limited-width">
<ng-container *ngFor="let block of blocks"> <ng-container *ngFor="let block of blocks">
<core-block *ngIf="block.visible" [block]="block" contextLevel="user" [instanceId]="userId"></core-block> <core-block *ngIf="block.visible" [block]="block" contextLevel="user" [instanceId]="userId"></core-block>
</ng-container> </ng-container>

View File

@ -31,7 +31,6 @@ import { CoreBlockDelegate } from '@features/block/services/block-delegate';
@Component({ @Component({
selector: 'page-core-courses-dashboard', selector: 'page-core-courses-dashboard',
templateUrl: 'dashboard.html', templateUrl: 'dashboard.html',
styleUrls: ['dashboard.scss'],
}) })
export class CoreCoursesDashboardPage implements OnInit, OnDestroy { export class CoreCoursesDashboardPage implements OnInit, OnDestroy {

View File

@ -37,8 +37,10 @@
</ion-item-divider> </ion-item-divider>
</ng-container> </ng-container>
<ion-list class="list-item-limited-width">
<core-courses-course-list-item *ngFor="let course of courses" [course]="course" [showDownload]="downloadEnabled"> <core-courses-course-list-item *ngFor="let course of courses" [course]="course" [showDownload]="downloadEnabled">
</core-courses-course-list-item> </core-courses-course-list-item>
</ion-list>
<core-infinite-loading [enabled]="canLoadMore" (action)="loadMoreCourses($event)" [error]="loadMoreError"> <core-infinite-loading [enabled]="canLoadMore" (action)="loadMoreCourses($event)" [error]="loadMoreError">
</core-infinite-loading> </core-infinite-loading>

View File

@ -24,7 +24,7 @@
<core-loading [hideUntil]="loaded"> <core-loading [hideUntil]="loaded">
<ion-item class="ion-text-wrap divider"> <ion-item class="ion-text-wrap divider">
<ion-label> <ion-label>
<h2>{{ 'core.courses.mycourses' | translate }}</h2> <h2 class="big">{{ 'core.courses.mycourses' | translate }}</h2>
</ion-label> </ion-label>
<div slot="end" class="flex-row"> <div slot="end" class="flex-row">
<!-- Download all courses. --> <!-- Download all courses. -->

View File

@ -1,9 +1,5 @@
@import "~theme/globals"; @import "~theme/globals";
:host {
--item-divider-font-size: var(--item-divider-font-size-big);
}
:host ::ng-deep ion-item-divider { :host ::ng-deep ion-item-divider {
display: none !important; display: none !important;
} }

View File

@ -743,19 +743,11 @@ ion-card {
} }
ion-list.core-course-module-list-wrapper, ion-list.core-course-module-list-wrapper,
.list-item-limited-width,
.core-course-module-list-wrapper { .core-course-module-list-wrapper {
max-width: var(--module-list-width); max-width: var(--list-item--max-width);
margin-left: auto; margin-left: auto;
margin-right: auto; margin-right: auto;
--padding-start: 12px;
--padding-end: 12px;
padding-left: var(--padding-start);
padding-right: var(--padding-end);
core-course-module {
--horizontal-margin: 0px;
}
} }
ion-toolbar h1 img.core-bar-button-image, ion-toolbar h1 img.core-bar-button-image,
@ -1262,12 +1254,15 @@ ion-item.item.divider {
border-bottom-width: var(--item-divider-border-width); border-bottom-width: var(--item-divider-border-width);
--border-width: var(--item-divider-border-width); --border-width: var(--item-divider-border-width);
--inner-border-width: 0 0 var(--item-divider-border-width) 0; --inner-border-width: 0 0 var(--item-divider-border-width) 0;
font-size: var(--item-divider-font-size);
font-weight: medium;
h2, ion-label h2, ion-label h2,
p.item-heading, ion-label p.item-heading { ion-label p.item-heading {
font-size: var(--item-divider-font-size); font-size: var(--item-divider-font-size);
font-weight: 500;
line-height: 1.5;
}
ion-label h2.big {
font-size: var(--item-divider-font-size-big);
} }
} }

View File

@ -71,7 +71,8 @@
--module-icon-size: 24px; --module-icon-size: 24px;
--module-icon-radius: var(--medium-radius); --module-icon-radius: var(--medium-radius);
--module-list-width: 768px;
--list-item--max-width: 768px;
--ion-background-color: var(--background-color); --ion-background-color: var(--background-color);
--ion-background-color-rgb: #{$background-color-rgb}; --ion-background-color-rgb: #{$background-color-rgb};