> On 2008-02-20 12:25:41, Matt Rogers wrote: > > Ok, so there are a couple of problems with this. > > > > 1. It uses a timer. You don't need a timer to do this. It should happen > > only as a user goes online or offline. Have the main window listen for > > status changes and act appropriately. > > > > 2. There are too many options for the user to fiddle with. The default size > > that the windows starts out at when you start Kopete without any > > configuration should be the minimum size of the window. The maximum size > > that it should be is the height of the screen minus the height of any > > panels, etc. The only configuration options we should have are whether to > > enable/disable the automatic resizing and how to anchor the window. > > Charles Connell wrote: > I believe that it is not a good idea to react at every sign-on/off event. > This could lead to very frequent resizes, since some people sign off and then > back on again all day long (at least some of my friends do). With a timer, it > would (theoretically) only resize once things have settled down. > > Adam Russell wrote: > I am no authority here, but may I suggest that a delay be added to the > sign-on/off event. In other words, start the timer during the sign-on/off > event. If any other sign-on/off events happen within the delay, restart the > timer. Trigger the automatic resizing at the end of this timer. This way, > there is no polling, and there is no back-to-back resizing.
I have taken your changes, Matt. A single shot timer counts from the last change to the contact list. (Unforunately had to use an ugly hack to detect that). Min and Max size options are gone, all done by Kopete behind the scenes. - Charles ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://mattr.info/r/171/#review158 ----------------------------------------------------------- On 2008-02-23 10:21:47, Charles Connell wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://mattr.info/r/171/ > ----------------------------------------------------------- > > (Updated 2008-02-23 10:21:47) > > > Review request for Kopete. > > > Summary > ------- > > This is a patch that resizes the main window automatically, so that it nicely > fits the size of the contact list tree. This is set up as an off-by-default > option. The user can specify a maximum size, so that it never gets bigger > than one's screen, and also a minimum size. > > The way this is done is by reevaluating the needed size for the contact list > every X seconds (once again, user may specify). The timer will not run if the > contact list is not maximized. Also, it will not resize if the user's cursor > is inside the main window, as this would likely cause undue frustration. > > Advantages: - Always a nicely presented main window. > - Keep up with feature sets in competitors (some of them already > have this). > > Disadvantages: - If window is visible to user, it is distracting to see it > resizing spontaneously. > - Repeatedly firing timer may interfere with sleep mechanisms > on systems. > - Repeatedly firing timer adds CPU usage to an otherwise idle > process. Bloat is BAD. > > Of course, this is all off by default, and even if the setting is enabled, it > only takes effect when the main window is maximized. > > > This addresses bug 154955. > > > Diffs > ----- > > > trunk/KDE/kdenetwork/kopete/kopete/config/appearance/appearanceconfig_advanced.ui > trunk/KDE/kdenetwork/kopete/kopete/kopetewindow.h > trunk/KDE/kdenetwork/kopete/kopete/kopetewindow.cpp > trunk/KDE/kdenetwork/kopete/libkopete/kopeteappearancesettings.kcfg > trunk/KDE/kdenetwork/kopete/libkopete/ui/kopetelistview.h > trunk/KDE/kdenetwork/kopete/libkopete/ui/kopetelistviewitem.h > trunk/KDE/kdenetwork/kopete/libkopete/ui/kopetelistviewitem.cpp > > Diff: http://mattr.info/r/171/diff > > > Testing > ------- > > works for me after during a few minutes of testing > > > Screenshots > ----------- > > Config options rev. 2 > http://mattr.info/r/171/s/19/ > > > Thanks, > > Charles > > _______________________________________________ kopete-devel mailing list [email protected] https://mail.kde.org/mailman/listinfo/kopete-devel
