Change in KActionCollection::setComponentData

Dan Meltzer parallelgrapefruit at gmail.com
Wed Mar 26 21:46:18 GMT 2008


On 3/26/08, Michael Jansen <kde at michael-jansen.biz> wrote:
> Hi
>
>  I just commited a rather invasive change for this method. The method will fail
>  if you try to set the Component for a action collection that contains actions.
>
>  The change was discussed on irc is needed because all triggers having to
>  register the shortcut somewhere need a unique id. That's currently "component
>  name + action id".
>
>  That change immediately broke kate and konqueror and i guess it will break
>  many kpart applications. It manifests in
>
>  ASSERT: \"count()==0\" in file /home/kde-
>  devel/src/KDE/kdelibs/kdeui/actions/kactioncollection.cpp, line 162

Hi,

This is going to cause bad breakage.  It basically disallows anyone
from running kde4.0 apps against 4.1 libraries, a form of binary, or
perhaps behavioral, compatibility.  This is not a good thing(tm).

>
>  and the solution is to first set the component data and then fill the action
>  collection. Thats means for KPart::MainWindows calling setComponentData as
>  soon as possible. Konqueror didn't do that and i fixed it. Please double check
>  for side effects 790494 .
>
>  Kate is next. My guess is that most/all kpart based application break.
>
>  Please don't shoot the messenger. I'm just trying to enforce all assumptions
>  made by the global shortcuts code to see what breaks. I think a loud bang is
>  better than many small problems.
>
>  Mike
>
>
>
>  --
>  Michael Jansen
>  Available for contract work ( Development / Configuration Management )
>  http://www.michael-jansen.biz
>




More information about the kde-core-devel mailing list