Archives

KDE-CVS-Digest

Weekly View of KDE CVS commits

December 27, 2002

By Derek Kite


This Week:

Security Audit Concluded, Kmail merge problems, bugfixes and lots of new features in Kate, Kig, Gwenview, Krdc, kgpg, Konstruct, Kopete, Cervisia, Kdevelop, Koffice and Kalzium.

You will notice that format has changed. The bug fix and feature sections are structured differently. Bug fixes, instead of a list (full of errors), now have the commit comments and a link to the bug number. Both sections have links to webcvs.kde.org diffs. If you have any comments, see any mistakes please let me know.

Table of Contents

Security Audit Concludes

The security audit concluded with this advisory:


2. Overview:

        In some instances KDE fails to properly quote parameters of
        instructions passed to a command shell for execution. 

        These parameters may incorporate data such as URLs, filenames and
        e-mail addresses, and this data may be provided remotely to a victim
        in an e-mail, a webpage or files on a network filesystem or other
        untrusted source. 

        By carefully crafting such data an attacker might be able to
        execute arbitary commands on a vulnerable sytem using the victim's 
        account and privileges.  

        The KDE Project is aware of several possible ways to exploit these 
        vulnerabilities and is releasing this advisory with patches to
        correct the issues. The patches also provide better safe guards and
        check data from untrusted sources more strictly in multiple places. 
	
3. Impact:

        The vulnerabilities potentially enable local or remote attackers
        to compromise the privacy of a vicitim's data and to execute arbitrary
        shell commands with the victim's privileges, such as erasing files or 
        accessing or modifying data. 


4. Solution:

        The code audit resulted in several fixes which have been applied
        to the KDE 2.2.x and each KDE 3.x branch. 

        All identified problems have been corrected in KDE 3.0.5a. 
        For affected KDE 3.0 systems, we strongly recommend upgrading 
        to this latest stable release. 

        KDE 3.0.5a can be downloaded from

        http://download.kde.org/stable/3.0.5a/

        Please visit the 3.0.5a Info Page (http://www.kde.org/info/3.0.5a.html)
        and your vendor's website for exact package locations and information 
        about available binary packages or updates. 

        For affected KDE 2 systems, a patch for the 2.2.2 source code has
        been made available which fixes these vulnerabilities. Contact your
        OS vendor / binary package provider for information about how to
        obtain updated binary packages.

The distributions are updating their packages. What about the 3.1 release? The KDE-3.1 release plan states:


Friday January 3rd, 2003: Preparing RC 6

 3.1 RC6 tarballs are generated and uploaded for testing. 

Monday January 13th, 2003: Decision about 3.1 final

 A check of the showstopper list will decide about the final release date. 
 Tarballs are generated and uploaded as final. Announcement roughly a week later.

KMail "merge hell"

There are three versions of Kmail floating around, make_it_cool, kroupware and 3.1. And HEAD. Zack Rusin posted to kde-kmail saying:


well, we have a rather serious problem. We need to finish merging, 
period. I can't debug head, I'm not even sure how at this point. Here's 
the situation: I have four emacs windows open with head, stable 3.1, 
make_it_cool and kroupware, when I'm working on HEAD. The reason is 
that neither of them is synced to one central place. It's ridicules 
because they all crash at different places. Like for example let's try 
to fix something trivial, oh, lets say
QObject::connect: No such signal KMReaderWin::showAtmMsg(KMMessage*)
QObject::connect:  (sender name:   'unnamed')
QObject::connect:  (receiver name: 'kmail-mainwindow')
warning when starting HEAD. You'll notice that indeed the slot doesn't 
exist anymore, because it's been removed while merging and the 
kmmainwidget from make_it_cool hasn't been merged. So in other to fix 
that we need to merge the rest of the changes. The same problem applies 
to:
kdecore (KAction): WARNING: KAction::insertKAccel( kaccel = 0x8209ba8 ): 
KAccel object already contains an action name "file_print"
warnings. 
There's a whole bunch of other more subtle things that need to be merged 
and they are the real problem, because they are hard to spot. I'm going 
for two days to my friend to nyc, I'll be back on Sunday. What I'd 
strongly propose is to merge everything into HEAD. Freaking dump the 
damn branches. And no, we can't break HEAD because it's broken already. 
It's broken so badly that we can't break it any more. You know that 
debugging is almost impossible because of the unmerged differences 
between branches so I don't know what are we waiting for. 
So here's what I'd like to propose:
1) people who are strongly against one of the changes from make_it_cool, 
speak up now, tell me exactly what you don't like,
2) we'll generate a direct diff between make_it_cool and head, apply the 
diff to head, close make_it_cool for ALL commits.
Stephan do you have a diff between the two handy? (without the changes 
to any of the folderjobs :) ).
Comments?

Comments? Zack got comments and some flames. The discussion follows, with the flames omitted. Marc Mutz responded with a plan:


Let's wait for Ingo's decision first ;-))

But let's make plans in case he's fine with it :-D

Since IMAP is the most "interesting" (read: difficult) case, and 
kpartification the most intrusive, I'd suggest the following plan:

- merge easy kroupware stuff (MDN, vacation) and easy make_it_cool stuff 
(remove dups, search pattern speedup)
- kapp->config() -> KMKernel::config()
- IMAP. Either cached IMAP, then your changes there (FolderJobs, what 
else?) or vice versa. Your decision. What do your changes depend on?
- stop. Make sure everything still works (in all branches). Give people 
a few days to pound on it, while we sync obvious bugfixes and 
whitespace changes between all four branches.
- reapply patches that went to HEAD from neither kroupware nor 
make_it_cool (and that are not in 3_1 already, obviously)
- kpartification (move kmmainwin.cpp -> kmmainwidget.cpp on the server, 
so the cvs history stays intact?). I don't have an overview of what 
needs changing for that. Probably replay the commits that were done to 
make_it_cool to HEAD? 

But probably the kpartification should wait until the first January 
weekend so we can combine that with the kaplanization of kroupware, 
which prompts that change, too?

Don Sanders responded:


I disagree with the approach Marc has suggested and I
will not be spending my time supporting it.

There was a chance to integrate a stable version of all
the make_it_cool changes, that chance has been lost due
to Marc's objection.

Now I am focusing on releasing version 0.1 of Kontact.
After that I will restabalize the make_it_cool branch
and there will be another chance to integrate a stable
version of the branch.

Once I have restablized the make_it_cool branch (and
before it is integrated) I will welcome feedback from
others on bugs.

Ingo Klöcker responded:


I might not have said so but I am also against simply replacing HEAD 
with make_it_cool. make_it_cool was/is an experimental branch where new 
approaches were/are tested. Things which have been proven to work in 
make_it_cool should be ported to HEAD. Things which are unfinished or 
which are known to be unstable should not be ported to HEAD.

Now you might ask why HEAD should be mostly stable although the next 
release of KDE is months away. The reason is that many developers and 
also many people who are just interested in being on the bleeding-edge 
are using HEAD (which is a good thing because this makes it more likely 
that bugs are discovered long before the release). This doesn't mean 
that HEAD has to be stable all the time. But it means that it shouldn't 
be unstable for a longer period of time. And this implies that 
experimental code shouldn't go into HEAD. That's (in my opinion) what 
make_it_cool should be used for. That does not mean that all new 
features have to be tested in make_it_cool before they are integrated 
into HEAD, but heavy architectural changes should.

> Now I am focusing on releasing version 0.1 of Kontact.
> After that I will restabalize the make_it_cool branch
> and there will be another chance to integrate a stable
> version of the branch.

O.k.. But why do you insist on dumping make_it_cool onto HEAD in one go? 
What's the problem with integrating it piece by piece (apart from the 
fact that it is more work which you shouldn't worry about since we have 
other people, e.g. merge-master Zack, who kindly agreed to take care of 
this)?

Don Sanders responded:


I wouldn't have released the make_it_cool branch on kmailcool.org if I 
didn't think the enabled features were stable and complete.

Now there is some new stuff (full text index, and BBDB clone) that 
might take some time to polish. alternatively some of it can be 
disabled.

With regard to the make_it_cool release, Marc Mutz asked:


So we should probably target the released make_it_cool with the merge 
instead of current CVS. Have you tagged the release in CVS? Probably 
not (no obvious tag in cvs log) :-(
Do you have a date we could use for tagging?

and then further commented:


> but for the large
> architectural changes it doesn't make sense to try to break them into
> smaller pieces.

The idea is to faciliate peer-review. You can't peer-review a 300K 
patch. You can, however, review six 50K patches. Peer review is 
important. Peer review found numerous small buglets and large bugs in 
your cool code and patches from external developers as well as KMail 
developers. For a recent prototypical example of peer-review, see the 
CharFreq changes.

Plus, there aren't much large architectural changes in make_it_cool yet. 
The only ones (off the top of my head) being kpartification and folder 
jobs. There're far more feature additions (vFolders, search 
enhancements, remove dups, ad hoc filters, full-text indexing (who the 
hell needs that? Didn't you yourself say that a DB backend would be 
unnecessary and now you implement a DB inside KMail), zero-copy 
parsing) than arch cleanups (kparts, folderjob). The maintainablilty of 
make_it_cool is not higher than that of HEAD and that's the metric that 
I'd measure architectural changes with.

The biggest obstacle I can see is the massive code move w.r.t. 
kpartification, but then, we could just track the commits made to 
make_it_cool and - assuming they were tagged with proper log messages - 
generate a patch for kpartification. You could probably create a 
self-contained patch in an hour or two - if you wanted.

Plus, the concurrent changes to the IMAP code in both branches, on which 
we should focus first.

Things went downhill a little from there, until Zack Rusin said:


I want this thread to end. Now. The compromise has been reached. 
Here's what we agreed on:
a) Ingo reverts HEAD to 3.1 and updates the about box (I don't want to 
see anyone but the maintainer touching that thing from now on) - Ingo 
please do that as soon as possible.
b) kroupware is merged first (I know the code for cached imap, but Marc 
could you send all the other diffs from kroupware to the list? I'd like 
to read over them)
c) I start merging make_it_cool. I start from small things. Oh, and I 
heard the argument about IMAP changes. IIRC I'm the author of all IMAP 
related changes for make_it_cool, so stay calm, I'll leave those till 
the end because a few of them depend on the folder jobs rework. I want 
to merge small things like - remove dups, system tray, show custom 
headers, inplace folder renaming and my separation of gui logic from 
kmfolder - first. Then search folders, then folder jobs, then 
kpartification. 
So the order of diffs would look like:
- remove dups,
- system tray notification,
- custom headers,
- inplace folder renaming,
- cleaning up kmfolder gui logic (refactoring of most of the custom 
icons related junk),
- mainwindow extraction (kmmainwidget stuff)
- search folders,
- folder jobs,
- kpartification,

Now I take some people might have a problem with the above order - so 
for those that do - I picked that order because some of that code 
depends on other chunks. I'm not going to be rewriting any of that 
code just to accommodate it to be working without something it depends 
on in make_it_cool. 

So Ingo Klöcker committed a change to kdenetwork/kmail

Revert HEAD to KDE_3_1_BRANCH. Of course I didn't remove any files that where added to HEAD.
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , 75 , 76 , 77 , 78 , 79 , 80 , 81 , 82 , 83 , 84 , 85 , 86 , 87 , 88 , 89 , 90 , 91 , 92 , 93 , 94 , 95 , 96 , 97

Zack Rusin and Marc Mutz went back and forth, breaking down the differences into patchsets that can be checked and committed. Marc Mutz said:


OK, finished. There were 380 commits processed, all except a handful of 
them have been split at least into whitespace and functional changes, 
most into independant changes.

That has involved hand-editing a lot of patches which makes it likely 
that some will be malformed. It shouldn't be too bad.

Then Don Sanders committed a change to kdenetwork/kmail

Integrate a subset of the changes in the make_it_cool branch.
This is a set of changes that is well test by myself and others.
The following bug fixes amongst others are included:
Compilation fix: the certificate dialog now compiles
Mjr bugfix: Prevent mail loss when kmail crashes while editing a
drafts message
Mjr bugfix: Fix erratic folder changing when clicking on the folder
tree
Mjr bugfix: Prevent mail loss when applying filters
The follow features have been implemented:
*       KMail is now a KPart and can be embedded in the Kontact/Kaplan
        container applications along with other KDE PIM applications.
*       Remove duplicates function for removing duplicate messages in
        a folder.
*       Messages can be dragged and dropped on a composer window to
        add those messages as attachments.
*	Deletion in threaded mode is improved, child messages will no
        longer be scattered when a parent is deleted.
*	Multiple messages can now be selected in the search dialog.
*	New context menu in the search dialog with Move, Copy, Reply
        etc. actions for operating on selected messages.
*	Search criteria in the search dialog now supports more types
        of rules and a variable number of rules.
*	Faster searching of large messsages.
*	'Search Folders' which are a KMail folder that stores a search
        expression and is dynamically updated (also known as virtual
        folders).
*	The separate window for reading mail has a context menu with
        Reply, Copy etc. actions for operating on the message
        displayed.
*	The separate window for reading mail has a tool bar.
*	Startup of KMail is faster.
*	Switching between folders is faster.
*	The contents of all composer windows are saved to disk on
        composer window creation and then periodically saved to
        prevent mail loss in the result of a system crash.
*	The state of KMail folders is saved to disk periodically to
        prevent status information loss in the result of a system
        crash.
Note after start KMail switching to folders for the first time will
slow as the format of the .sorted file has changed.
Enjoy!
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 , 27 , 28 , 29 , 30 , 31 , 32 , 33 , 34 , 35 , 36 , 37 , 38 , 39 , 40 , 41 , 42 , 43 , 44 , 45 , 46 , 47 , 48 , 49 , 50 , 51 , 52 , 53 , 54 , 55 , 56 , 57 , 58 , 59 , 60 , 61 , 62 , 63 , 64 , 65 , 66 , 67 , 68 , 69 , 70 , 71 , 72 , 73 , 74 , 75 , 76 , 77 , 78 , 79 , 80 , 81 , 82 , 83 , 84 , 85 , 86 , 87 , 88 , 89 , 90 , 91 , 92 , 93 , 94 , 95 , 96 , 97 , 98 , 99 , 100 , 101 , 102 , 103 , 104 , 105 , 106 , 107

Ingo Klöcker replied:


Don? If the TT mail server has problems and you therefore can't follow 
our discussions on kmail@kde.org (especially the discussion between 
Marc and Zack who talked about how they want to do the merge) then 
you should have read kmail@kde.org through news.uslinuxtraining.com 
(cf. www.kde.org/mailinglists.html). Marc and Zack spent a lot of time 
creating hundreds of small diffs.

Nobody expected you to do any merging. It's nice that you tried to help 
but I'm not sure whether your help (i.e. the huge commit) wasn't 
counterproductive. You basically stabbed Zack and Marc in the back and 
made all their work more or less obsolete (well, anyone who is 
interested in all the small changes can have a look at the patches they 
created. But it would have been much better if this would have been 
documented inside CVS.)

If Zack and Marc ask me to revert HEAD again then I will do so. Not 
because I don't appreciate your help. But because I think the merge can 
be done in a more transparent way.

You could concentrate on integrating some of the kroupware changes into 
make_it_cool. But please don't step on Marc's and Zack's feet again in 
the next few days. Simply sit back, relax and watch Zack and Marc do 
all the hard work which is very much appreciated by me.

There was some grumbling but surprisingly very little bad language. Return next week for the next installment of Merge from Hell.

Bug Fixes



Stephan Kulow committed a change to kdecommon/admin with the comment:
removed getdomainname from libkdefakes. It returns the DNS domain which is
not really the NIS domain and breaks user lookup on systems that have getdominname
in special libraries. The only place I found where it's really used as it's
supposed to be used was kdm (where it's a special case that can be disabled
for !HAVE_GETDOMAINNAME)
Diffs: 1 , 2

and another to kdebase/kdm/backend
hope that's enough to work on systems without getdomainname
Diff

KDE_3_1_Branch

Oswald Buddenhagen committed a change to KDE_3_1_BRANCH: kdebase/kdm/chooser
- stop crashing - finally ... theoretically ...
Diff

Nicolas Hadacek committed a change to KDE_3_1_BRANCH: kdegames/kmines
fix bug in autoreveal (on covered case)
Diff

Nicolas Hadacek committed a change to KDE_3_1_BRANCH: kdegames/kmines/generic
bug fix: correctly count won games in statistics tab
Diff

Stephan Kulow committed a change to KDE_3_1_BRANCH: kdegames/kpat
take aces into account for isGameLost
CCMAIL:51078-close@bugs.kde.org
Refer to Bug 51078 - Incorrect hint showing "You can't win this game" in Mod3
Diff

Stefan Kebekus committed a change to KDE_3_1_BRANCH: kdegraphics/kdvi
fixes crash when backwards searching
Diff

Carsten Pfeiffer committed a change to KDE_3_1_BRANCH: kdelibs/kio/kfile
cleanup (cmp -> equals, indenting, potential crash fix)
Diff

Carsten Pfeiffer committed a change to KDE_3_1_BRANCH: kdelibs/kio/kfile
backport 
- removeBranch() leak fix
- extradata removal
Diffs: 1 , 2 , 3

Ingo Klöcker committed a change to KDE_3_1_BRANCH: kdenetwork/kmail

Fix bug 52182: "Reply All" and "Reply to mailing-list" have same effect..
by making "Reply to mailing-list" work as a simple "Reply" if the mailing-list address 
can't be determined. A simple "Reply" will also work with those lists which mangle the 
Reply-to header.
Refer to Bug 52182 - "Reply All" and "Reply to mailing-list" have same effect..
Diff

KOffice_1_2_BRANCH

David Faure committed a change to KOFFICE_1_2_BRANCH: koffice/kword
Backport crash fix, just in case
Diff

David Faure committed a change to KOFFICE_1_2_BRANCH: koffice/kword
Backport fix from 1.922, when closing the "insert special char" dialog.
CCMAIL:52025-done@bugs.kde.org
Refer to Bug 52025 - insert special character crashes when closing that dialog
Diff

KDesktop

David Faure committed a change to kdebase/kdesktop
Applied patch from BR52176, can't get rid of "Run in terminal".
Thanks to Andreas Leuner 
CCMAIL:52176-done@bugs.kde.org
Refer to Bug 52176 - after ALT+F2: can't get rid of "Run in terminal"
Diff

KdeGames

Rob Kaper committed a change to kdegames/atlantik
bugfix: don't crash when removing money from a trade
Diffs: 1 , 2 , 3

Nicolas Hadacek committed a change to kdegames/kmines
- fix bug in autoreveal
- use new standard actions
- change in API in highscores and in settings libraries
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18

Dcop

Stephan Kulow committed a change to kdelibs/dcop
catching connection errors (thanks to the excellent stacktrace :)
CCMAIL:52157-close@bugs.kde.org
Refer to Bug 52157 - dcop server crashed, took down KDE
Diff

Kate

Anders Lund committed a change to kdelibs/kate/part
fix for crash
Diff

Hamish Rodda committed a change to kdelibs/kate/part
Prevent algorithms from consuming 100% cpu when the view is too small to fit one character per line
This should be backported after it's been tested without ill effects.
Diff

Khtml

Dirk Mueller committed a change to kdelibs/khtml
some repaint handling optimisation. Probably breaks one or two cases, but
I'll fix that asap
Diff

Harri Porten committed a change to kdelibs/khtml/ecma
proper implementation of Window::hasProperty(). With variable decls
being corrected we don't need the always-return-true hack anymore which
just caused problems (bug 51120)
Refer to Bug 51120 - with() statement leads to wrong variable object being used (testcase)
Diff

Dirk Mueller committed a change to kdelibs/khtml/rendering
quickfix for the onclick problem. proper fix later
Diffs: 1 , 2

Kio

Carsten Pfeiffer committed a change to kdelibs/kio/kfile
- factor out urlbar initialization into KFileSpeedBar, so it can be used
  the same way by KDirSelectDialog
- use it there, too
- save/restore size of KDirSelectDialog
- fix leak in KFileTreeView::removeBranch(): the listview items were never
  deleted
- remove the fileitem's extra data when deleting treeview items
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9

Werner Trobin committed a change to kdelibs/kio/kio
Fixed the infinite loop Seli introduced when he cleaned up that gory
virtual hook code. KOffice applications now open and save their documents
again without crashing ;-)
Diff

Ksirc

Andrew Standley-Jones committed a change to kdenetwork/ksirc
This fixes ksirc's lag measurement so that it doesn't reset the idle time anymore.  Plus, this is
problable "The Right Way (tm)" to do it.
Diffs: 1 , 2

Kopete

Christopher TenHarmsel committed a change to kdenonbeta/kopete
Code cleanup for Oscar.  Fixed double-delete bug involved in editing user profile for Oscar
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10

Tom Linsky committed a change to kdenonbeta/kopete/protocols/oscar
Fixed bug52052 (AIM Rate Limiting)
Added a default user profile.
Currently there is no GUI mechanism for setting user profile, and I don't know enough about 
writing GUIs to create one.  The user profile can now be looked at and set by the plugin by 
calling the functions getMyProfile() and setMyProfile(const QString&)
Cleaned up login procedure
Fixed a bug that prevented the global setAway from working properly
Refer to Bug 52052 - AIM Rate Limiting (Mobile Device?)
Diffs: 1 , 2 , 3

Tom Linsky committed a change to kdenonbeta/kopete/protocols/oscar

Fixed a bug where all open user info windows would change the user info to that of the 
contact whose user info was most recently received.
Contacts' online time was displayed incorrectly.  This fixes it.
Removed unnecessary code I forgot to clean out before.
Diffs: 1 , 2 , 3

Ksvg

Rob Buis committed a change to kdenonbeta/ksvg/impl
Fixing a large mem leak here...
Diffs: 1 , 2

Rob Buis committed a change to kdenonbeta/ksvg/impl
Again a big mem leak fix.
Diff

Rob Buis committed a change to kdenonbeta/ksvg/impl
Fix another mem leak.
Diff

Kdepim

David Jarvie committed a change to kdepim/kalarm
Fix alarms not being deleted after triggering
Diff

Cornelius Schumacher committed a change to kdepim/korganizer
Load holiday plugin only once. Fixes bug 51721.
Refer to Bug 51721 - German holiday 3. Advent is calculated wrong
Diffs: 1 , 2

Cervisia

André Wöbbeking committed a change to kdesdk/cervisia
Fixed memory leak: the QButtonGroup wasn't freed.
Diff

Christian Loose committed a change to kdesdk/cervisia
readded fix for bug50735:
dialog bigger than screen when combobox content too long.
BTW, please check the logs before you remove lines that at first sight don't make
sense to you!
Refer to Bug 50735 - commit dialog box waaaaaay too big
Diffs: 1 , 2

Kdevelop

Caleb Tennis committed a change to kdevelop/parts/appwizard
Patch to prevent dialog from freezing - submitted by Julian Rockney
Diff

Harri Porten committed a change to khtmltests/ecma
condensed test for bug 51120 (with() { }
Refer to Bug 51120 - with() statement leads to wrong variable object being used (testcase)
Diff

Koffice

Rob Buis committed a number of changes to koffice/karbon
Fix crash when doing "split view".
Diff

and again to koffice/karbon/core
Thanks to valgrind, a mem leak fix...
Diffs: 1 , 2

Another memory leak inkoffice/karbon/render
Big mem leak fix.
Diff

and again inkoffice/karbon/tools
Again a mem leak fix.
Diff

Ariya Hidayat committed a change to koffice/kpresenter
fixed problem with interlock and surround effects (for preview)
Diff

David Faure committed a change to koffice/kword
Fixed "find from cursor" with table cells.
Don't disable "Find Next/Previous" (F3/Shift-F3), ever.
Diff

Rob Buis committed a change to koffice/lib/kofficeui
The Action takes the responsibility of cleaning up the popup now, this
fixes the crash when quitting karbon...
Diff

David Faure committed a change to koffice/lib/kotext
Don't crash when deleting a paragraph that's the beginning or the end of
a (numbered, not standard) selection (like the one used by find/replace).
Diffs: 1 , 2

Ariya Hidayat committed a change to koffice/lib/kotext
changed sample text for preview
(see http://lists.kde.org/?l=koffice-devel&m=104085276515879&w=2)
this will fix bug 45727
Refer to Bug 45727 - "KWord, KOffice's Word Processor" in KPresenter template
Diff

Features

Kdeui

Hans Petter Bieker committed a change to calendar_support: kdelibs/kdeui This is one of many changes in a rewrite of calendar routines.
Ported week selector to KCalendarSystem.
Diffs: 1 , 2 , 3

Kate

Christoph Cullmann committed a change to kdebase/kate
enable the work of network transparency for projects
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14

Christoph Cullmann committed a change to kdebase/kate
project tree allows now opening of files
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8

Christoph Cullmann committed a change to kdebase/kate/app
nearly working project tree view, project list is now really a list
Diff

Joseph Wenninger committed a change to kdelibs/kate

It's now possible to collapse all toplevel folding regions either with the view menu or 
CTRL+ALT+C. Perhaps I should ensure, that the whole folding tree has already been built 
before that action takes effect
Diffs: 1 , 2 , 3 , 4

Anders Lund committed a change to kdelibs/kate/part
fix for bracket matching to work with code folding
Diff

Konqhtml

Leo Savernik committed a change to kdebase/kcontrol/konqhtml
- added DomainListView class which generalizes the domain list view options
- modified javaopts.* to make use of DomainListView
- modified jsopts.* to make use of DomainListView
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8

Kig

Maurizio Paolini committed a change to kdeedu/kig
Added transformations.
There are 4 new files: misc/kigtransform.* and objects/transform.*;
the first collects all 'transformation-related' stuff,
the other collects all 'object-to-transform-related' stuff.
Right now the following objects can be transformed:
point, line, ray, segment, circle, conic, cubic.
There is support for the following transformations:
- central symmetry about a point,
- reflection about a line,
- rotation of a given angle about a point,
- translation of a given vector,
- scaling of a given factor about a given point,
- scaling of a given factor about a given line (this is the first example
of a non-homothetic transformation, i.e. a circle does not map onto a
circle),
- an example of a projective transformation that is not an affine map:
it depends on a ray and an angle.
The addition of the transformations is extremely localized in those files:
changes are present only in kig_part.cpp in order to add the new types
(one per object that can be transformed). Right now there is no new entry
in kigpartui.rc, anyway the transformations can be reached by means of the
contextual menu (right click) of any object.
CCMAIL: devriese@kde.org
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7

Gwenview

Aurélien Gâteau committed a change to kdeextragear-1/gwenview/src
Implemented multi selection support for file dragging.
Diffs: 1 , 2

Aurélien Gâteau committed a change to kdeextragear-1/gwenview/src
File view popup menu is multi-selection compliant!
Diffs: 1 , 2 , 3

Kimgio

Nadeem Hasan committed a change to kdelibs/kimgio
QImageIO plugin for PCX image format.
Currently only read is supported. Write support to come later.
I need some sample PCX images, especially 4bpp (16 color) images.
Diffs: 1 , 2 , 3 , 4

Nadeem Hasan committed a change to kdelibs/kimgio
Start of write support. Write 1bpp images. More to come.
Diffs: 1 , 2

Krdc

Tim Jansen committed a change to kdenetwork/krdc
Ho Ho Ho, Santa implemented wish 49211: enter special key combinations
(ctrl-alt-del and friends) in window mode. 
(Unfortunately Santa has not been able to solve the problem that it doesnt
work while the pointer is over one of the dialog's children. He doesn't
understand why, the dialog grabs the keyboard)
This patch also adds labels to the toolbar buttons.
Refer to Bug 49211 - special key combination like Ctrl-Alt-Del
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10

Tim Jansen committed a change to kdenetwork/krdc
Ho Ho Ho, wish 49242: scaling in fullscreen when the remote framebuffer
resolution is larger than the local resolution.
Refer to Bug 49242 - Ability to scale VNC server's resolution to KRdc client's native resolution
Diffs: 1 , 2 , 3 , 4

Kgpg

Jean-Baptiste Mardelle committed a change to kdenonbeta/kgpg/kgpg
rewrote & improved enc/decryption/signing functions. fixed minor bug
Diffs: 1 , 2 , 3 , 4 , 5

Konstruct

Stephan Binner committed a change to kdenonbeta/konstruct
Meta target for everything except i18n/ and kde/kdebindings/
Diffs: 1 , 2 , 3

Stephan Binner committed a change to kdenonbeta/konstruct/misc/detektive
Introducing a KISS Detektive to investigate the system for missing packages.
The lists for the initial distributions are far-off from being complete, any
help to complete them or to extend this to other distributions is welcome.
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7

Kopete

Martijn Klingens committed a change to kdenonbeta/kopete/protocols/msn
MSN no longer behaves like a singleton - MSNProtocol::protocol() is no more
and no code (should :) assume there is only a single protocol instance.
This paves the road for a separation of the protocol into multiple identity
support.
Now if only all other protocols would support that too... ;-)
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9

Tom Linsky committed a change to kdenonbeta/kopete/protocols/oscar
Added GUI support for changing your own profile information
Diffs: 1 , 2 , 3 , 4

Tom Linsky committed a change to kdenonbeta/kopete/protocols/oscar

Added sendBlock(const QString &name) and sendRemoveBlock(const QString &name) to the 
OscarSocket engine. Buddies can now be blocked via the "block" option in the right 
click menu for each contact. However there is no GUI mechanism yet for unblocking them, 
so it's not ready for end use yet.
Fixed a bug whereby some calls to the server were unnecessarily made multiple times.
Diffs: 1 , 2 , 3 , 4 , 5 , 6

Duncan Mac-Vicar Prett committed a change to kdenonbeta/kopete/protocols/yahoo
- Oh yes, you can see your yahoo buddies in the contact list now :-)
Diffs: 1 , 2 , 3 , 4 , 5 , 6

Kdepim

Jost Schenck committed a change to kdepim/kaddressbook/printing
Added ringbinder print style for printout of addresses in the style
of typical PIM ring binders (with alphabetical groups).
Diffs: 1 , 2 , 3 , 4 , 5 , 6

David Faure committed a change to kdepim/karm
GUI: RMB popup menu for tasks.
Diffs: 1 , 2 , 3 , 4 , 5

Cervisia

André Wöbbeking committed a change to kdesdk/cervisia
Fetching of branch and tag names:
- centralised in one place: fetchBranches() and fetchTags() in misc.{cpp,h}
- fixed parsing of the names:
  o no more trailing spaces
  o names with more than 24 chars are identified now
TODO: separate fetching from GUI.
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7

Kdevelop

Julian Rockey committed a change to kdevelop/parts/appwizard/pyqt (silent)
Directory /home/kde/kdevelop/parts/appwizard/pyqt added to the repository


Koffice

Percy Leonhardt committed a change to koffice/filters/kpresenter/ooimpress
Added support for 'rounding' and 'shadow' and
redesigned the handling of attributes.
Diffs: 1 , 2

Nicolas Goutte committed a change to koffice/filters/kword/abiword
Import  element into document info
(for now only into title and abstract.)
Diffs: 1 , 2

Nicolas Goutte committed a change to koffice/filters/kword/abiword
First try to import footnotes
It does not work as KWord crashes in KWDocument:processFootNoteRequests
(I suppose that the problem is that I cannot feed KWord with dimension of
the footnote frame (in ))
Diffs: 1 , 2 , 3 , 4

Rob Buis committed a change to koffice/karbon/plugins
New tool, to insert images...
Diffs: 1 , 2 , 3 , 4 , 5

Rob Buis committed a change to koffice/karbon/plugins/zoomtool
Should be obvious, a plugin tool for zooming :)
Diffs: 1 , 2 , 3 , 4

Ariya Hidayat committed a change to koffice/kpresenter
added option for XHTML output
Diffs: 1 , 2

Patrick Julien committed a change to koffice/krita/core
Basic printing and opening of photoshop files
Diffs: 1 , 2 , 3 , 4

Kalzium

Carsten Niehaus committed a change to make_it_cool: kdeedu/kalzium
Preparations for Kalzium 0.6.0
* really removed the obsolete files
* removed commentedcode which will not be used in Kalzium 0.6.0
* removed includes
* added new icons, removed the old ones
* updated the TODO and ChangeLog to this branch
Diffs: 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 18 , 19 , 20 , 21 , 22 , 23

Thanks for reading CVS Weekly Digest