summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsabetts <sabetts>2001-10-11 18:02:57 +0000
committersabetts <sabetts>2001-10-11 18:02:57 +0000
commitaaffa46c3bb46d00484d934fea40233ab689f916 (patch)
treea233f4d7e8e58bc65396fb556e6cf738c8b97821
parenta3b74d6958b354593c73a601e014738c0de3e4a8 (diff)
downloadratpoison-aaffa46c3bb46d00484d934fea40233ab689f916.zip
fixed a raise request rudeness malady
-rw-r--r--ChangeLog5
-rw-r--r--NEWS5
-rw-r--r--src/events.c30
3 files changed, 23 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index f224cfa..a64a658 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-10-11 shawn <sabetts@vcn.bc.ca>
+
+ * src/events.c (configure_request): Always check the rudeness
+ level before honouring a raise request.
+
2001-10-09 shawn <sabetts@vcn.bc.ca>
* src/split.c (remove_frame): Make sure the frame attempting to
diff --git a/NEWS b/NEWS
index bb83025..9621a33 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,11 @@
ratpoison NEWS --- history of user-visible changes. -*- outline -*-
* Changes since 1.0.0
+** Raise requests don't change frame focus if rudeness doesn't allow it
+If a window in another frame requests to be raised, a message pops up
+just like everywhere else. The old behavior was to jump focus to the
+windows frame regardless of the rudeness.
+
** New windows formatting option %l
Prints a last access number. The higher the number, the more recently
the window was accessed.
diff --git a/src/events.c b/src/events.c
index dfd4f0b..1421b2d 100644
--- a/src/events.c
+++ b/src/events.c
@@ -258,28 +258,24 @@ configure_request (XConfigureRequestEvent *e)
{
/* Depending on the rudeness level, actually map the
window. */
- if (win->state == IconicState)
+ if ((rp_honour_transient_raise && win->transient)
+ || (rp_honour_normal_raise && !win->transient))
{
- if ((rp_honour_transient_raise && win->transient)
- || (rp_honour_normal_raise && !win->transient))
- {
- set_active_window (win);
- }
- else
- {
- if (win->transient)
- marked_message_printf (0, 0, MESSAGE_RAISE_TRANSIENT,
- win->number, window_name (win));
- else
- marked_message_printf (0, 0, MESSAGE_RAISE_WINDOW,
- win->number, window_name (win));
- }
+ if (win->state == IconicState)
+ set_active_window (win);
+ else if (find_windows_frame (win))
+ goto_window (win);
}
else
{
- if (find_windows_frame (win))
- goto_window (win);
+ if (win->transient)
+ marked_message_printf (0, 0, MESSAGE_RAISE_TRANSIENT,
+ win->number, window_name (win));
+ else
+ marked_message_printf (0, 0, MESSAGE_RAISE_WINDOW,
+ win->number, window_name (win));
}
+
}
PRINT_DEBUG("request CWStackMode %d\n", e->detail);