Merge "Added dashboard and change-list to embedded views"
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
index 4013b37..2294621 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
@@ -89,11 +89,13 @@
         <div class="header">
           <span class="title">[[name]]</span>
           <div class="right">
-            <paper-toggle-button
-                id="exclusiveToggle"
-                checked="{{permission.value.exclusive}}"
-                on-change="_handleValueChange"
-                disabled$="[[!editing]]"></paper-toggle-button>Exclusive
+            <template is=dom-if if="[[!_permissionIsOwner(permission.id)]]">
+              <paper-toggle-button
+                  id="exclusiveToggle"
+                  checked="{{permission.value.exclusive}}"
+                  on-change="_handleValueChange"
+                  disabled$="[[!editing]]"></paper-toggle-button>Exclusive
+            </template>
             <gr-button
                 link
                 id="removeBtn"
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
index f9c04e60..cfb0ad5 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
@@ -89,6 +89,10 @@
       this._setupValues();
     },
 
+    _permissionIsOwner(permissionId) {
+      return permissionId === 'owner';
+    },
+
     _handleEditingChanged(editing, editingOld) {
       // Ignore when editing gets set initially.
       if (!editingOld) { return; }
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
index b67d705..ec93a5c 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
@@ -335,7 +335,7 @@
 
         assert.isFalse(element._originalExclusiveValue);
         assert.isNotOk(element.permission.value.modified);
-        MockInteractions.tap(element.$.exclusiveToggle);
+        MockInteractions.tap(element.$$('#exclusiveToggle'));
         flushAsynchronousOperations();
         assert.isTrue(element.permission.value.exclusive);
         assert.isTrue(element.permission.value.modified);
@@ -353,6 +353,15 @@
         assert.isTrue(element.permission.value.modified);
         assert.isTrue(modifiedHandler.called);
       });
+
+      test('Exclusive hidden for owner permission', () => {
+        assert.equal(getComputedStyle(element.$$('#exclusiveToggle')).display,
+            'flex');
+        element.set(['permission', 'id'], 'owner');
+        flushAsynchronousOperations();
+        assert.equal(getComputedStyle(element.$$('#exclusiveToggle')).display,
+            'none');
+      });
     });
   });
 </script>
diff --git a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js
index 92dc887..8e00c06 100644
--- a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js
+++ b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js
@@ -501,7 +501,7 @@
                 this.notifyPath('actions.rebaseEdit');
               }
             } else {
-              if (!changeActions.rebasEdit) {
+              if (!changeActions.rebaseEdit) {
                 this.set('actions.rebaseEdit', REBASE_EDIT);
               }
               if (changeActions.publishEdit) {
diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
index 758a862..c2f2f6f 100644
--- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
+++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.html
@@ -76,7 +76,10 @@
       }
       gr-change-status {
         display: initial;
-        margin: .1em .5em .1em 0;
+        margin: .1em .1em .1em .4em;
+      }
+      gr-change-status:first-child {
+        margin-left: 0;
       }
       .header-title {
         align-items: center;
@@ -144,7 +147,9 @@
         }
       }
       .changeStatuses,
-      .commitActions {
+      .changeText,
+      .commitActions,
+      .statusText {
         align-items: center;
         display: flex;
       }
@@ -225,6 +230,7 @@
       }
       gr-commit-info {
         display: inline-block;
+        margin-right: -5px;
       }
       @media screen and (min-width: 80em) {
         .commitMessage {
@@ -327,19 +333,22 @@
                   status="[[status]]"></gr-change-status>
             </template>
           </div>
+          <div class="statusText">
+            <template
+                is="dom-if"
+                if="[[_computeShowCommitInfo(_changeStatus, _change.current_revision)]]">
+              <span class="text"> as </span>
+              <gr-commit-info
+                  change="[[_change]]"
+                  commit-info="[[_computeMergedCommitInfo(_change.current_revision, _change.revisions)]]"
+                  server-config="[[_serverConfig]]"></gr-commit-info>
+            </template>
+          </div>
+          <span class="separator"></span>
           <div class="changeText">
             <a aria-label$="[[_computeChangePermalinkAriaLabel(_change._number)]]"
-                href$="[[_computeChangeUrl(_change)]]">[[_change._number]]</a><!--
-         --><template
-                is="dom-if"
-                if="[[_computeShowCommitInfo(_changeStatus, _change.current_revision)]]"><!--
-           --><span class="text"> ([[_changeStatus]] as </span><!--
-             --><gr-commit-info
-                    change="[[_change]]"
-                    commit-info="[[_computeMergedCommitInfo(_change.current_revision, _change.revisions)]]"
-                    server-config="[[_serverConfig]]"></gr-commit-info>)<!--
-         --></template><!--
-         --><span class="text">: </span><span class="headerSubject">[[_change.subject]]</span>
+                href$="[[_computeChangeUrl(_change)]]">[[_change._number]]</a>
+            <span class="headerSubject">: [[_change.subject]]</span>
           </div>
         </div><!-- end header-title -->
         <div class="commitActions" hidden$="[[!_loggedIn]]">
diff --git a/polygerrit-ui/app/elements/change/gr-commit-info/gr-commit-info.html b/polygerrit-ui/app/elements/change/gr-commit-info/gr-commit-info.html
index 67b54d6..3eaeab25 100644
--- a/polygerrit-ui/app/elements/change/gr-commit-info/gr-commit-info.html
+++ b/polygerrit-ui/app/elements/change/gr-commit-info/gr-commit-info.html
@@ -25,9 +25,6 @@
         align-items: center;
         display: flex;
       }
-      gr-copy-clipboard {
-        padding-left: .5em;
-      }
     </style>
     <div class="container">
       <template is="dom-if" if="[[_showWebLink]]">
diff --git a/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html b/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
index c92919d..4c6b95a 100644
--- a/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
+++ b/polygerrit-ui/app/elements/change/gr-file-list-header/gr-file-list-header.html
@@ -135,6 +135,9 @@
         font-family: var(--font-family-bold);
         margin-right: 24px;
       }
+      gr-commit-info {
+        margin-right: -5px;
+      }
       @media screen and (max-width: 50em) {
         .patchInfo-header .desktop {
           display: none;
diff --git a/polygerrit-ui/app/elements/gr-app.html b/polygerrit-ui/app/elements/gr-app.html
index ef93794..ced27dd 100644
--- a/polygerrit-ui/app/elements/gr-app.html
+++ b/polygerrit-ui/app/elements/gr-app.html
@@ -55,6 +55,7 @@
 <link rel="import" href="./settings/gr-registration-dialog/gr-registration-dialog.html">
 <link rel="import" href="./settings/gr-settings-view/gr-settings-view.html">
 <link rel="import" href="./shared/gr-fixed-panel/gr-fixed-panel.html">
+<link rel="import" href="./shared/gr-rest-api-interface/gr-rest-api-interface.html">
 
 <script src="../scripts/util.js"></script>