From 96d19be19978f500aa317a5157a9572536843f67 Mon Sep 17 00:00:00 2001 From: Vadim Lopatin Date: Mon, 26 Jan 2015 17:35:03 +0300 Subject: [PATCH] support exact filename in file filter; fix action dispatching when no focus --- src/dlangui/core/files.d | 7 ++++--- src/dlangui/platforms/common/platform.d | 2 ++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/dlangui/core/files.d b/src/dlangui/core/files.d index aee21ce8..0c131f13 100644 --- a/src/dlangui/core/files.d +++ b/src/dlangui/core/files.d @@ -156,14 +156,15 @@ string parentDir(string path) { return buildNormalizedPath(path, ".."); } -/// check filename with pattern (currently only *.ext pattern is supported) +/// check filename with pattern (currently only *.ext, *.* and filename.ext patterns are supported) bool filterFilename(string filename, string pattern) { if (pattern.equal("*.*")) return true; // matches any if (pattern.length < 3) return false; - if (pattern[0] != '*' || pattern[1] != '.') - return false; + if (pattern[0] != '*' || pattern[1] != '.') { + return filename.baseName.equal(pattern); + } return filename.endsWith(pattern[1..$]); } diff --git a/src/dlangui/platforms/common/platform.d b/src/dlangui/platforms/common/platform.d index ab161591..b28b1e3d 100644 --- a/src/dlangui/platforms/common/platform.d +++ b/src/dlangui/platforms/common/platform.d @@ -515,6 +515,8 @@ class Window { return true; focus = focus.parent; } + if (_mainWidget) + return _mainWidget.handleAction(action); return false; }