Merge "Prevent editing binary files"
diff --git a/polygerrit-ui/app/elements/edit/gr-editor-view/gr-editor-view.ts b/polygerrit-ui/app/elements/edit/gr-editor-view/gr-editor-view.ts
index da75914..16d54dd 100644
--- a/polygerrit-ui/app/elements/edit/gr-editor-view/gr-editor-view.ts
+++ b/polygerrit-ui/app/elements/edit/gr-editor-view/gr-editor-view.ts
@@ -28,7 +28,7 @@
GenerateUrlEditViewParameters,
} from '../../core/gr-navigation/gr-navigation';
import {computeTruncatedPath} from '../../../utils/path-list-util';
-import {customElement, property} from '@polymer/decorators';
+import {customElement, observe, property} from '@polymer/decorators';
import {
ChangeInfo,
PatchSetNum,
@@ -211,8 +211,8 @@
}
_editChange(value?: ChangeInfo | null) {
- if (!changeIsMerged(value) && !changeIsAbandoned(value)) return;
if (!value) return;
+ if (!changeIsMerged(value) && !changeIsAbandoned(value)) return;
fireAlert(
this,
'Change edits cannot be created if change is merged or abandoned. Redirected to non edit mode.'
@@ -220,6 +220,15 @@
GerritNav.navigateToChange(value);
}
+ @observe('_change', '_type')
+ _editType(change?: ChangeInfo | null, type?: string) {
+ if (!change || !type || !type.startsWith('image/')) return;
+
+ // Prevent editing binary files
+ fireAlert(this, 'You cannot edit binary files within the inline editor.');
+ GerritNav.navigateToChange(change);
+ }
+
_handlePathChanged(e: CustomEvent<string>) {
// TODO(TS) could be cleaned up, it was added for type requirements
if (this._changeNum === undefined || !this._path) {