From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23380 invoked by alias); 4 Aug 2014 15:30:45 -0000 Mailing-List: contact cygwin-xfree-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-xfree-owner@cygwin.com Reply-To: cygwin-xfree@cygwin.com Mail-Followup-To: cygwin-xfree@cygwin.com Received: (qmail 23368 invoked by uid 89); 4 Aug 2014 15:30:44 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.6 required=5.0 tests=AWL,BAYES_05,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 X-HELO: smtpout03.bt.lon5.cpcloud.co.uk Received: from smtpout03.bt.lon5.cpcloud.co.uk (HELO smtpout03.bt.lon5.cpcloud.co.uk) (65.20.0.123) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 04 Aug 2014 15:30:42 +0000 X-CTCH-RefID: str=0001.0A090201.53DFA71F.01F7,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0 X-Junkmail-Premium-Raw: score=8/97,refid=2.7.2:2014.8.4.113319:17:8.317,ip=,rules=__MOZILLA_MSGID, __HAS_MSGID, __SANE_MSGID, __HAS_FROM, __HAS_REPLYTO, __USER_AGENT, __MOZILLA_USER_AGENT, __MIME_VERSION, __TO_MALFORMED_2, __TO_NO_NAME, __BOUNCE_CHALLENGE_SUBJ, __BOUNCE_NDR_SUBJ_EXEMPT, __SUBJ_ALPHA_END, __IN_REP_TO, __CT, __CT_TEXT_PLAIN, __CTE, __ANY_URI, __URI_NO_MAILTO, __URI_NO_WWW, __CP_URI_IN_BODY, __INT_PROD_COMP, __SUBJ_ALPHA_NEGATE, __FORWARDED_MSG, BODYTEXTP_SIZE_3000_LESS, BODY_SIZE_2000_2999, __MIME_TEXT_ONLY, __URI_NS, HTML_00_01, HTML_00_10, BODY_SIZE_5000_LESS, REPLYTO_FROM_DIFF_ADDY, BODY_SIZE_7000_LESS X-CTCH-Spam: Unknown Received: from [192.168.1.93] (86.179.19.43) by smtpout03.bt.lon5.cpcloud.co.uk (8.6.100.99.10223) (authenticated as jonturney@btinternet.com) id 53B8577400DFEA96; Mon, 4 Aug 2014 16:30:39 +0100 Message-ID: <53DFA71C.4060809@dronecode.org.uk> Date: Mon, 04 Aug 2014 15:30:00 -0000 From: Jon TURNEY Reply-To: cygwin-xfree@cygwin.com User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: cygwin-xfree@cygwin.com CC: matt@codespunk.com Subject: Re: XWin cursor huge on one computer but normal on another References: <53DE4801.3040209@codespunk.com> In-Reply-To: <53DE4801.3040209@codespunk.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2014-08/txt/msg00003.txt.bz2 On 03/08/2014 15:32, Matt D. wrote: > I primarily work on my workstation which has four 1080p monitors (three > on the bottom with the fourth at center top) and for the longest time I > thought that it this was a configuration error on my part; and perhaps > it still it. > > The issue is that on my worksation, the cursor is huge and is sometimes > even cropped for being too large. This is especially noticeable for > applications like xterm and gedit. > > I think it might be a DPI or scaling issue due to my large screen size, > however I've always explicitly defined "-dpi 96" in my xinit. > > I had thought that this was a known bug and hadn't thought much about it > until I pulled up gedit on my laptop where I saw that the cursors were > all fine. I thought that maybe I had different packages but even after > copying my entire cygwin directory and startup scripts over, on my > laptop it still shows cursors no larger than the default Windows size. > > Has anyone experienced this before? This is pretty odd. Not a known bug, or one that I think we have a had reported before. I guess what you are seeing when you say the cursor is 'cropped' is the X cursor being truncated to fit in the Windows cursor size of GetSystemMetrics(SM_CXCURSOR) by GetSystemMetrics(SM_CYCURSOR) The libXcursor checks various things [1] when choosing a cursor size, falling back to (smallest screen dimension/48), so I guess it's your large display causing this issue. I'm not sure about the best way to fix this, but as a workaround for the moment, you might try setting the XCURSOR_SIZE env var to something reasonable. You might like to try this small test program to confirm what's going on: $ cat cursor.c #include #include int main() { Display *dpy = XOpenDisplay(NULL); int c = XcursorGetDefaultSize(dpy); printf("XcursorGetDefaultSize = %d\n", c); printf("GetSystemMetrics(SM_CXCURSOR) = %d\n", GetSystemMetrics(SM_CXCURSOR)); printf("GetSystemMetrics(SM_CYCURSOR) = %d\n", GetSystemMetrics(SM_CYCURSOR)); } $ gcc cursor.c -o cursor -lXcursor -lX11 $ ./cursor XcursorGetDefaultSize = 22 GetSystemMetrics(SM_CXCURSOR) = 32 GetSystemMetrics(SM_CYCURSOR) = 32 [1] http://cgit.freedesktop.org/xorg/lib/libXcursor/tree/src/display.c#n168 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/