Revert "hide_search_from_many2many"

This commit is contained in:
Mohamed Eltayar 2025-09-02 15:08:35 +03:00 committed by GitHub
parent dbd94e2f3e
commit d0f6c64f57
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 12 additions and 34 deletions

View File

@ -162,6 +162,7 @@ odoo.define('fims_general_search_tree_view.list_search', function (require) {
}).then(function() { }).then(function() {
return self.update({}, {reload: false}); return self.update({}, {reload: false});
}).then(function() { }).then(function() {
// ✅ الإضافة البسيطة الوحيدة: إعادة Focus بعد الـ reload
setTimeout(function() { setTimeout(function() {
if (self.renderer && self.renderer.$) { if (self.renderer && self.renderer.$) {
var $input = self.renderer.$('.oe_search_input'); var $input = self.renderer.$('.oe_search_input');
@ -169,7 +170,7 @@ odoo.define('fims_general_search_tree_view.list_search', function (require) {
$input.focus(); $input.focus();
} }
} }
}, 100); }, 100); // تأخير بسيط للتأكد من اكتمال الـ rendering
}).finally(function() { }).finally(function() {
if (self.renderer) { if (self.renderer) {
self.renderer.$('.oe_search_loading').hide(); self.renderer.$('.oe_search_loading').hide();
@ -408,42 +409,19 @@ odoo.define('fims_general_search_tree_view.list_search', function (require) {
return false; return false;
} }
// **الحل الجديد المبني على view_type:** // الحل الدقيق الوحيد المؤكد:
try { // فحص الـ model state للـ ListRenderer
var controller = this.getParent(); var controller = this.getParent();
if (controller && controller.model && controller.handle) {
var state = controller.model.get(controller.handle);
// فحص 1: التحقق من action في الـ controller // إذا كان parentID موجود، فهذا يعني أن الـ list embedded داخل relational field
if (controller && controller.action) { if (state && state.parentID) {
var action = controller.action; return false; // لا نظهر البحث للـ embedded lists
// إذا كان view_type = 'list' فهو standalone
if (action.view_type === 'list') {
console.log('FIMS Search: Shown - view_type=list found');
return true;
}
// إذا كان view_mode يبدأ بـ 'list'
if (action.view_mode && action.view_mode.startsWith('list')) {
console.log('FIMS Search: Shown - view_mode starts with list');
return true;
}
} }
// فحص 2: التحقق من URL كـ backup
var url = window.location.hash;
if (url && url.includes('view_type=list')) {
console.log('FIMS Search: Shown - view_type=list found in URL');
return true;
}
// إذا لم نجد أي من المؤشرات أعلاه، فهو embedded
console.log('FIMS Search: Hidden - No list action detected');
return false;
} catch (error) {
console.warn('FIMS Search: Error detecting view type, defaulting to hidden', error);
return false;
} }
return true; // نظهر البحث للـ standalone lists فقط
}, },
_addCustomSearchBox: function() { _addCustomSearchBox: function() {