I did see why the syntax error/TODO popups are never offscreen, though. I didn't get a chance to chase down the weird flashing behavior of the syntax error popups (which also affects TODO popups). That's what gives rise to the multiple visual issues that bothered me so much: the last javadoc popup fallback anchor is above the correct position, the folded-code popup fallback anchor is to the left of the correct position, etc.Ĭan somebody else take a look to confirm the three-line fix? Once it reaches the last fallback anchor it has no choice but to keep it. That forces the calling method, puteInformationControlLocation(), to iterate through all of its fallback anchors, calling updateLocation on each, which fail in turn. As it is now, if you have a popup or tooltip control show up on the secondary monitor in a dual monitor setup, updateLocation will always return false because of the predicate error above. Return location.x >= displayArea.x & location.y >= displayArea.y Ĭhanging this predicate in the three places it appears in updateLocation should fix things. Instead of checking to see if it's in the display area: Return (location.x >= 0 & location.y >= 0) Currently the code checks to see if the location (the lower left coord) of the control is on the main screen, i.e. The mistake is in the final predicate for each of the five anchor types, where the (potentially) updated location is checked to see if it is "useful". That method is passed a rectangle representing the display area (the union of the display areas of all monitors) which is used correctly for the most part. Looking at the 3.2M6 source: Tom is correct in comment 6, AbstractInformationControlManager.updateLocation doesn't account for negative offsets. I'm afraid I haven't gone to the source code and checked - have the implementations of these JDT specific tooltips/popups been affected by the architecture changes mentioned in bug 72374? Perhaps they shouldn't all be grouped into one bug? It mentions a tooltip that shows up in the center of the wrong monitor, which doesn't sound like either of the other two cases above. I wasn't able to duplicate bug 97560 as I don't have three monitors. They also are positioned too far to the left, see comment 24. In 3.2M4 and higher they aren't clipped, but they disappear after appearing for only a fraction of a second. Syntax error marker tooltips used to (pre 3.2M4) show up on the left of the icon, potentially getting clipped by the left edge of the left monitor if the editor was maximized. Note that folded-code popups are similar to the Quick Diff popups, in position and clipping. Quick Diff popups show up to the left of the line numbers on the left monitor instead of to the right like on the right monitor, potentially getting clipped by the left edge of the left monitor if the editor was maximized. For example, for a secondary on left, primary on right dual monitor setup: I've been trying out a number of the bugs listed as duplicates of this one on 3.2M6 on OS X 10.4.5 and I'm noticing that the bugs are still there but that they don't all exhibit the same symptoms.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |