User forums > Using Code::Blocks

Code::Blocks slow as molasses

<< < (2/8) > >>

takeshimiya:
Ok, to know if it's a Scintilla bug or a Code::Blocks one, can you try using wyoEditor?
http://wxguide.sourceforge.net/editor.html

It's a text editor (like Kate), written in wxGTK and wxScintilla. You can't get closer than that :)

Pokemonster:
I have exactly the same problem, running C::B under Linux. The slowdown happens when editing big documents most of the time which is really anoying.
I tried wyoEditor and it works fine so this seems more like a general C::B problem. Disabling all the plugins didn't fix the problem either.

takeshimiya:
Mm.. I'm noticing some strange slowdown lately also (on windows), but most of times was the codecompletion plugin.

So it seems this will need further investigation.

Jorg:
I'm glad it isn't just me. Try to look in the area of copy / pasting and selections. That is where I noticed... I am now investigating issues under KDE, but I could not see it get slower there (yet).

Also try to "accidentally" drag the selection that is when I noticed some slowless .. might be a hint I don't know..

- Jorgen

rickg22:
I think I have a clue... after everything's slow, try selecting ONE character and copying it into the clipoard. Does the problem "go away"?

There's some code, I think, on the OnUpdateUI event handlers, that checked the status of the clipboard. Unfortunately this happens on *every* updateUI. I had added a safeguard for this function to prevent crashes on Linux, but it may still be bugging us. The suspect is in main.cpp, lines 2269 and following.


--- Code: ---    if(ed)
    {
        eolMode = ed->GetControl()->GetEOLMode();
        canUndo = ed->GetControl()->CanUndo();
        canRedo = ed->GetControl()->CanRedo();
        hasSel = (ed->GetControl()->GetSelectionStart() != ed->GetControl()->GetSelectionEnd());
#ifdef __WXGTK__
        canPaste = true;
#else
        canPaste = ed->GetControl()->CanPaste();
#endif
    }

    mbar->Enable(idEditUndo, ed && canUndo);
    mbar->Enable(idEditRedo, ed && canRedo);
    mbar->Enable(idEditCut, ed && hasSel);
    mbar->Enable(idEditCopy, ed && hasSel);
    mbar->Enable(idEditPaste, ed && canPaste);

--- End code ---

But if it's not that, frankly I don't know.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version