summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xrdb.c4
-rw-r--r--src/xterm.c14
2 files changed, 16 insertions, 2 deletions
diff --git a/src/xrdb.c b/src/xrdb.c
index e3a1fcb15a9..3d7f715c88f 100644
--- a/src/xrdb.c
+++ b/src/xrdb.c
@@ -289,9 +289,9 @@ get_user_app (const char *class)
/* Check in the home directory. This is a bit of a hack; let's
hope one's home directory doesn't contain ':' or '%'. */
char const *home = get_homedir ();
- db = search_magic_path (home, class, "%L/%N");
+ db = search_magic_path (home, class, "/%L/%N");
if (! db)
- db = search_magic_path (home, class, "%N");
+ db = search_magic_path (home, class, "/%N");
}
return db;
diff --git a/src/xterm.c b/src/xterm.c
index 6340700cb89..2a99c469276 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -8760,6 +8760,20 @@ handle_one_xevent (struct x_display_info *dpyinfo,
goto OTHER;
case FocusIn:
+ /* Some WMs (e.g. Mutter in Gnome Shell), don't unmap
+ minimized/iconified windows; thus, for those WMs we won't get
+ a MapNotify when unminimizing/deconifying. Check here if we
+ are deconizing a window (Bug42655). */
+ f = any;
+ if (f && FRAME_ICONIFIED_P (f))
+ {
+ SET_FRAME_VISIBLE (f, 1);
+ SET_FRAME_ICONIFIED (f, false);
+ f->output_data.x->has_been_visible = true;
+ inev.ie.kind = DEICONIFY_EVENT;
+ XSETFRAME (inev.ie.frame_or_window, f);
+ }
+
x_detect_focus_change (dpyinfo, any, event, &inev.ie);
goto OTHER;