mortdeus / wmii

Automatically exported from code.google.com/p/wmii
MIT License
0 stars 0 forks source link

xRandR: Inconsistent location for spawning clients #71

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
This may just simply have to do with xrandr/xinerama support being
incomplete, but when you spawn a client, it is inconsistent which screen it
decided to pop up on, depending on if there is a client there or not.

If there is a client on the second screen for example and the second screen
is selected, it will pop up there, if there is nothing on the second
screen, the client will run on the first screen

Original issue reported on code.google.com by adkilgore on 20 Oct 2008 at 7:02

GoogleCodeExporter commented 9 years ago
I am using wmii-hg2398

Original comment by adkilgore on 20 Oct 2008 at 7:03

GoogleCodeExporter commented 9 years ago
Managed clients open in the selected column, not matter which screen it's on, or
whether it has any clients in it.

Original comment by maglion...@gmail.com on 20 Oct 2008 at 7:16

GoogleCodeExporter commented 9 years ago
when you move the mouse to a different screen, should the focus move to that 
screen?
the only way i can make a client to pop up on the screen not containing the bar 
is by
moving the focus via the keyboard, and also this makes dmenu show up on the 
other
screen, is this intended? 

Also somewhere along there I was trying to understand the behavior a little 
bit, and
I got a segfault when trying to spawn firefox on the other screen

        c = (Client *) 0x9180df0
        f = (Frame *) 0x0
        fp = (Frame *) 0x0
        s = 0x916d536 "0x20000d3"
        stack = false
        i = 33554643
        dy = 2148609
#1  0x0805e561 in msg_selectarea (a=0x916d4d8, m=0xbfb5d418) at message.c:862
        f = (Frame *) 0x8079be0
        ap = (Area *) 0x1f
        v = (View *) 0x9179d90
        s = 0x916d52f "client"
        i = 152491304
        sym = 4
#2  0x0805da32 in message_view (v=0x9179d90, m=0xbfb5d418) at message.c:631
        a = (Area *) 0x17
        s = 0x916d528 "select"
#3  0x0806d233 in ixp_srv_writectl (r=0x91826b8, fn=0x805d8f0 <message_view>) at
srv_util.c:162
        err = 0x0
        s = 0x916d528 "select"
        p = 0x916d53f ""
        c = 0 '\0'
        f = (IxpFileId *) 0x916c70c
        m = {data = 0x916d528 "select", pos = 0x916d53f "", end = 0x916d53f "", size
= 23, mode = 0}
#4  0x080584be in fs_write (r=0x91826b8) at fs.c:553
        mf = (MsgFunc) 0x805d8f0 <message_view>
        f = (IxpFileId *) 0x916c70c
        errstr = 0x917a7f0 ""
        p = 0xbfb5d488 "�Ե�]�006\b�&\030\t\002"
        i = 2
#5  0x0806c15d in handlereq (r=0x91826b8) at request.c:311
        pc = (Ixp9Conn *) 0x91792e8
        srv = (Ixp9Srv *) 0x80797c0
#6  0x0806b97a in handlefcall (c=0x9181c18) at request.c:137
        fcall = {hdr = {type = 118 'v', tag = 0, fid = 2}, version = {hdr = {type =
118 'v', tag = 0, fid = 2}, msize = 0, version = 0x0}, tversion = {hdr = {
      type = 118 'v', tag = 0, fid = 2}, msize = 0, version = 0x0}, rversion = {hdr =
{type = 118 'v', tag = 0, fid = 2}, msize = 0, version = 0x0}, tflush = {hdr = {
      type = 118 'v', tag = 0, fid = 2}, oldtag = 0}, ropen = {hdr = {type = 118 'v',
tag = 0, fid = 2}, qid = {type = 0 '\0', version = 0, path = 
654945163604394008, 
      dir_type = 0 '\0'}, iounit = 0}, rcreate = {hdr = {type = 118 'v', tag = 0, fid
= 2}, qid = {type = 0 '\0', version = 0, path = 654945163604394008, 
      dir_type = 0 '\0'}, iounit = 0}, rattach = {hdr = {type = 118 'v', tag = 0, fid
= 2}, qid = {type = 0 '\0', version = 0, path = 654945163604394008, 
      dir_type = 0 '\0'}, iounit = 0}, error = {hdr = {type = 118 'v', tag = 0, fid =
2}, ename = 0x0}, rauth = {hdr = {type = 118 'v', tag = 0, fid = 2}, aqid = {
      type = 0 '\0', version = 0, path = 654945163604394008, dir_type = 0 '\0'}},
tattach = {hdr = {type = 118 'v', tag = 0, fid = 2}, afid = 0, uname = 0x0, 
    aname = 0x18 <Address 0x18 out of bounds>}, tauth = {hdr = {type = 118 'v', tag =
0, fid = 2}, afid = 0, uname = 0x0, aname = 0x18 <Address 0x18 out of bounds>}, 
  tcreate = {hdr = {type = 118 'v', tag = 0, fid = 2}, perm = 0, name = 0x0, mode =
24 '\030'}, topen = {hdr = {type = 118 'v', tag = 0, fid = 2}, perm = 0, 
    name = 0x0, mode = 24 '\030'}, twalk = {hdr = {type = 118 'v', tag = 0, fid = 2},
newfid = 0, nwname = 0, wname = {0x18 <Address 0x18 out of bounds>, 
      0x916d528 "select", 0x0 <repeats 14 times>}}, rwalk = {hdr = {type = 118 'v',
tag = 0, fid = 2}, nwqid = 0, wqid = {{type = 0 '\0', version = 24, 
        path = 152491304, dir_type = 0 '\0'}, {type = 0 '\0', version = 0, path = 0,
dir_type = 0 '\0'} <repeats 15 times>}}, twstat = {hdr = {type = 118 'v', tag = 
0, 
      fid = 2}, stat = {type = 0, dev = 0, qid = {type = 24 '\030', version =
152491304, path = 0, dir_type = 0 '\0'}, mode = 0, atime = 0, mtime = 0, length 
= 0, 
      name = 0x0, uid = 0x0, gid = 0x0, muid = 0x0}}, rstat = {hdr = {type = 118 'v',
tag = 0, fid = 2}, nstat = 0, stat = 0x0}, twrite = {hdr = {type = 118 'v', 
      tag = 0, fid = 2}, offset = 0, count = 24, data = 0x916d528 "select"}, rwrite =
{hdr = {type = 118 'v', tag = 0, fid = 2}, offset = 0, count = 24, 
    data = 0x916d528 "select"}, tread = {hdr = {type = 118 'v', tag = 0, fid = 2},
offset = 0, count = 24, data = 0x916d528 "select"}, rread = {hdr = {type = 118 
'v', 
      tag = 0, fid = 2}, offset = 0, count = 24, data = 0x916d528 "select"}, io =
{hdr = {type = 118 'v', tag = 0, fid = 2}, offset = 0, count = 24, 
    data = 0x916d528 "select"}}
        pc = (Ixp9Conn *) 0x91792e8
        req = (Ixp9Req *) 0x91826b8
#7  0x0806cc98 in handle_conns (s=0x807f1c0) at server.c:113
        c = (IxpConn *) 0x9181c18
        n = (IxpConn *) 0x9168908
#8  0x0806cdc9 in ixp_serverloop (s=0x807f1c0) at server.c:161
        tvp = (timeval *) 0x0
        tv = {tv_sec = 9, tv_usec = 948000}
        timeout = 0
        r = 1
#9  0x0805c47f in main (argc=0, argv=0xbfb5d898) at main.c:421
        m = {data = 0x0, pos = 0x0, end = 0x0, size = 3216371242, mode = 3085983854}
        oargv = (char **) 0xbfb5d894
        wmiirc = 0x8076a55 "wmiistartrc"
        s = 0xbfb5d7e8 ""
        i = 134522764
        _argtmp = 0
        _inargv = 0
        _argv = 0x0

Original comment by adkilgore on 20 Oct 2008 at 7:29

GoogleCodeExporter commented 9 years ago
I should clarify what i meant, suppose the screen that draws the bar has a 
couple
clients in it, and I move the mouse over to the other screen, should the 
clients on
the other screen remain selected?

Original comment by adkilgore on 20 Oct 2008 at 7:31

GoogleCodeExporter commented 9 years ago
I can reproduce this segfault consistently, I am going to make another report 
about it

Original comment by adkilgore on 20 Oct 2008 at 7:41