Move move-link-click event details to API
Also make the naming of the line number field consistent with the CreateCommentEventDetail. Change-Id: Ie4a114c2ce3ca16ea71cd0f6618d4d3a97e2e9c7
This commit is contained in:
		@@ -229,8 +229,8 @@ export declare type LineNumber = number | 'FILE';
 | 
			
		||||
 | 
			
		||||
/** The detail of the 'create-comment' event dispatched by gr-diff. */
 | 
			
		||||
export declare interface CreateCommentEventDetail {
 | 
			
		||||
  lineNum: LineNumber;
 | 
			
		||||
  side: Side;
 | 
			
		||||
  lineNum: LineNumber;
 | 
			
		||||
  range: CommentRange | undefined;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -240,3 +240,8 @@ export declare interface ContentLoadNeededEventDetail {
 | 
			
		||||
    right: LineRange;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export declare interface MovedLinkClickedEventDetail {
 | 
			
		||||
  side: Side;
 | 
			
		||||
  lineNum: LineNumber;
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -14,7 +14,10 @@
 | 
			
		||||
 * See the License for the specific language governing permissions and
 | 
			
		||||
 * limitations under the License.
 | 
			
		||||
 */
 | 
			
		||||
import {ContentLoadNeededEventDetail} from '../../../api/diff';
 | 
			
		||||
import {
 | 
			
		||||
  ContentLoadNeededEventDetail,
 | 
			
		||||
  MovedLinkClickedEventDetail,
 | 
			
		||||
} from '../../../api/diff';
 | 
			
		||||
import {getBaseUrl} from '../../../utils/url-util';
 | 
			
		||||
import {GrDiffLine, GrDiffLineType, LineNumber} from '../gr-diff/gr-diff-line';
 | 
			
		||||
import {
 | 
			
		||||
@@ -26,7 +29,6 @@ import {BlameInfo} from '../../../types/common';
 | 
			
		||||
import {DiffInfo, DiffPreferencesInfo} from '../../../types/diff';
 | 
			
		||||
import {DiffViewMode, Side} from '../../../constants/constants';
 | 
			
		||||
import {DiffLayer} from '../../../types/types';
 | 
			
		||||
import {MovedChunkGoToLineDetail} from '../../../types/events';
 | 
			
		||||
import {pluralize} from '../../../utils/string-util';
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
@@ -794,9 +796,9 @@ export abstract class GrDiffBuilder {
 | 
			
		||||
    anchor.addEventListener('click', e => {
 | 
			
		||||
      e.preventDefault();
 | 
			
		||||
      anchor.dispatchEvent(
 | 
			
		||||
        new CustomEvent<MovedChunkGoToLineDetail>('moved-link-clicked', {
 | 
			
		||||
        new CustomEvent<MovedLinkClickedEventDetail>('moved-link-clicked', {
 | 
			
		||||
          detail: {
 | 
			
		||||
            line,
 | 
			
		||||
            lineNum: line,
 | 
			
		||||
            side,
 | 
			
		||||
          },
 | 
			
		||||
          composed: true,
 | 
			
		||||
 
 | 
			
		||||
@@ -421,7 +421,7 @@ suite('gr-diff-cursor tests', () => {
 | 
			
		||||
      const [startLineAnchor] = movedIn.querySelectorAll('a');
 | 
			
		||||
 | 
			
		||||
      const onMovedLinkClicked = e => {
 | 
			
		||||
        assert.deepEqual(e.detail, {line: 4, side: 'left'});
 | 
			
		||||
        assert.deepEqual(e.detail, {lineNum: 4, side: 'left'});
 | 
			
		||||
        done();
 | 
			
		||||
      };
 | 
			
		||||
      assert.equal(startLineAnchor.textContent, '4');
 | 
			
		||||
@@ -436,7 +436,7 @@ suite('gr-diff-cursor tests', () => {
 | 
			
		||||
      const [, endLineAnchor] = movedOut.querySelectorAll('a');
 | 
			
		||||
 | 
			
		||||
      const onMovedLinkClicked = e => {
 | 
			
		||||
        assert.deepEqual(e.detail, {line: 4, side: 'right'});
 | 
			
		||||
        assert.deepEqual(e.detail, {lineNum: 4, side: 'right'});
 | 
			
		||||
        done();
 | 
			
		||||
      };
 | 
			
		||||
      assert.equal(endLineAnchor.textContent, '4');
 | 
			
		||||
 
 | 
			
		||||
@@ -61,7 +61,7 @@ import {FlattenedNodesObserver} from '@polymer/polymer/lib/utils/flattened-nodes
 | 
			
		||||
import {PolymerDeepPropertyChange} from '@polymer/polymer/interfaces';
 | 
			
		||||
import {AbortStop} from '../../shared/gr-cursor-manager/gr-cursor-manager';
 | 
			
		||||
import {fireAlert, fireEvent} from '../../../utils/event-util';
 | 
			
		||||
import {MovedChunkGoToLineEvent} from '../../../types/events';
 | 
			
		||||
import {MovedLinkClickedEvent} from '../../../types/events';
 | 
			
		||||
// TODO(davido): See: https://github.com/GoogleChromeLabs/shadow-selection-polyfill/issues/9
 | 
			
		||||
// @ts-ignore
 | 
			
		||||
import * as shadow from 'shadow-selection-polyfill/shadow.js';
 | 
			
		||||
@@ -554,8 +554,8 @@ export class GrDiff extends GestureEventListeners(
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  _movedLinkClicked(e: MovedChunkGoToLineEvent) {
 | 
			
		||||
    this._dispatchSelectedLine(e.detail.line, e.detail.side);
 | 
			
		||||
  _movedLinkClicked(e: MovedLinkClickedEvent) {
 | 
			
		||||
    this._dispatchSelectedLine(e.detail.lineNum, e.detail.side);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  addDraftAtLine(el: Element) {
 | 
			
		||||
 
 | 
			
		||||
@@ -17,9 +17,8 @@
 | 
			
		||||
import {EventApi} from '@polymer/polymer/lib/legacy/polymer.dom';
 | 
			
		||||
import {PatchSetNum, UrlEncodedCommentId} from './common';
 | 
			
		||||
import {UIComment} from '../utils/comment-util';
 | 
			
		||||
import {Side} from '../constants/constants';
 | 
			
		||||
import {LineNumber} from '../elements/diff/gr-diff/gr-diff-line';
 | 
			
		||||
import {FetchRequest} from './types';
 | 
			
		||||
import {MovedLinkClickedEventDetail} from '../api/diff';
 | 
			
		||||
 | 
			
		||||
export interface TitleChangeEventDetail {
 | 
			
		||||
  title: string;
 | 
			
		||||
@@ -164,16 +163,11 @@ export interface ReloadEventDetail {
 | 
			
		||||
 | 
			
		||||
export type ReloadEvent = CustomEvent<ReloadEventDetail>;
 | 
			
		||||
 | 
			
		||||
export interface MovedChunkGoToLineDetail {
 | 
			
		||||
  side: Side;
 | 
			
		||||
  line: LineNumber;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export type MovedChunkGoToLineEvent = CustomEvent<MovedChunkGoToLineDetail>;
 | 
			
		||||
export type MovedLinkClickedEvent = CustomEvent<MovedLinkClickedEventDetail>;
 | 
			
		||||
 | 
			
		||||
declare global {
 | 
			
		||||
  interface HTMLElementEventMap {
 | 
			
		||||
    'moved-link-clicked': MovedChunkGoToLineEvent;
 | 
			
		||||
    'moved-link-clicked': MovedLinkClickedEvent;
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user