mobile.scss 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. @use 'variables';
  2. @media only screen and (max-width: variables.$breakpoint-mobile) {
  3. /* position share dropdown */
  4. #dropdown {
  5. margin-right: 10% !important;
  6. width: 80% !important;
  7. }
  8. /* fix name autocomplete not showing on mobile */
  9. .ui-autocomplete {
  10. z-index: 1000 !important;
  11. }
  12. /* fix error display on smaller screens */
  13. .error-wide {
  14. width: 100%;
  15. margin-left: 0 !important;
  16. box-sizing: border-box;
  17. }
  18. /* APP SIDEBAR TOGGLE and SWIPE ----------------------------------------------*/
  19. #app-navigation {
  20. transform: translateX(-#{variables.$navigation-width});
  21. }
  22. .snapjs-left {
  23. #app-navigation {
  24. transform: translateX(0);
  25. }
  26. }
  27. #app-navigation:not(.hidden) + #app-content {
  28. margin-left: 0;
  29. }
  30. .skip-navigation.skip-content {
  31. left: 3px;
  32. margin-left: 0;
  33. }
  34. /* full width for message list on mobile */
  35. .app-content-list {
  36. background: var(--color-main-background);
  37. flex: 1 1 100%;
  38. // make full height scroll since app-content-details is hidden
  39. max-height: unset;
  40. // ignore 300px default max width
  41. max-width: 100%;
  42. + .app-content-details {
  43. display: none;
  44. }
  45. &.showdetails {
  46. display: none;
  47. + .app-content-details {
  48. display: initial;
  49. }
  50. }
  51. }
  52. /* Show app details page */
  53. #app-content.showdetails {
  54. #app-navigation-toggle {
  55. transform: translateX(-44px);
  56. }
  57. #app-navigation-toggle-back {
  58. position: fixed;
  59. display: inline-block !important;
  60. top: variables.$header-height;
  61. left: 0;
  62. width: 44px;
  63. height: 44px;
  64. z-index: 1050; // above app-content
  65. background-color: rgba(255, 255, 255, .7);
  66. cursor: pointer;
  67. opacity: .6;
  68. transform: rotate(90deg);
  69. }
  70. .app-content-list {
  71. transform: translateX(-100%);
  72. }
  73. }
  74. #app-navigation-toggle {
  75. position: fixed;
  76. display: inline-block !important;
  77. left: 0;
  78. width: 44px;
  79. height: 44px;
  80. z-index: 1050; // above app-content
  81. cursor: pointer;
  82. opacity: 0.6;
  83. }
  84. #app-navigation-toggle:hover,
  85. #app-navigation-toggle:focus {
  86. opacity: 1;
  87. }
  88. /* position controls for apps with app-navigation */
  89. #app-navigation + #app-content .files-controls {
  90. padding-left: 44px;
  91. }
  92. /* .viewer-mode is when text editor, PDF viewer, etc is open */
  93. #body-user .app-files.viewer-mode .files-controls {
  94. padding-left: 0 !important;
  95. }
  96. .app-files.viewer-mode #app-navigation-toggle {
  97. display: none !important;
  98. }
  99. table.multiselect thead {
  100. left: 0 !important;
  101. }
  102. /* prevent overflow in user management controls bar */
  103. #usersearchform {
  104. display: none;
  105. }
  106. #body-settings .files-controls {
  107. min-width: variables.$breakpoint-mobile !important;
  108. }
  109. /* do not show dates in filepicker */
  110. #oc-dialog-filepicker-content .filelist .column-size,
  111. #oc-dialog-filepicker-content .filelist .column-mtime,
  112. #oc-dialog-filepicker-content .filelist .filesize,
  113. #oc-dialog-filepicker-content .filelist .date {
  114. display: none;
  115. }
  116. #oc-dialog-filepicker-content .filelist .filename {
  117. max-width: 100%;
  118. }
  119. .snapjs-left table.multiselect thead {
  120. top: 44px;
  121. }
  122. /* end of media query */
  123. }
  124. @media only screen and (max-width: 480px) {
  125. #header .header-right > div > .menu {
  126. max-width: calc(100vw - 10px);
  127. position: fixed;
  128. &::after {
  129. display: none !important;
  130. }
  131. }
  132. /* Arrow directly child of menutoggle */
  133. #header .header-right > div {
  134. &.openedMenu {
  135. &::after {
  136. display: block;
  137. }
  138. }
  139. &::after {
  140. border: 10px solid transparent;
  141. border-bottom-color: var(--color-main-background);
  142. bottom: 0;
  143. content: ' ';
  144. height: 0;
  145. width: 0;
  146. position: absolute;
  147. pointer-events: none;
  148. right: 15px;
  149. z-index: 2001;
  150. display: none;
  151. }
  152. /* settings need a different offset, since they have a right padding */
  153. &#settings::after {
  154. right: 27px;
  155. }
  156. }
  157. }