]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1281200 - New show_bug.cgi view should have an option to have fields editable...
authorKohei Yoshino <kohei.yoshino@gmail.com>
Wed, 3 Apr 2019 19:32:16 +0000 (15:32 -0400)
committerGitHub <noreply@github.com>
Wed, 3 Apr 2019 19:32:16 +0000 (15:32 -0400)
extensions/BugModal/template/en/default/bug_modal/edit.html.tmpl
extensions/BugModal/web/bug_modal.js
skins/standard/global.css

index c218ab5e096105eb1d9bc2e67d6390c67a51e4b0..12d741ff05c275d1fa864282cbf4240542fbd39e 100644 (file)
         <button type="button" id="action-menu-btn" aria-haspopup="true" aria-label="Actions Menu"
           aria-expanded="false" aria-controls="action-menu" class="dropdown-button minor">&#9662;</button>
         <ul class="dropdown-content left" id="action-menu" role="menu" style="display:none;">
+          <li role="presentation">
+            <a id="action-enable-perm-edit" role="menuitemcheckbox" tabindex="-1">Always Enable Edit Mode</a>
+          </li>
+          <li role="separator"></li>
           <li role="presentation">
             <a id="action-reset" role="menuitem" tabindex="-1">Reset Sections</a>
           </li>
index ed3b1afe24845909aaa5d07e91a10e9e8581b869..a3610dbed766f84b05e1d6f1e79888f8e837a264 100644 (file)
@@ -81,8 +81,13 @@ $(function() {
 
     // restore edit mode after navigating back
     function restoreEditMode() {
-        if (!$('#editing').val())
+        if (!$('#editing').val()) {
+            if (localStorage.getItem('modal-perm-edit-mode') === 'true') {
+                $('#mode-btn').click();
+                $('#action-enable-perm-edit').attr('aria-checked', 'true');
+            }
             return;
+        }
         $('.module')
             .each(function() {
                 slide_module($(this), 'hide', true);
@@ -388,6 +393,15 @@ $(function() {
 
     // action button actions
 
+    // enable perm edit mode
+    $('#action-enable-perm-edit')
+        .click(function(event) {
+            event.preventDefault();
+            const enabled = $(this).attr('aria-checked') !== 'true';
+            $(this).attr('aria-checked', enabled);
+            localStorage.setItem('modal-perm-edit-mode', enabled);
+        });
+
     // reset
     $('#action-reset')
         .click(function(event) {
index 34915bb7b89bad22901cdc629d68c3a4535dde59..5964b5e58f536879ad0ccaf5ffdad15c7b08f1bd 100644 (file)
@@ -1971,12 +1971,12 @@ a.controller {
   list-style: none;
 }
 
-.dropdown-content [role="menuitem"],
+.dropdown-content [role^="menuitem"],
 .dropdown-content [role="option"],
 .dropdown-content li > div {
   display: block;
   box-sizing: border-box;
-  padding: 2px 16px;
+  padding: 2px 8px 2px 24px;
   width: 100%;
   color: #555;
   line-height: 1.5;
@@ -1984,17 +1984,17 @@ a.controller {
   background: none transparent;
 }
 
-.dropdown-content [role="menuitem"],
+.dropdown-content [role^="menuitem"],
 .dropdown-content [role="option"] {
   outline: 0;
   text-decoration: none;
   cursor: pointer;
 }
 
-.dropdown-content [role="menuitem"]:hover,
-.dropdown-content [role="menuitem"]:focus,
-.dropdown-content [role="menuitem"]:active,
-.dropdown-content [role="menuitem"].active,
+.dropdown-content [role^="menuitem"]:hover,
+.dropdown-content [role^="menuitem"]:focus,
+.dropdown-content [role^="menuitem"]:active,
+.dropdown-content [role^="menuitem"].active,
 .dropdown-content [role="option"]:hover,
 .dropdown-content [role="option"]:focus,
 .dropdown-content [role="option"]:active,
@@ -2003,7 +2003,7 @@ a.controller {
   background-color: rgba(0, 0, 0, .1) !important;
 }
 
-.dropdown-content button[role="menuitem"] {
+.dropdown-content button[role^="menuitem"] {
   -moz-appearance: none;
   -webkit-appearance: none;
   appearance: none;
@@ -2015,10 +2015,20 @@ a.controller {
   text-align: left;
 }
 
-.dropdown-content button[role="menuitem"]::-moz-focus-inner {
+.dropdown-content button[role^="menuitem"]::-moz-focus-inner {
   border: 0;
 }
 
+.dropdown-content [role="menuitemcheckbox"][aria-checked="true"]::before {
+  display: inline-block;
+  content: '\E5CA';
+  font-size: 18px;
+  line-height: 1;
+  font-family: 'Material Icons';
+  vertical-align: text-bottom;
+  text-indent: -20px;
+}
+
 .dropdown-content [role="separator"] {
   height: 0;
   margin: 4px 0 !important;