Refactor create change help into element
Gerrit may, in the embedded scenario, need to redefine the flow that occurs when the "Create Change" button is tapped. Change-Id: I034abf458cb6b79bff650da9a0311c6e82508eee
This commit is contained in:
parent
d764d2abda
commit
57c1a28741
@ -0,0 +1,87 @@
|
||||
<!--
|
||||
@license
|
||||
Copyright (C) 2018 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<link rel="import" href="../../../bower_components/polymer/polymer.html">
|
||||
|
||||
<link rel="import" href="../../../styles/shared-styles.html">
|
||||
<link rel="import" href="../../shared/gr-button/gr-button.html">
|
||||
<link rel="import" href="../../shared/gr-icons/gr-icons.html">
|
||||
|
||||
<dom-module id="gr-create-change-help">
|
||||
<template>
|
||||
<style include="shared-styles">
|
||||
:host {
|
||||
display: block;
|
||||
}
|
||||
#graphic,
|
||||
#help {
|
||||
display: inline-block;
|
||||
margin: .5em;
|
||||
}
|
||||
#graphic #circle {
|
||||
align-items: center;
|
||||
background-color: var(--chip-background-color);
|
||||
border-radius: 50%;
|
||||
display: flex;
|
||||
height: 10em;
|
||||
justify-content: center;
|
||||
width: 10em;
|
||||
}
|
||||
#graphic iron-icon {
|
||||
color: #9e9e9e;
|
||||
height: 5em;
|
||||
width: 5em;
|
||||
}
|
||||
#graphic p {
|
||||
color: var(--deemphasized-text-color);
|
||||
text-align: center;
|
||||
}
|
||||
#help {
|
||||
vertical-align: top;
|
||||
}
|
||||
#help h1 {
|
||||
font-size: var(--font-size-large);
|
||||
}
|
||||
#help p {
|
||||
max-width: 35em;
|
||||
}
|
||||
@media only screen and (max-width: 50em) {
|
||||
#graphic {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<div id="graphic">
|
||||
<div id="circle">
|
||||
<iron-icon id="icon" icon="gr-icons:zeroState"></iron-icon>
|
||||
</div>
|
||||
<p>
|
||||
No outgoing changes yet
|
||||
</p>
|
||||
</div>
|
||||
<div id="help">
|
||||
<h1>Push your first changes for code review</h1>
|
||||
<p>
|
||||
Pushing a change for review is easy, but a little different from
|
||||
other git code review tools. Click on the `Create Change' button
|
||||
and follow the step by step instructions.
|
||||
</p>
|
||||
<gr-button on-tap="_handleCreateTap">Create Change</gr-button>
|
||||
</div>
|
||||
</template>
|
||||
<script src="gr-create-change-help.js"></script>
|
||||
</dom-module>
|
@ -0,0 +1,34 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright (C) 2018 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
Polymer({
|
||||
is: 'gr-create-change-help',
|
||||
|
||||
/**
|
||||
* Fired when the "Create change" button is tapped.
|
||||
*
|
||||
* @event create-tap
|
||||
*/
|
||||
|
||||
_handleCreateTap(e) {
|
||||
e.preventDefault();
|
||||
this.dispatchEvent(new CustomEvent('create-tap'));
|
||||
},
|
||||
});
|
||||
})();
|
@ -0,0 +1,50 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
@license
|
||||
Copyright (C) 2018 The Android Open Source Project
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
|
||||
<title>gr-create-change-help</title>
|
||||
|
||||
<script src="../../../bower_components/webcomponentsjs/webcomponents-lite.min.js"></script>
|
||||
<script src="../../../bower_components/web-component-tester/browser.js"></script>
|
||||
<link rel="import" href="../../../test/common-test-setup.html"/>
|
||||
<script src="../../../scripts/util.js"></script>
|
||||
|
||||
<link rel="import" href="gr-create-change-help.html">
|
||||
|
||||
<script>void(0);</script>
|
||||
|
||||
<test-fixture id="basic">
|
||||
<template>
|
||||
<gr-create-change-help></gr-create-change-help>
|
||||
</template>
|
||||
</test-fixture>
|
||||
|
||||
<script>
|
||||
suite('gr-create-change-help tests', () => {
|
||||
let element;
|
||||
|
||||
setup(() => {
|
||||
element = fixture('basic');
|
||||
});
|
||||
|
||||
test('Create change tap', done => {
|
||||
element.addEventListener('create-tap', () => done());
|
||||
MockInteractions.tap(element.$$('gr-button'));
|
||||
});
|
||||
});
|
||||
</script>
|
@ -22,10 +22,10 @@ limitations under the License.
|
||||
<link rel="import" href="../../core/gr-reporting/gr-reporting.html">
|
||||
<link rel="import" href="../../shared/gr-button/gr-button.html">
|
||||
<link rel="import" href="../../shared/gr-dialog/gr-dialog.html">
|
||||
<link rel="import" href="../../shared/gr-icons/gr-icons.html">
|
||||
<link rel="import" href="../../shared/gr-overlay/gr-overlay.html">
|
||||
<link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html">
|
||||
<link rel="import" href="../gr-create-commands-dialog/gr-create-commands-dialog.html">
|
||||
<link rel="import" href="../gr-create-change-help/gr-create-change-help.html">
|
||||
<link rel="import" href="../gr-create-destination-dialog/gr-create-destination-dialog.html">
|
||||
<link rel="import" href="../gr-user-header/gr-user-header.html">
|
||||
|
||||
@ -65,45 +65,10 @@ limitations under the License.
|
||||
#emptyOutgoing {
|
||||
display: block;
|
||||
}
|
||||
#emptyOutgoing #graphic,
|
||||
#emptyOutgoing #help {
|
||||
display: inline-block;
|
||||
margin: .5em;
|
||||
}
|
||||
#emptyOutgoing #graphic #circle {
|
||||
align-items: center;
|
||||
background-color: var(--chip-background-color);
|
||||
border-radius: 50%;
|
||||
display: flex;
|
||||
height: 10em;
|
||||
justify-content: center;
|
||||
width: 10em;
|
||||
}
|
||||
#emptyOutgoing #graphic iron-icon {
|
||||
color: #9e9e9e;
|
||||
height: 5em;
|
||||
width: 5em;
|
||||
}
|
||||
#emptyOutgoing #graphic p {
|
||||
color: var(--deemphasized-text-color);
|
||||
text-align: center;
|
||||
}
|
||||
#emptyOutgoing #help {
|
||||
vertical-align: top;
|
||||
}
|
||||
#emptyOutgoing #help h1 {
|
||||
font-size: var(--font-size-large);
|
||||
}
|
||||
#emptyOutgoing #help p {
|
||||
max-width: 35em;
|
||||
}
|
||||
@media only screen and (max-width: 50em) {
|
||||
.loading {
|
||||
padding: 0 var(--default-horizontal-margin);
|
||||
}
|
||||
#emptyOutgoing #graphic {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<div class$="banner [[_computeBannerClass(_showDraftsBanner)]]">
|
||||
@ -133,24 +98,8 @@ limitations under the License.
|
||||
on-toggle-star="_handleToggleStar"
|
||||
on-toggle-reviewed="_handleToggleReviewed">
|
||||
<div id="emptyOutgoing" slot="empty-outgoing">
|
||||
<template is="dom-if" if="_showNewUserHelp">
|
||||
<div id="graphic">
|
||||
<div id="circle">
|
||||
<iron-icon id="icon" icon="gr-icons:zeroState"></iron-icon>
|
||||
</div>
|
||||
<p>
|
||||
No outgoing changes yet
|
||||
</p>
|
||||
</div>
|
||||
<div id="help">
|
||||
<h1>Push your first changes for code review</h1>
|
||||
<p>
|
||||
Pushing a change for review is easy, but a little different from
|
||||
other git code review tools. Click on the `Create Change' button
|
||||
and follow the step by step instructions.
|
||||
</p>
|
||||
<gr-button on-tap="_createChangeTap">Create Change</gr-button>
|
||||
</div>
|
||||
<template is="dom-if" if="[[_showNewUserHelp]]">
|
||||
<gr-create-change-help on-create-tap="createChangeTap"></gr-create-change-help>
|
||||
</template>
|
||||
</div>
|
||||
</gr-change-list>
|
||||
|
@ -42,6 +42,13 @@
|
||||
type: Object,
|
||||
},
|
||||
|
||||
createChangeTap: {
|
||||
type: Function,
|
||||
value() {
|
||||
return this._createChangeTap.bind(this);
|
||||
},
|
||||
},
|
||||
|
||||
_results: Array,
|
||||
|
||||
/**
|
||||
@ -267,7 +274,7 @@
|
||||
return Gerrit.Nav.getUrlForSearchQuery('has:draft -is:open');
|
||||
},
|
||||
|
||||
_createChangeTap() {
|
||||
_createChangeTap(e) {
|
||||
this.$.destinationDialog.open();
|
||||
},
|
||||
|
||||
|
@ -26,5 +26,6 @@ limitations under the License.
|
||||
<link rel="import" href="../elements/diff/gr-diff-view/gr-diff-view.html">
|
||||
<link rel="import" href="../elements/change-list/gr-change-list-view/gr-change-list-view.html">
|
||||
<link rel="import" href="../elements/change-list/gr-change-list/gr-change-list.html">
|
||||
<link rel="import" href="../elements/change-list/gr-create-change-help/gr-create-change-help.html">
|
||||
<link rel="import" href="../elements/change-list/gr-dashboard-view/gr-dashboard-view.html">
|
||||
<link rel="import" href="../styles/themes/app-theme.html">
|
||||
|
@ -57,6 +57,7 @@ limitations under the License.
|
||||
'change-list/gr-change-list-view/gr-change-list-view_test.html',
|
||||
'change-list/gr-change-list/gr-change-list_test.html',
|
||||
'change-list/gr-create-commands-dialog/gr-create-commands-dialog_test.html',
|
||||
'change-list/gr-create-change-help/gr-create-change-help_test.html',
|
||||
'change-list/gr-dashboard-view/gr-dashboard-view_test.html',
|
||||
'change-list/gr-user-header/gr-user-header_test.html',
|
||||
'change/gr-account-entry/gr-account-entry_test.html',
|
||||
|
Loading…
x
Reference in New Issue
Block a user