kdevelop speed drop
Roland Krause
rokrau at yahoo.com
Fri May 18 14:32:49 UTC 2001
Falk,
so it turns out that there are two different events!
Can't the MDI framework distiguish between a temporary focus and a real
focus in event? And then emit different signals?
Hmm, I think the current cvs is stable enough for work again, so we
might as well go about that sometime next week.
Enjoy your weekend
Roland
--- "F at lk Brettschneider" <gigafalk at yahoo.com> wrote:
> Hi,
>
> Roland Krause wrote:
> >
> > Falk,
> > it's perfectly clear to me what you are trying to accomplish.
> > But I think checking for whether the file is already open should be
> the
> > way to go instead of checking whether it "has_focus".
> >
> > The problem with yesterdays fix was, that if the file "gets focus"
> it
> > then "has focus" when you enter docViewManager::slot_gotFocus(),
> > therefore your fix would kick in every time, even the very first
> time.
> >
> > So I believe there should not be a fix, instead and architectural
> > change.
> Oops. I don't think so. :)
>
> > If certain things have to be set only the first time a view is
> > opened the so be it. The slot_gotFocus() methods seems to be the
> wrong
> > place to call them.
> >
> > Also, I still can not see what this all has to do with the menu?
> Wandering through the mainmenu triggers a FocusOut (when popping up)
> and
> FocusIn (when leaving the popupmenu) to the last focused widget (the
> current MDI view) with every opened popupmenu there.
> The FocusIn event is a central point in QextMDI.
> QextMdiChildView::focusInEvent is called which does internal things
> of
> QextMDI (taskbar, view state changes) and then it triggers the
> gotFocus() signal to the outside world. DocViewMan connected the
> signal
> gotFocus() with his slot_GotFocus(). Slot_gotFocus(..) calls also
> CKDevelop::slotViewSelected(..), a lot of things (concerning to
> switching views) happen in these both slots of KDevelop (for instance
> the update of the state of the toolbar buttons)
>
> Well, a real focus change (means: a _real_switch_ to another view)
> needs
> to call all the stuff I wrote above. A fact.
> But we don't need to call all of them on each and every FocusIn, for
> instance just when a simple mouse click has happened or we are
> temporary
> showing popmenus.
> That was is what I'm trying to do at the moment. I think, the last
> two
> commits didn't changed much. An FocusIn event still calls always
> DocViewMan::slot_gotFocus(..). :-( At first I thought I got it but
> then
> I found situations which show the opposite... I believe a fix for the
> emit of gotFocus() in QextMdiChildFrm::activate() is still necessary,
> probably a little thing to change there...
>
> This weekend I'm off, I'll look into that again later then.
>
> Cheers,
> F at lk
>
>
> >
> > Roland
> >
> > --- "F at lk Brettschneider" <gigafalk at yahoo.com> wrote:
> > > Roland Krause wrote:
> > > >
> > > > Falk,
> > > > after we talked on IRC I started real testing. There are lots
> of
> > > > problems w/this fix. Windows that get focus dont get real focus
> > > from
> > > > the program, the results is that I can only search in a view
> that
> > > > initially has focus, when I focus another view, keyboard
> > > accelerators
> > > > are not available neither are menu functions, so there is not
> undo
> > > and
> > > > stuff. After a while KDevelop crashes.
> > > Sch*iße. :-(
> > >
> > > But it's definitely the reason for the slowdown (I think jbb just
> > > forgot
> > > to call 'make install' ;). It takes quite a long time to compute
> all
> > > the
> > > stuff you wrote about above, that's why the delay on a flood of
> focus
> > > changes like when wandering through the mainmenu. Fortunately, my
> bad
> > > commit was _after_ the alpha2 tag of KDE.
> > > I've converted it back in CVS and will try to prevent
> slot_gotFocus
> > > already in QextMDI _before_ we are pending in a focus change
> where an
> > > escape is fatal. Clear? ..anyway. ;-)
>
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
>
>
> -
> to unsubscribe from this list send an email to
> kdevelop-devel-request at kdevelop.org with the following body:
> unsubscribe »your-email-address«
=====
--
Roland Krause
In the garage of life there are mechanics and
there are drivers. Mechanics wanted!
__________________________________________________
Do You Yahoo!?
Yahoo! Auctions - buy the things you want at great prices
http://auctions.yahoo.com/
-
to unsubscribe from this list send an email to kdevelop-devel-request at kdevelop.org with the following body:
unsubscribe »your-email-address«
More information about the KDevelop-devel
mailing list