diff --git a/app/assets/stylesheets/pages/projects.scss b/app/assets/stylesheets/pages/projects.scss
index cff3edb7ed26c2a5caa0a062001c5af7d705017f..be6ef43e49ce0e4c56dcf997d319952fb4c051b2 100644
--- a/app/assets/stylesheets/pages/projects.scss
+++ b/app/assets/stylesheets/pages/projects.scss
@@ -26,6 +26,13 @@
 }
 
 .project-home-panel {
+
+  .cover-controls {
+    .project-settings-dropdown {
+      margin-left: 10px;
+    }
+  }
+
   .project-identicon-holder {
     margin-bottom: 16px;
 
diff --git a/app/views/projects/_home_panel.html.haml b/app/views/projects/_home_panel.html.haml
index e92115b9b987ba29111ba28c8f6be4991c7816c6..0f61e62339606dd220a7b81b963ef6722e105db2 100644
--- a/app/views/projects/_home_panel.html.haml
+++ b/app/views/projects/_home_panel.html.haml
@@ -18,13 +18,26 @@
       = visibility_level_label(@project.visibility_level)
 
   .cover-controls
-    - if can?(current_user, :admin_project, @project)
-      = link_to edit_project_path(@project), class: 'btn btn-gray' do
-        = icon('pencil')
     - if current_user
-       
       = link_to namespace_project_path(@project.namespace, @project, format: :atom, private_token: current_user.private_token), class: 'btn btn-gray' do
         = icon('rss')
+      - access = user_max_access_in_project(current_user.id, @project)
+      - can_edit = can?(current_user, :admin_project, @project)
+      - if access || can_edit
+        %span.dropdown.project-settings-dropdown
+          %a.dropdown-new.btn.btn-gray#project-settings-button{href: '#', 'data-toggle' => 'dropdown'}
+            = icon('cog')
+            = icon('angle-down')
+          %ul.dropdown-menu.dropdown-menu-right
+            - if can_edit
+              %li
+                = link_to edit_project_path(@project) do
+                  Edit Project
+            - if access
+              %li
+                = link_to leave_namespace_project_project_members_path(@project.namespace, @project),
+                  data: { confirm: leave_project_message(@project) }, method: :delete, title: 'Leave project' do
+                  Leave Project
 
   .project-repo-buttons
     .split-one.count-buttons
diff --git a/app/views/projects/show.html.haml b/app/views/projects/show.html.haml
index 7466a098e24d0ba1e735d307ffc41c17c7a458b2..ffbe445b4470ba612585d121943381e0f2e35534 100644
--- a/app/views/projects/show.html.haml
+++ b/app/views/projects/show.html.haml
@@ -68,15 +68,4 @@
     = render 'projects/last_commit', commit: @repository.commit, project: @project
 
 %div{class: "project-show-#{default_project_view}"}
-  = render default_project_view
-
-- if current_user
-  - access = user_max_access_in_project(current_user.id, @project)
-  - if access
-    .prepend-top-20.project-footer
-      .gray-content-block.footer-block.center
-        You have #{access} access to this project.
-        - if @project.project_member_by_id(current_user)
-          = link_to leave_namespace_project_project_members_path(@project.namespace, @project),
-            data: { confirm: leave_project_message(@project) }, method: :delete, title: 'Leave project', class: 'cred' do
-            Leave this project
+  = render default_project_view
\ No newline at end of file
diff --git a/spec/features/projects_spec.rb b/spec/features/projects_spec.rb
index 74b148f5d178b44fb55aa3340cbca7f4fefc5180..9a01c89ae2a86105f3aba4c4ff11fdcfa32983cc 100644
--- a/spec/features/projects_spec.rb
+++ b/spec/features/projects_spec.rb
@@ -80,8 +80,10 @@ feature 'Project', feature: true do
       visit namespace_project_path(project.namespace, project)
     end
 
-    it { expect(page).to have_content('You have Master access to this project.') }
-    it { expect(page).to have_link('Leave this project') }
+    it 'click project-settings and find leave project' do
+      find('#project-settings-button').click
+      expect(page).to have_link('Leave Project') 
+    end
   end
 
   def remove_with_confirm(button_text, confirm_with)