changeset 11620:fbc4eeab2227

[gaim-migrate @ 13894] this lets you leave a highlighted tab by control-tab (forward) or control-shift-tab (backwards). its not 100% intuitive though, because it leaves the tab highlighed, which means that in the case of 1 highlighted tab, the current one, you will leave the tab on the first control-tab, then immediately return to it on the second one. For this reason, removing the highlighting of current tabs would be a better permanent solution. In talking with Tim however, he suggested we do both, on the off chance we change our minds about the tab highlighting and go back to the autoswitching. committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Thu, 06 Oct 2005 15:01:08 +0000
parents de413ae71cba
children e0a61622a9f2
files src/gtkconv.c
diffstat 1 files changed, 9 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/gtkconv.c	Thu Oct 06 02:13:39 2005 +0000
+++ b/src/gtkconv.c	Thu Oct 06 15:01:08 2005 +0000
@@ -180,10 +180,12 @@
 	if (!GAIM_IS_GTK_CONVERSATION(conv))
 		return FALSE;
 
-	/* I find that I resize the window when it has a bunch of conversations in it, mostly so that the tab bar
-	 * will fit, but then I don't want new windows taking up the entire screen.  I check to see if there is only one
-	 * conversation in the window.  This way we'll be setting new windows to the size of the last resized new window. */
-	/* I think that the above justification is not the majority, and that the new tab resizing should negate it anyway.  --luke*/
+	/* I find that I resize the window when it has a bunch of conversations in it, mostly so that the
+	 * tab bar will fit, but then I don't want new windows taking up the entire screen.  I check to see
+	 * if there is only one conversation in the window.  This way we'll be setting new windows to the
+	 * size of the last resized new window. */
+	/* I think that the above justification is not the majority, and that the new tab resizing should
+	 * negate it anyway.  --luke */
 	if (gaim_conversation_get_type(conv) == GAIM_CONV_TYPE_IM)
 	{
 		if (w == gtkconv->imhtml) {
@@ -1608,7 +1610,7 @@
 	total = gaim_gtk_conv_window_get_gtkconv_count(win);
 
 	/* First check the tabs after (forward) or before (!forward) this position. */
-	for (i = index;
+	for (i = forward ? index + 1 : index - 1;
 		 !found && (next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i));
 		 forward ? i++ : i--) {
 		if (i == -1) {
@@ -1627,7 +1629,8 @@
 	if (!found) {
 		/* Now check from the beginning up to (forward) or end back to (!forward) this position. */
 		for (i = forward ? 0 : total - 1;
-			 !found && (forward ? i < index : i >= 0) && (next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i));
+			 !found && (forward ? i < index : i >= 0) &&
+			 (next_gtkconv = gaim_gtk_conv_window_get_gtkconv_at_index(win, i));
 			 forward ? i++ : i--) {
 			for (l = next_gtkconv->convs; l; l = forward ? l->next : l->prev) {
 				GaimConversation *c = l->data;