Under FreeBSD (or kFreeBSD for that matter) there is, like with Linux, some code to switch back to the VT from which the X server was launched. Itβs at hw/xfree86/os-support/bsd/bsd_init.c:683: if (initialVT != -1) ioctl(xf86Info.consoleFd, VT_ACTIVATE, initialVT); This code is useful when you start X from a console, but it becomes obnoxious when run from a display manager, causing unwanted and uncontrolled VT switches when you change users. Under Linux it can be disabled using the -novtswitch option, but it is not implemented with FreeBSD. It would be nice to be able to rely on a sane VT switching behavior on FreeBSD too (and I guess that would fix the other BSDs as well).
Patch crafted against 1.10.2rc1, tested on a GNU/kFreeBSD VM, sent to xorg-devel@ for review: | Subject: [PATCH] bsd: Add support for -novtswitch. http://lists.x.org/archives/xorg-devel/2011-May/thread.html Mraw, KiBi.
Looks like we failed to close this bug when the patches landed: https://cgit.freedesktop.org/xorg/xserver/commit/?id=93abda6bddf770dbfc3d4d0ada61ea84a7b7b9be https://cgit.freedesktop.org/xorg/xserver/commit/?id=a00dc6af6e84d0bee3f69d8df89d7f68cb535d35
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.