adium 4249:e51bdc902644: Solve a number of lingering rounding er...
commits at adium.im
commits at adium.im
Tue Oct 25 00:45:43 UTC 2011
details: http://hg.adium.im/adium/rev/e51bdc902644
revision: 4249:e51bdc902644
branch: (none)
author: Stephen Holt <sholt at adium.im>
date: Mon Oct 24 17:45:32 2011 -0700
Solve a number of lingering rounding errors from our 64-bit conversion. Patches up a number of UI off-by-one-pixel errors.
Subject: adium 4250:c7060e64e8e8: Fix alignment issues in MEssageView.xib. There is a 2px top margin that still needs fixing. Refs #15560.
details: http://hg.adium.im/adium/rev/c7060e64e8e8
revision: 4250:c7060e64e8e8
branch: (none)
author: Stephen Holt <sholt at adium.im>
date: Mon Oct 24 17:45:35 2011 -0700
Fix alignment issues in MEssageView.xib. There is a 2px top margin that still needs fixing. Refs #15560.
diffs (249 lines):
diff -r 98a935cdba2d -r c7060e64e8e8 Plugins/Dual Window Interface/AIMessageViewController.m
--- a/Plugins/Dual Window Interface/AIMessageViewController.m Mon Oct 24 21:22:56 2011 +0200
+++ b/Plugins/Dual Window Interface/AIMessageViewController.m Mon Oct 24 17:45:35 2011 -0700
@@ -779,7 +779,7 @@
//User's choice of mininum height for their text entry view
entryMinHeight = [[adium.preferenceController preferenceForKey:KEY_ENTRY_TEXTVIEW_MIN_HEIGHT
group:PREF_GROUP_DUAL_WINDOW_INTERFACE] doubleValue];
- if (entryMinHeight <= 0) entryMinHeight = [self _textEntryViewProperHeightIgnoringUserMininum:YES];
+ if (entryMinHeight <= 0) entryMinHeight = AIfloor([self _textEntryViewProperHeightIgnoringUserMininum:YES] + 0.5f);
//Associate the view with our message view so it knows which view to scroll in response to page up/down
//and other special key-presses.
@@ -1287,7 +1287,7 @@
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(saveUserListMinimumSize) object:nil];
[self performSelector:@selector(saveUserListMinimumSize) withObject:nil afterDelay:0.5];
}
- } else if ([aNotification object] == splitView_textEntryHorizontal) {
+ } else if ([aNotification object] == splitView_textEntryHorizontal && [splitView_textEntryHorizontal inLiveResize]) {
entryMinHeight = NSHeight(textView_outgoing.frame);
}
}
@@ -1297,19 +1297,21 @@
*/
- (void)splitViewDidResizeSubviews:(NSNotification *)aNotification
{
- NSRect userListFrame = view_userList.frame;
- BOOL isVisible = NO;
- if (NSWidth(userListFrame) > 0) {
- //[view_userList setHidden:NO];
- [self updateUserCount];
- [userListController reloadData];
- isVisible = YES;
+ if ([aNotification object] == splitView_verticalSplit) {
+ NSRect userListFrame = view_userList.frame;
+ BOOL isVisible = NO;
+ if (NSWidth(userListFrame) > 0) {
+ //[view_userList setHidden:NO];
+ [self updateUserCount];
+ [userListController reloadData];
+ isVisible = YES;
+ }
+ [adium.preferenceController setPreference:[NSNumber numberWithBool:isVisible]
+ forKey:[KEY_USER_LIST_VISIBLE_PREFIX stringByAppendingFormat:@"%@.%@",
+ chat.account.internalObjectID,
+ chat.name]
+ group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
}
- [adium.preferenceController setPreference:[NSNumber numberWithBool:isVisible]
- forKey:[KEY_USER_LIST_VISIBLE_PREFIX stringByAppendingFormat:@"%@.%@",
- chat.account.internalObjectID,
- chat.name]
- group:PREF_GROUP_DUAL_WINDOW_INTERFACE];
}
/*
@@ -1324,21 +1326,23 @@
NSRect userFrame = view_userList.frame;
CGFloat dividerThickness = [splitView dividerThickness];
- if ([self userListVisible]) {
- if (userListOnRight)
- userFrame.size.width = currentFrame.size.width - [self _userListViewDividerPositionIgnoringUserMinimum:NO];
- else
- userFrame.size.width = [self _userListViewDividerPositionIgnoringUserMinimum:NO];
- }
- else
- userFrame.size.width = 0.0f;
-
- msgFrame.size.width = currentFrame.size.width - userFrame.size.width - dividerThickness;
+ msgFrame.size.width = AIfloor(currentFrame.size.width - userFrame.size.width - dividerThickness + 0.50f);
msgFrame.size.height = currentFrame.size.height;
userFrame.size.height = currentFrame.size.height;
- if (userListOnRight)
- userFrame.origin.x = msgFrame.size.width + dividerThickness;
+ if ([self userListVisible]) {
+ if (userListOnRight) {
+ userFrame.size.width = AIfloor(currentFrame.size.width - [self _userListViewDividerPositionIgnoringUserMinimum:NO] + 0.50f);
+ userFrame.origin.x = AIfloor(msgFrame.size.width + dividerThickness + 0.5f);
+ } else
+ userFrame.size.width = AIfloor([self _userListViewDividerPositionIgnoringUserMinimum:NO] + 0.50f);
+ }
+ else {
+ userFrame.size.width = AIfloor(0.5f);
+ if([view_userList isHidden]) {
+ msgFrame.size.width++;
+ }
+ }
[view_userList setFrame:userFrame];
[[splitView_textEntryHorizontal superview] setFrame:msgFrame];
@@ -1350,9 +1354,9 @@
textFrame.size.width = currentFrame.size.width;
msgFrame.size.width = currentFrame.size.width;
- msgFrame.size.height = currentFrame.size.height - textFrame.size.height - dividerThickness;
+ msgFrame.size.height = AIfloor(currentFrame.size.height - textFrame.size.height - dividerThickness + 0.50f);
- textFrame.origin.y = msgFrame.size.height + dividerThickness - 1;
+ textFrame.origin.y = AIfloor(msgFrame.size.height + dividerThickness);
[view_messages setFrame:msgFrame];
[[scrollView_textEntry superview] setFrame:textFrame];
@@ -1407,7 +1411,7 @@
if (userListOnRight)
return splitView_verticalSplit.frame.size.width;
else
- return 0.0f;
+ return 0;
}
}
@@ -1424,7 +1428,7 @@
{
if (splitView == splitView_textEntryHorizontal) {
//Max size of text entry view
- return splitView_textEntryHorizontal.frame.size.height * MESSAGE_VIEW_MIN_HEIGHT_RATIO;
+ return AIfloor(splitView_textEntryHorizontal.frame.size.height * MESSAGE_VIEW_MIN_HEIGHT_RATIO + 0.5f);
} else if (splitView == splitView_verticalSplit) {
//On the right: max size of user list
//On the left: min size of the user list
@@ -1437,7 +1441,7 @@
if (userListOnRight)
return splitView_verticalSplit.frame.size.width;
else
- return 0.0f;
+ return 0;
}
}
diff -r 98a935cdba2d -r c7060e64e8e8 Plugins/Dual Window Interface/MessageView.xib
--- a/Plugins/Dual Window Interface/MessageView.xib Mon Oct 24 21:22:56 2011 +0200
+++ b/Plugins/Dual Window Interface/MessageView.xib Mon Oct 24 17:45:35 2011 -0700
@@ -158,13 +158,13 @@
<object class="NSView" id="819870531">
<reference key="NSNextResponder" ref="916213062"/>
<int key="NSvFlags">274</int>
- <string key="NSFrameSize">{345, 263}</string>
+ <string key="NSFrameSize">{346, 264}</string>
<reference key="NSSuperview" ref="916213062"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="944644976"/>
+ <reference key="NSNextKeyView" ref="881321079"/>
</object>
</object>
- <string key="NSFrameSize">{345, 263}</string>
+ <string key="NSFrameSize">{346, 264}</string>
<reference key="NSSuperview" ref="60130733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="819870531"/>
@@ -205,17 +205,17 @@
<double key="NSPercent">0.50602412223815918</double>
</object>
</object>
- <string key="NSFrame">{{0, -1}, {345, 263}}</string>
+ <string key="NSFrameSize">{346, 264}</string>
<reference key="NSSuperview" ref="1034558317"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="881321079"/>
+ <reference key="NSNextKeyView" ref="916213062"/>
<int key="NSsFlags">133120</int>
<reference key="NSVScroller" ref="881321079"/>
<reference key="NSHScroller" ref="657097854"/>
<reference key="NSContentView" ref="916213062"/>
</object>
</object>
- <string key="NSFrameSize">{345, 261}</string>
+ <string key="NSFrameSize">{346, 261}</string>
<reference key="NSSuperview" ref="469967666"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="60130733"/>
@@ -242,12 +242,12 @@
<string key="NSFrameSize">{344, 18}</string>
<reference key="NSSuperview" ref="382054263"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="60271943"/>
+ <reference key="NSNextKeyView" ref="949636887"/>
<string key="NSClassName">AIMessageEntryTextView</string>
<string key="NSExtension">NSTextView</string>
</object>
</object>
- <string key="NSFrame">{{1, 1}, {345, 38}}</string>
+ <string key="NSFrame">{{1, 1}, {347, 37}}</string>
<reference key="NSSuperview" ref="1006380680"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="662114219"/>
@@ -278,24 +278,24 @@
<double key="NSPercent">0.90740740740740744</double>
</object>
</object>
- <string key="NSFrame">{{-1, -1}, {347, 40}}</string>
+ <string key="NSFrameSize">{349, 39}</string>
<reference key="NSSuperview" ref="944644976"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView" ref="949636887"/>
+ <reference key="NSNextKeyView" ref="382054263"/>
<int key="NSsFlags">133650</int>
<reference key="NSVScroller" ref="949636887"/>
<reference key="NSHScroller" ref="559917187"/>
<reference key="NSContentView" ref="382054263"/>
</object>
</object>
- <string key="NSFrame">{{0, 262}, {345, 38}}</string>
+ <string key="NSFrame">{{0, 262}, {346, 38}}</string>
<reference key="NSSuperview" ref="469967666"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1006380680"/>
<string key="NSClassName">NSView</string>
</object>
</object>
- <string key="NSFrame">{{-1, 0}, {345, 300}}</string>
+ <string key="NSFrameSize">{346, 300}</string>
<reference key="NSSuperview" ref="988585566"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1034558317"/>
@@ -303,7 +303,7 @@
<string key="NSAutosaveName">AdiumMessageView</string>
</object>
</object>
- <string key="NSFrameSize">{343, 300}</string>
+ <string key="NSFrameSize">{344, 300}</string>
<reference key="NSSuperview" ref="351509238"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="469967666"/>
@@ -325,7 +325,6 @@
<string key="NSFrame">{{35, 3}, {84, 14}}</string>
<reference key="NSSuperview" ref="561723111"/>
<reference key="NSWindow"/>
- <reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="864763355">
<int key="NSCellFlags">68288064</int>
@@ -562,14 +561,14 @@
<bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes>
</object>
</object>
- <string key="NSFrame">{{344, 0}, {135, 300}}</string>
+ <string key="NSFrame">{{345, 0}, {135, 300}}</string>
<reference key="NSSuperview" ref="351509238"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="652921259"/>
<string key="NSClassName">NSView</string>
</object>
</object>
- <string key="NSFrameSize">{479, 300}</string>
+ <string key="NSFrameSize">{480, 300}</string>
<reference key="NSSuperview" ref="465253647"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="988585566"/>
More information about the commits
mailing list