Revision: 1758
          http://geeqie.svn.sourceforge.net/geeqie/?rev=1758&view=rev
Author:   nadvornik
Date:     2009-06-21 13:28:02 +0000 (Sun, 21 Jun 2009)

Log Message:
-----------
fixed jumping of filelist on focus_in event

Modified Paths:
--------------
    trunk/src/layout_image.c
    trunk/src/layout_image.h

Modified: trunk/src/layout_image.c
===================================================================
--- trunk/src/layout_image.c    2009-06-21 12:39:58 UTC (rev 1757)
+++ trunk/src/layout_image.c    2009-06-21 13:28:02 UTC (rev 1758)
@@ -595,7 +595,7 @@
        if (i < MAX_SPLIT_IMAGES)
                {
                DEBUG_1("dnd image activate %d", i);
-               layout_image_activate(lw, i);
+               layout_image_activate(lw, i, FALSE);
                }
 
 
@@ -1335,7 +1335,7 @@
        if (i != -1)
                {
                DEBUG_1("image activate focus_in %d", i);
-               layout_image_activate(lw, i);
+               layout_image_activate(lw, i, FALSE);
                }
 }
 
@@ -1377,7 +1377,7 @@
        if (i != -1)
                {
                DEBUG_1("image activate scroll %d", i);
-               layout_image_activate(lw, i);
+               layout_image_activate(lw, i, FALSE);
                }
 
 
@@ -1467,7 +1467,7 @@
 
        if (i != -1)
                {
-               layout_image_activate(lw, i);
+               layout_image_activate(lw, i, FALSE);
                }
 
        switch (event->button)
@@ -1493,7 +1493,7 @@
 
        if (i != -1)
                {
-               layout_image_activate(lw, i);
+               layout_image_activate(lw, i, FALSE);
                }
 
        /* continue as with active image */
@@ -1631,12 +1631,13 @@
        image_select(lw->split_images[i], FALSE);
 }
 
-
-void layout_image_activate(LayoutWindow *lw, gint i)
+/* force should be set after change of lw->split_mode */
+void layout_image_activate(LayoutWindow *lw, gint i, gboolean force)
 {
        FileData *fd;
 
        if (!lw->split_images[i]) return;
+       if (!force && lw->active_split_image == i) return;
 
        /* deactivate currently active */
        if (lw->active_split_image != i)
@@ -1743,13 +1744,13 @@
        
        if (!lw->image || lw->active_split_image < 0 || lw->active_split_image 
>= n)
                {
-               layout_image_activate(lw, 0);
+               layout_image_activate(lw, 0, TRUE);
                }
        else
                {
                /* this will draw the frame around selected image (image_select)
                   on switch from single to split images */
-               layout_image_activate(lw, lw->active_split_image);
+               layout_image_activate(lw, lw->active_split_image, TRUE);
                }
 }
 

Modified: trunk/src/layout_image.h
===================================================================
--- trunk/src/layout_image.h    2009-06-21 12:39:58 UTC (rev 1757)
+++ trunk/src/layout_image.h    2009-06-21 13:28:02 UTC (rev 1758)
@@ -15,7 +15,7 @@
 
 
 GtkWidget *layout_image_new(LayoutWindow *lw, gint i);
-void layout_image_activate(LayoutWindow *lw, gint i);
+void layout_image_activate(LayoutWindow *lw, gint i, gboolean force);
 GtkWidget *layout_image_setup_split_none(LayoutWindow *lw);
 GtkWidget *layout_image_setup_split_hv(LayoutWindow *lw, gboolean horizontal);
 GtkWidget *layout_image_setup_split(LayoutWindow *lw, ImageSplitMode mode);


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Are you an open source citizen? Join us for the Open Source Bridge conference!
Portland, OR, June 17-19. Two days of sessions, one day of unconference: $250.
Need another reason to go? 24-hour hacker lounge. Register today!
http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org
_______________________________________________
Geeqie-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geeqie-svn

Reply via email to