aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorokan2011-06-24 06:52:23 +0000
committerokan2011-06-24 06:52:23 +0000
commit3e6eeaaf087fe881587a1a4a685fb1e460e76914 (patch)
tree3be61b609e2b233e01e19ac5af16febb3d98d4d5
parentfeff015aa1ac96d5c2ef8cc9b6413f4aa8ed2b8a (diff)
downloadcwm-3e6eeaaf087fe881587a1a4a685fb1e460e76914.tar.gz
add 'normal' cursor and shuffle the others we use to make a bit more
sense and to be slightly less un-expected. from Alexander Polakov. re-use 'normal' cursor now instead XC_hand1 for menu selection. i really wish X had real docs and made sense. ok on earlier diff with '?' removed (but it's back now) oga@
Diffstat (limited to '')
-rw-r--r--calmwm.c23
-rw-r--r--calmwm.h8
-rw-r--r--menu.c4
3 files changed, 18 insertions, 17 deletions
diff --git a/calmwm.c b/calmwm.c
index 577ac8c..a519100 100644
--- a/calmwm.c
+++ b/calmwm.c
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: calmwm.c,v 1.55 2011/06/24 05:58:51 okan Exp $
+ * $OpenBSD: calmwm.c,v 1.56 2011/06/24 06:52:23 okan Exp $
*/
#include <sys/param.h>
@@ -35,11 +35,11 @@
Display *X_Dpy;
-Cursor Cursor_move;
-Cursor Cursor_resize;
-Cursor Cursor_select;
Cursor Cursor_default;
+Cursor Cursor_move;
+Cursor Cursor_normal;
Cursor Cursor_question;
+Cursor Cursor_resize;
struct screen_ctx_q Screenq = TAILQ_HEAD_INITIALIZER(Screenq);
struct client_ctx_q Clientq = TAILQ_HEAD_INITIALIZER(Clientq);
@@ -120,6 +120,12 @@ x_setup(void)
struct keybinding *kb;
int i;
+ Cursor_default = XCreateFontCursor(X_Dpy, XC_X_cursor);
+ Cursor_move = XCreateFontCursor(X_Dpy, XC_fleur);
+ Cursor_normal = XCreateFontCursor(X_Dpy, XC_left_ptr);
+ Cursor_question = XCreateFontCursor(X_Dpy, XC_question_arrow);
+ Cursor_resize = XCreateFontCursor(X_Dpy, XC_bottom_right_corner);
+
for (i = 0; i < ScreenCount(X_Dpy); i++) {
sc = xcalloc(1, sizeof(*sc));
x_setupscreen(sc, i);
@@ -132,12 +138,6 @@ x_setup(void)
*/
TAILQ_FOREACH(kb, &Conf.keybindingq, entry)
conf_grab(&Conf, kb);
-
- Cursor_move = XCreateFontCursor(X_Dpy, XC_fleur);
- Cursor_resize = XCreateFontCursor(X_Dpy, XC_bottom_right_corner);
- Cursor_select = XCreateFontCursor(X_Dpy, XC_hand1);
- Cursor_default = XCreateFontCursor(X_Dpy, XC_X_cursor);
- Cursor_question = XCreateFontCursor(X_Dpy, XC_question_arrow);
}
static void
@@ -179,11 +179,12 @@ x_setupscreen(struct screen_ctx *sc, u_int which)
xu_setwmname(sc);
+ rootattr.cursor = Cursor_normal;
rootattr.event_mask = ChildMask|PropertyChangeMask|EnterWindowMask|
LeaveWindowMask|ColormapChangeMask|ButtonMask;
XChangeWindowAttributes(X_Dpy, sc->rootwin,
- CWEventMask, &rootattr);
+ CWEventMask|CWCursor, &rootattr);
/* Deal with existing clients. */
XQueryTree(X_Dpy, sc->rootwin, &w0, &w1, &wins, &nwins);
diff --git a/calmwm.h b/calmwm.h
index bb6aa86..7f25c61 100644
--- a/calmwm.h
+++ b/calmwm.h
@@ -15,7 +15,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: calmwm.h,v 1.132 2011/06/24 06:09:26 okan Exp $
+ * $OpenBSD: calmwm.h,v 1.133 2011/06/24 06:52:23 okan Exp $
*/
#ifndef _CALMWM_H_
@@ -473,11 +473,11 @@ char *xstrdup(const char *);
/* Externs */
extern Display *X_Dpy;
-extern Cursor Cursor_move;
-extern Cursor Cursor_resize;
-extern Cursor Cursor_select;
extern Cursor Cursor_default;
+extern Cursor Cursor_move;
+extern Cursor Cursor_normal;
extern Cursor Cursor_question;
+extern Cursor Cursor_resize;
extern struct screen_ctx_q Screenq;
extern struct client_ctx_q Clientq;
diff --git a/menu.c b/menu.c
index b2f980c..7987100 100644
--- a/menu.c
+++ b/menu.c
@@ -16,7 +16,7 @@
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
* OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*
- * $OpenBSD: menu.c,v 1.27 2011/05/11 13:53:51 okan Exp $
+ * $OpenBSD: menu.c,v 1.28 2011/06/24 06:52:23 okan Exp $
*/
#include <sys/param.h>
@@ -405,7 +405,7 @@ menu_handle_move(XEvent *e, struct menu_ctx *mc, struct screen_ctx *sc)
XFillRectangle(X_Dpy, sc->menuwin, sc->gc, 0,
font_height(sc) * mc->prev, mc->width, font_height(sc));
if (mc->entry != -1) {
- xu_ptr_regrab(MenuGrabMask, Cursor_select);
+ xu_ptr_regrab(MenuGrabMask, Cursor_normal);
XFillRectangle(X_Dpy, sc->menuwin, sc->gc, 0,
font_height(sc) * mc->entry, mc->width, font_height(sc));
} else