瀏覽代碼

[notebook] Show delete confirmation if snippet has content

Enrico Berti 10 年之前
父節點
當前提交
714bd1d
共有 1 個文件被更改,包括 16 次插入2 次删除
  1. 16 2
      desktop/libs/notebook/src/notebook/static/notebook/js/notebook.ko.js

+ 16 - 2
desktop/libs/notebook/src/notebook/static/notebook/js/notebook.ko.js

@@ -896,8 +896,22 @@ function EditorViewModel(notebooks, options) {
   self.removeSnippetConfirmation = ko.observable();
 
   self.removeSnippet = function (notebook, snippet) {
-    self.removeSnippetConfirmation({ notebook: notebook, snippet: snippet });
-    $("#removeSnippetModal").modal("show");
+    var hasContent = snippet.statement_raw().length > 0;
+    if (!hasContent) {
+      $.each(snippet.properties(), function (key, value) {
+        hasContent = hasContent || (ko.isObservable(value) && value().length > 0);
+      });
+    }
+    if (hasContent) {
+      self.removeSnippetConfirmation({ notebook: notebook, snippet: snippet });
+      $("#removeSnippetModal").modal("show");
+    }
+    else {
+      notebook.snippets.remove(snippet);
+      window.setTimeout(function () {
+        $(document).trigger("editorSizeChanged");
+      }, 100);
+    }
   };
 
   self.assistAvailable = ko.observable(options.assistAvailable);