This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch master
in repository e16.
View the commit online.
commit c7480a9a166dcbcd7e6e804d27c1d683e99aa841
Author: Kim Woelders <[email protected]>
AuthorDate: Fri Jul 10 14:16:23 2026 +0200
De-iconify windows demanding attention
Patch by Pavel Sanda.
---
docs/e16.asc | 2 ++
src/E.h | 1 +
src/ewins.c | 3 +++
src/mod-misc.c | 1 +
src/settings.c | 8 ++++++++
5 files changed, 15 insertions(+)
diff --git a/docs/e16.asc b/docs/e16.asc
index 616b5d4c..52d2e168 100644
--- a/docs/e16.asc
+++ b/docs/e16.asc
@@ -1122,6 +1122,8 @@ misc.testing.no_sync_mask = 0
# [bool] Save configuration changes
misc.autosave = 1
+# [bool] De-iconify windows when they demand attention (urgency hint)
+misc.deiconify_on_attention = 0
# [bool] Keep memory usage down (should probably always be 1)
misc.memory_paranoia = 1
# [bool] Use save-unders when appropriate
diff --git a/src/E.h b/src/E.h
index 2c7fc454..f82d510e 100644
--- a/src/E.h
+++ b/src/E.h
@@ -315,6 +315,7 @@ typedef struct {
} testing;
char autosave;
+ char deiconify_on_attention;
char memory_paranoia;
char save_under;
} EConf;
diff --git a/src/ewins.c b/src/ewins.c
index 2feff8ac..92afde62 100644
--- a/src/ewins.c
+++ b/src/ewins.c
@@ -2172,6 +2172,9 @@ EwinChangesProcess(EWin *ewin)
{
HintsSetWindowState(ewin);
PagersHandleAttention(ewin);
+ if (!Mode.wm.startup && Conf.deiconify_on_attention &&
+ ewin->state.attention && ewin->state.iconified)
+ EwinDeIconify(ewin);
}
EWinChanges.flags = 0;
diff --git a/src/mod-misc.c b/src/mod-misc.c
index 872f0f33..01c36e1a 100644
--- a/src/mod-misc.c
+++ b/src/mod-misc.c
@@ -223,6 +223,7 @@ static const CfgItem MiscCfgItems[] = {
CFG_ITEM_HEX(Conf, testing.no_sync_mask, 0),
CFG_ITEM_BOOL(Conf, autosave, 1),
+ CFG_ITEM_BOOL(Conf, deiconify_on_attention, 0),
CFG_ITEM_BOOL(Conf, memory_paranoia, 1),
CFG_ITEM_BOOL(Conf, save_under, 0),
};
diff --git a/src/settings.c b/src/settings.c
index a38cb4ce..f36b43f1 100644
--- a/src/settings.c
+++ b/src/settings.c
@@ -491,6 +491,7 @@ typedef struct {
char dialog_headers;
char button_image;
char animate_startup;
+ char deiconify_attention;
int magwin_zoom_res;
} MiscDlgData;
@@ -502,6 +503,7 @@ _DlgApplyMisc(Dialog *d, int val __UNUSED__, void *data __UNUSED__)
Conf.dialogs.headers = dd->dialog_headers;
Conf.dialogs.button_image = dd->button_image;
Conf.startup.animate = dd->animate_startup;
+ Conf.deiconify_on_attention = dd->deiconify_attention;
Conf.magwin.zoom_res = dd->magwin_zoom_res;
autosave();
@@ -516,6 +518,7 @@ _DlgFillMisc(Dialog *d, DItem *table, void *data __UNUSED__)
dd->dialog_headers = Conf.dialogs.headers;
dd->button_image = Conf.dialogs.button_image;
dd->animate_startup = Conf.startup.animate;
+ dd->deiconify_attention = Conf.deiconify_on_attention;
dd->magwin_zoom_res = Conf.magwin.zoom_res;
DialogItemTableSetOptions(table, 2, 0, 0, 0);
@@ -540,6 +543,11 @@ _DlgFillMisc(Dialog *d, DItem *table, void *data __UNUSED__)
DialogItemSetText(di, _("Enable sliding startup windows"));
DialogItemCheckButtonSetPtr(di, &dd->animate_startup);
+ di = DialogAddItem(table, DITEM_CHECKBUTTON);
+ DialogItemSetColSpan(di, 2);
+ DialogItemSetText(di, _("De-iconify windows demanding attention"));
+ DialogItemCheckButtonSetPtr(di, &dd->deiconify_attention);
+
di = DialogAddItem(table, DITEM_SEPARATOR);
DialogItemSetColSpan(di, 2);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.