Skip to content

Commit 3ba6f70

Browse files
committed
fix init
1 parent 7c7377e commit 3ba6f70

3 files changed

Lines changed: 28 additions & 21 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
<!-- Version & License -->
1616
<a href="https://img.shields.io/badge/code%20style-WordPress-21759b/releases">
17-
<img alt="Version" src="https://img.shields.io/badge/version-1.0.3-blue.svg">
17+
<img alt="Version" src="https://img.shields.io/badge/version-1.0.4-blue.svg">
1818
</a>
1919
<a href="https://github.com/CodeCornTech/mu-cc-admin-popover-row-actions/blob/main/LICENSE">
2020
<img alt="License" src="https://img.shields.io/github/license/CodeCornTech/mu-cc-admin-popover-row-actions.svg">

mu-plugins/cc-admin-popover-row-actions.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* Plugin Name: CC Admin Popover Row Actions
55
* Plugin URI: https://github.com/CodeCornTech/mu-cc-admin-popover-row-actions
66
* Description: Converte le row-actions della WP List Table in un popover apribile dal badge ID , con flag bilaterali ( define + filter ) e asset singleton .
7-
* Version: 1.0.3
7+
* Version: 1.0.4
88
* Author: CodeCorn™
99
* Author URI: https://github.com/CodeCornTech
1010
* License: MIT
@@ -29,7 +29,7 @@ function cc_def(string $k, $v)
2929
}
3030

3131
/** @var non-empty-string $plugin_vers */
32-
$plugin_vers = '1.0.3';
32+
$plugin_vers = '1.0.4';
3333
/** @var non-empty-string $plugin_dir Percorso assoluto directory del plugin */
3434
$plugin_dir = __DIR__;
3535
/** @var non-empty-string $assets_path Path relativo degli assets dentro il plugin */

mu-plugins/codecorn/admin-popover-row-actions/assets/js/init.js

Lines changed: 25 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,19 @@
2525
var $table = $(opts.selectors.table);
2626
if (!$table.length) return;
2727

28+
function scopedTriggerSelector() {
29+
return String(opts.selectors.primaryCell || '')
30+
.split(',')
31+
.map(function (selector) {
32+
return selector.trim();
33+
})
34+
.filter(Boolean)
35+
.map(function (selector) {
36+
return selector + ' .cc-popover-trigger';
37+
})
38+
.join(', ');
39+
}
40+
2841
function closeOpenPopoversExcept($keepTd, focusBack) {
2942
$('.cc-popover[data-open="true"]').each(function () {
3043
var $pop = $(this);
@@ -44,21 +57,19 @@
4457
}
4558
});
4659
}
60+
61+
var triggerSelector = scopedTriggerSelector();
62+
63+
if (!triggerSelector) return;
64+
4765
// prebuild esistenti
4866
$table.find(opts.selectors.primaryCell).each(function () {
4967
NS.core.buildPopover($(this), opts);
5068
});
5169

52-
// toggle su click
53-
$table.on('click', opts.selectors.primaryCell + ' .cc-popover-trigger', function (e) {
54-
e.preventDefault();
55-
e.stopPropagation();
56-
NS.core.togglePopover($(this).closest('td'), undefined, opts);
57-
});
58-
59-
// click solo quando NON siamo in hover puro
70+
// click mode: solo quando NON siamo in hover puro
6071
if (opts.onHover !== true) {
61-
$table.on('click', opts.selectors.primaryCell + ' .cc-popover-trigger', function (e) {
72+
$table.on('click', triggerSelector, function (e) {
6273
e.preventDefault();
6374
e.stopPropagation();
6475

@@ -69,22 +80,17 @@
6980
});
7081
}
7182

72-
// hover puro: sfioro apre, uscita riga chiude.
73-
// Se sfiori un altro target, quello aperto prima si chiude subito.
83+
// hover puro: sfioro apre, click resta link naturale
7484
if (opts.onHover === true) {
7585
$table
76-
.on('mouseenter', opts.selectors.primaryCell + ' .cc-popover-trigger', function () {
86+
.on('mouseenter', triggerSelector, function () {
7787
var $td = $(this).closest('td');
7888

7989
closeOpenPopoversExcept($td, false);
8090
NS.core.togglePopover($td, true, opts, { noFocus: true });
8191
})
82-
.on('mouseleave', 'tr', function () {
83-
var $td = $(this).find(opts.selectors.primaryCell).first();
84-
85-
if ($td.length) {
86-
NS.core.togglePopover($td, false, opts, { noFocus: true });
87-
}
92+
.on('mouseleave', opts.selectors.primaryCell, function () {
93+
NS.core.togglePopover($(this), false, opts, { noFocus: true });
8894
});
8995
}
9096

@@ -93,6 +99,7 @@
9399
if ($(e.target).closest('.cc-popover, .cc-popover-trigger').length) {
94100
return;
95101
}
102+
96103
closeOpenPopoversExcept(null, false);
97104
});
98105

0 commit comments

Comments
 (0)