Browse Source

Show mastodon on modal (#6129)

Akihiko Odaki 6 năm trước cách đây
mục cha
commit
2c1ed5f872

+ 5 - 0
app/controllers/authorize_follows_controller.rb

@@ -4,6 +4,7 @@ class AuthorizeFollowsController < ApplicationController
   layout 'modal'
 
   before_action :authenticate_user!
+  before_action :set_body_classes
 
   def show
     @account = located_account || render(:error)
@@ -58,4 +59,8 @@ class AuthorizeFollowsController < ApplicationController
   def acct_params
     params.fetch(:acct, '')
   end
+
+  def set_body_classes
+    @body_classes = 'modal-layout'
+  end
 end

+ 4 - 0
app/controllers/remote_follow_controller.rb

@@ -38,4 +38,8 @@ class RemoteFollowController < ApplicationController
   def suspended_account?
     @account.suspended?
   end
+
+  def set_body_classes
+    @body_classes = 'modal-layout'
+  end
 end

+ 1 - 1
app/controllers/shares_controller.rb

@@ -25,6 +25,6 @@ class SharesController < ApplicationController
   end
 
   def set_body_classes
-    @body_classes = 'compose-standalone'
+    @body_classes = 'modal-layout compose-standalone'
   end
 end

+ 0 - 0
app/javascript/images/mastodon-drawer.png → app/javascript/images/mastodon-ui.png


BIN
app/javascript/images/wave-compose-standalone.png


BIN
app/javascript/images/wave-modal.png


+ 1 - 0
app/javascript/styles/application.scss

@@ -6,6 +6,7 @@
 
 @import 'mastodon/reset';
 @import 'mastodon/basics';
+@import 'mastodon/modal';
 @import 'mastodon/containers';
 @import 'mastodon/lists';
 @import 'mastodon/footer';

+ 1 - 1
app/javascript/styles/mastodon/components.scss

@@ -1773,7 +1773,7 @@
   }
 
   > .mastodon {
-    background: url('../images/mastodon-drawer.png') no-repeat left bottom / contain;
+    background: url('../images/mastodon-ui.png') no-repeat left bottom / contain;
     flex: 1;
   }
 }

+ 20 - 0
app/javascript/styles/mastodon/modal.scss

@@ -0,0 +1,20 @@
+.modal-layout {
+  background: $ui-base-color url('../images/wave-modal.png') repeat-x bottom fixed;
+  display: flex;
+  flex-direction: column;
+  height: 100vh;
+  padding: 0;
+}
+
+.modal-layout__mastodon {
+  display: flex;
+  flex: 1;
+  flex-direction: column;
+  justify-content: flex-end;
+
+  > * {
+    flex: 1;
+    max-height: 235px;
+    background: url('../images/mastodon-ui.png') no-repeat left bottom / contain;
+  }
+}

+ 2 - 0
app/views/layouts/modal.html.haml

@@ -12,5 +12,7 @@
         = fa_icon 'sign-out'
 
   .container= yield
+  .modal-layout__mastodon
+    %div
 
 = render template: 'layouts/application'