]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/videos/+video-watch/video-watch.component.scss
Add video channel view
[github/Chocobozzz/PeerTube.git] / client / src / app / videos / +video-watch / video-watch.component.scss
index 9bd510c9fb82116af596167d0c139bdfd90270ad..281b9240b8a03e086bd796352b19e5f232534498 100644 (file)
@@ -1,5 +1,9 @@
 @import '_variables';
 @import '_mixins';
+@import '_bootstrap-variables';
+@import '_miniature';
+
+$other-videos-width: 260px;
 
 .root-row {
   flex-direction: column;
@@ -9,7 +13,7 @@
   font-weight: $font-semibold;
 }
 
-#video-element-wrapper {
+#video-wrapper {
   background-color: #000;
   display: flex;
   justify-content: center;
     }
   }
 
+  .playlist {
+    width: 400px;
+    height: 66vh;
+    background-color: var(--mainBackgroundColor);
+    overflow-y: auto;
+
+    .playlist-info {
+      padding: 5px 30px;
+      background-color: #e4e4e4;
+
+      .playlist-display-name {
+        font-size: 18px;
+        font-weight: $font-semibold;
+        margin-bottom: 5px;
+      }
+
+      .playlist-by-index {
+        color: $grey-foreground-color;
+        display: flex;
+
+        .playlist-by {
+          margin-right: 5px;
+        }
+
+        .playlist-index span:first-child::after {
+          content: '/';
+          margin: 0 3px;
+        }
+      }
+    }
+
+    my-video-playlist-element-miniature {
+      /deep/ {
+        .video {
+          .position {
+            margin-right: 0;
+          }
+
+          .video-info {
+            .video-info-name {
+              font-size: 15px;
+            }
+          }
+        }
+
+        my-video-thumbnail {
+          @include thumbnail-size-component(90px, 50px);
+        }
+      }
+    }
+  }
+
   /deep/ .video-js {
-    width: 888px;
-    height: 500px;
+    width: calc(66vh * 1.77);
+    height: 66vh;
 
     &.vjs-theater-enabled {
       height: calc(100vh - #{$header-height} - #{$theater-bottom-space});
 
 .video-bottom {
   margin-top: 40px;
-  display: flex;
-  flex-grow: 1;
 
   .video-info {
     flex-grow: 1;
-    margin-right: 40px;
     // Set min width for flex item
     min-width: 1px;
+    max-width: 100%;
 
     .video-info-first-row {
       display: flex;
       }
 
       .video-info-date-views {
-        font-size: 16px;
-        margin-bottom: 10px;
         flex-grow: 1;
+        margin-bottom: 10px;
+        margin-right: 10px;
+        font-size: 16px;
       }
 
       .video-info-channel {
         a {
           @include disable-default-a-behaviour;
 
-          color: #000;
+          color: var(--mainForegroundColor);
 
           &:hover {
             opacity: 0.8;
           display: inline;
           align-items: center;
           font-size: 13px;
-          color: #000;
+          color: var(--mainForegroundColor);
 
           span:hover {
             opacity: 0.8;
         }
       }
 
-      my-video-feed {
+      my-feed {
         margin-left: 5px;
         margin-top: 1px;
       }
 
       .video-actions-rates {
-        display: flex;
-        flex-direction: column;
-        align-items: flex-end;
+        margin: 20px 0 10px 0;
+        align-items: start;
 
         .video-actions {
           height: 40px; // Align with the title
           display: flex;
           align-items: center;
 
-          .action-button:not(:first-child), .action-more {
+          .action-button:not(:first-child), .action-dropdown {
             margin-left: 10px;
           }
 
           .action-button {
             @include peertube-button;
             @include grey-button;
+            @include button-with-icon(21px, 0, -1px);
+            @include apply-svg-color($grey-foreground-color);
 
             font-size: 15px;
             font-weight: $font-semibold;
               display: none;
             }
 
-            .icon {
-              @include icon(21px);
-
-              position: relative;
-              top: -2px;
-
-              &.icon-like {
-                background-image: url('../../../assets/images/video/like-grey.svg');
-              }
+            &.action-button-like.activated {
+              background-color: $green;
 
-              &.icon-dislike {
-                background-image: url('../../../assets/images/video/dislike-grey.svg');
+              my-global-icon {
+                @include apply-svg-color(#fff);
               }
+            }
 
-              &.icon-support {
-                background-image: url('../../../assets/images/video/heart.svg');
-              }
+            &.action-button-dislike.activated {
+              background-color: $red;
 
-              &.icon-share {
-                background-image: url('../../../assets/images/video/share.svg');
+              my-global-icon {
+                @include apply-svg-color(#fff);
               }
+            }
 
-              &.icon-more {
-                background-image: url('../../../assets/images/video/more.svg');
-                top: -1px;
+            &.action-button-save {
+              my-global-icon {
+                top: 0 !important;
+                right: -1px;
               }
             }
 
             .icon-text {
               margin-left: 3px;
             }
-
-            &.action-button-like.activated {
-              background-color: $green;
-
-              .icon-like {
-                background-image: url('../../../assets/images/video/like-white.svg');
-              }
-            }
-
-            &.action-button-dislike.activated {
-              background-color: $red;
-
-              .icon-dislike {
-                background-image: url('../../../assets/images/video/dislike-white.svg');
-              }
-            }
           }
 
-          .action-more {
+          .action-dropdown {
             display: inline-block;
 
             .dropdown-menu .dropdown-item {
-              padding: 6px 24px;
-
-              .icon {
-                @include icon(24px);
-
-                margin-right: 10px;
-                position: relative;
-                top: -1px;
-
-                &.icon-download {
-                  background-image: url('../../../assets/images/video/download-black.svg');
-                }
-
-                &.icon-edit {
-                  background-image: url('../../../assets/images/global/edit-black.svg');
-                }
-
-                &.icon-alert {
-                  background-image: url('../../../assets/images/video/alert.svg');
-                }
-
-                &.icon-blacklist {
-                  background-image: url('../../../assets/images/video/blacklist.svg');
-                }
-
-                &.icon-unblacklist {
-                  background-image: url('../../../assets/images/global/undo.svg');
-                }
-
-                &.icon-delete {
-                  background-image: url('../../../assets/images/global/delete-black.svg');
-                }
-              }
+              @include dropdown-with-icon-item;
             }
           }
         }
 
         .video-info-likes-dislikes-bar {
-          height: 5px;
+          $likes-bar-height: 2px;
+          height: $likes-bar-height;
+          margin-top: -$likes-bar-height;
           width: 186px;
-          background-color: #E5E5E5;
-          margin-top: 25px;
+          background-color: $red;
+          position: relative;
+          top: 10px;
 
           .likes-bar {
             height: 100%;
-            background-color: #39CC0B;
+            background-color: $green;
           }
         }
       }
       .video-info-description-more {
         cursor: pointer;
         font-weight: $font-semibold;
-        color: #585858;
+        color: $grey-foreground-color;
         font-size: 14px;
 
         .glyphicon {
       margin-bottom: 12px;
 
       .video-attribute-label {
-        min-width: 91px;
+        min-width: 142px;
         padding-right: 5px;
         display: inline-block;
-        color: #585858;
+        color: $grey-foreground-color;
         font-weight: $font-bold;
       }
 
       a.video-attribute-value {
         @include disable-default-a-behaviour;
-        color: #000;
+        color: var(--mainForegroundColor);
 
         &:hover {
           opacity: 0.9;
     }
   }
 
-  .other-videos {
-    padding-left: 1em;
+  /deep/ .other-videos {
+    padding-left: 15px;
+    width: $other-videos-width;
 
     .title-page {
-      margin-top: 0;
+      margin-top: 0 !important;
     }
 
-    /deep/ .video-miniature {
+    .video-miniature {
       display: flex;
       height: 100%;
       margin-bottom: 20px;
   }
 }
 
+my-video-comments {
+  display: inline-block;
+  width: 100%;
+  margin-bottom: 20px;
+}
+
 // If the view is not expanded, take into account the menu
 .privacy-concerns {
   width: calc(100% - #{$menu-width});
 }
 
+@media screen and (max-width: $small-view) {
+  .privacy-concerns {
+    margin-left: $menu-width;
+  }
+}
+
 :host-context(.expanded) {
   .privacy-concerns {
     width: 100%;
+    margin-left: 0;
   }
 }
 
   a {
     @include disable-default-a-behaviour;
 
-    color: $orange-color;
+    color: var(--mainColor);
     transition: color 0.3s;
 
     &:hover {
   }
 
   .privacy-concerns-okay {
-    background-color: $orange-color;
+    background-color: var(--mainColor);
     padding: 5px 8px 5px 7px;
     margin-left: auto;
     border-radius: 3px;
   }
 }
 
+@media screen and (min-width: map-get($grid-breakpoints, xl)) {
+  .video-bottom .video-info {
+    max-width: calc(100% - #{$other-videos-width});
+  }
+}
 
 @media screen and (max-width: 1600px) {
-  .video-bottom {
-    .video-info {
-      margin-right: 20px;
-
-      .video-info-first-row {
-        flex-direction: column;
-        margin-bottom: 30px;
-
-        .video-actions-rates {
-          margin-top: 20px;
-          align-items: start;
-
-          .video-info-likes-dislikes-bar {
-            margin-top: 10px;
-          }
-        }
-      }
-
-      .video-info-date-views {
-        flex-direction: column;
-        margin-bottom: 30px;
-
-        .video-info-likes-dislikes-bar {
-          margin-top: 0;
-        }
-      }
-
-      .video-attributes .video-attribute {
-        margin-bottom: 5px;
-      }
-    }
+  .video-bottom .video-info .video-attributes .video-attribute {
+    margin-bottom: 5px;
   }
 }
 
 @media screen and (max-width: 1300px) {
-  .video-bottom {
-    flex-direction: column;
-  }
-
-  .other-videos {
-    padding-left: 0 !important;
-  }
-
   .privacy-concerns {
     font-size: 12px;
     padding: 2px 5px;
     margin: 20px 0 0 0;
 
     .video-info {
+      padding: 0;
 
       .video-info-first-row {
 
     }
   }
 
-  .other-videos {
+  /deep/ .other-videos {
+    padding-left: 0 !important;
+
     /deep/ .video-miniature  {
       flex-direction: column;
     }
 }
 
 @media screen and (max-width: 450px) {
-  .video-bottom  .action-button .icon-text {
-    display: none !important;
+  .video-bottom {
+    .action-button .icon-text {
+      display: none !important;
+    }
+
+    .video-info .video-info-first-row {
+      .video-info-name {
+        font-size: 18px;
+      }
+
+      .video-info-date-views {
+        font-size: 14px;
+      }
+
+      .video-actions-rates {
+        margin-top: 10px;
+      }
+    }
+
+    .video-info-description {
+      font-size: 14px !important;
+    }
   }
 }