|
| This Week... |
|
Fortune-teller and Keyboard Layout applets for Plasma, KNewsTicker resurrected for KDE 4.0 as a Plasmoid. Rewrite of <canvas> tag support in KHTML. Various new language syntax highlighting in Kate. Internal database storage work in Digikam. More playlist handling work, and support for Magnatune "streaming membership" in Amarok 2. OpenDocument loading of charts in KChart for KOffice 2. Various graphics fixes and a user handbook for the Bovo game. Kolourpaint is now fully ported to Qt4. Continued work on the Eigen 2 library. Further porting away from KDEPrint to the printing facilities provided by Qt4.
|
Will Stephenson provides a summary of the KDE 4 Hack Week at SUSE:
|
This week the KDE team and several of the other KDE people at SUSE held the inaugural KDE Hack Week at the openSUSE office in Nuremberg. The 'Innovation Time Off' concept at Novell allows us to spend a percentage of our time working on projects away from our day-to-day roles, so Klaas Freitag and Cornelius Schumacher (both of the KDE e.V. board) and Andre Duffeck and Daniel Gollub joined Dirk Mueller, Stephan Binner, Luboš Luňák and Will Stephenson in bringing KDE 4 closer to release.
Cornelius worked on KOrganizer, Klaas introduced Strigi to KHelpCenter and tidied its user interface, Will worked on Kopete's usability, Stephan prepared a KDE 4.0beta3 openSUSE based LiveCD, Andre worked on Plasma, adding a context menu to the panel, Daniel prepared a new OpenSync release and worked on Kitchensync, and Dirk worked on the KDE 4.0 Beta 3 release and the new SVN server. Along the way we found time to show off KDE 4 to Novell management, and held the first openSUSE KDE community meeting to make community members' and users' voices heard and open the door to their contributions to KDE on openSUSE.
|
|
Harri Porten answers common questions on the state and future of the KHTML web rendering engine used in KDE:
|
As people on #khtml and elsewhere keep asking the same type of questions I will summarize some of the answers that I can give and which - to my best knowledge - should match the view of other maintainers. This is to inform contributors, bug reporters, other helpers and users about the current state, avoid unfounded irritation and provide the basis for further discussion.
Feedback is greatly appreciated and will be incorporated into an updated version to be placed on konqueror.kde.org or so.
Will KHTML be the HTML rendering engine in KDE 4.0? Yes. We are currently working on polishing it to get it into shape after so much of the frameworks around it have changed.
Are there any plans to drop KTHML? No. Despite rampant rumors floating around there are no such concrete plans. We have had several discussions about alternatives but none of the them has yet crystallized as being accepted by the majority as a real option for KDE.
Why don't you pull all the good patches from Apple's WebCore and JavaScript libraries? We do that to a certain degree since the beginning. More for KJS than for KHTML which is much bigger and platform dependent. Apple's code repository is publicly accessible now which has eased patch extraction. Prior to its opening the code had already forked a lot, unfortunately. Misaligned release schedules, design conceptions and platform needs have also sometimes resulted in incompatible solutions.
Are KDE patches ending up in Apple's code base? To a small degree only. There were several attempts to establish a tradition of feeding our patches. Apple engineers also sometimes cherry-pick performance improvements on their own - possibly way later than we published it. As the patches at the same time often get reformatted to fit their coding style this does not make the "diff" between the code bases any smaller. As changes never get pushed back to us this is not an overly satisfying experience.
Does KDE profit from Apple's work? We do in many ways. There are not only improvements and bug fixes that we can adopt but also an increased public awareness of our work and a group of skilled engineers to exchange ideas with. On the downside we are competing for independent contributors and have to live with the fact that some prefer to team up with a shiny and mighty company as opposed to joining our multi-faceted desktop project.
How about joining forces? This is the obvious solution, of course, and since the beginning there have been various initiatives to establish a common project. So far all such attempts have failed. One has to realize that the Safari team is constantly under immense pressure to produce new features and benchmarks for the next Mac OS X release or whatever Steve Jobs will present at next year's WWDC keynote and does not want to risk giving up full control. As with the Windows version of Safari, work is sometimes done behind the scenes. We have not given up hope of course and hope to find some solution that accommodates the need of all parties.
Why is all of this important? The attention paid to KHTML and interest in its future is amazing. The number of well-meaning advisors by far outweighs the number of developers actually writing the code. But the interest is fully warranted. The use of Internet technologies will inevitably continue to rise in our applications. And the degree to which we are involved in the development of these technologies will govern our freedom in advancing their use. The Web development environment Quanta built on top of KHTML is such an example. Further opportunities for our mail mail, IRC, blog, news, media, calendaring, messaging and you name it clients are sheer endless. Merely adding a GUI around ready-made 3rd party components will not add much extra value to our framework.
What are maintainers asking for? To be able to satisfy our user's expectations we need to be able to provide a patched version in case they find a bug. This is particularly important in case of security problems. This requires access to the development repository as well as KDE producing packages out of that repository. Waiting for other vendors to ship bug fix releases is not an option. When it comes to development of new features KDE developers need to have some say into it even if it needs to be coordinated with other parties. In case of KDE-specific needs there needs to be some way to add them.
Isn't this all a rather trivial job? A Web browser component is about more than plain HTML rendering. Apart from dynamic scripting there is Java, Flash, cookies, URI shortcuts, password managers, security and networking support. And KDE has invested a lot into providing this infrastructure that is being shared with other applications.
How about using QtWebKit ones it comes out? QtWebKit is a port of the forked KHTML sources that aims at providing a ready-made HTML component to Trolltech customers without relying on KDE (other than incorporating the WebKit sources with KDE origin). It just is a platform port without any influence on the feature set and therefore useless for KDE's purposes. See the "Why is all of this important?" and "What are maintainers asking for?" questions for more details.
So what are the plans? As the current alternatives would mean dropping our code and losing all influence on development these are not real options. So we'll simply stick to our code base for now and keep on merging in improvements ourselves. The code is pretty good, surpassing other browsers in speed and features in some areas.
Of course, we would be very much interested in joining forces with others having the same development goals. And we'll keep the discussion about cooperation going. One approach I could imagine is to merge our work (thousands of commits done over the recent years) into a WebKit branch and switch over to that one day. This wouldn't be a branch like Nokia's that diverges from the main line more and more. Instead we could branch it off trunk regularly and simply re-apply our KDE-specific patches.
|
|
|
| Contents |
|
|
Bug Fixes |
Features |
Optimise |
Security |
Other |
|
Accessibility |
|
|
|
|
|
|
Development Tools |
|
|
|
|
|
|
Educational |
|
|
|
|
|
|
Graphics |
|
|
|
|
|
|
KDE-Base |
|
|
|
|
|
|
KDE-PIM |
|
|
|
|
|
|
Office |
|
|
|
|
|
|
Konqueror |
|
|
|
|
|
|
Multimedia |
|
|
|
|
|
|
Networking Tools |
|
|
|
|
|
|
User Interface |
|
|
|
|
|
|
Utilities |
|
|
|
|
|
|
Games |
|
|
|
|
|
|
Other |
|
|
|
|
|
|
|
Bug Fixes |
|
Development Tools |
|
Hamish Rodda committed a change to /trunk/KDE/kdevelop/languages/cpp/cppparsejob.cpp:
|
|
Prevent trying to translate cursors against an unopened file - revision 1 is always the "file has been opened" revision (unless starting a document from scratch... potential bug here but truly very minor if so, especially in comparison to the crashes this fixes for now) |
|
|
|
|
|
|
|
|
Aron Boström committed changes in /trunk/KDE/kdegames/bovo:
|
Finally fix a bug that has been there since the very dawn of Bovo. When switching theme, the background was left untouched outside of the grid, which wasn't very pretty when the new theme had another background color.
(Don't tell anyone, part of this is a really, really duct tape solution.)
Also: remove previous duct tape fix from high contrast theme. |
|
|
|
|
|
|
|
|
|
|
Sebastian Pipping committed changes in /trunk/KDE/kdelibs/kate/syntax/data:
|
Fixes for C/C++ highlighters: - Recogize comments after #define (#108370) - Folding for for all proprocessor conditionals (only for "#if 0" before) (#124362) - Folding for multi-line comments was missing in C++ highlighter - Error marking for preprocessor lines not in #(define|elif|else|endif|if|ifdef|ifndef|include) - Sync notice added - Version number incremented to same value |
|
|
|
|
|
|
Rafael Fernández López committed a change to /trunk/KDE/kdebase/apps/dolphin/src/infosidebarpage.cpp:
|
On the Information panel the further information such as "Date", "Size", "Type" was being cut off if it was being shrinked. That shouldn't happen. This prevents this information to be hidden or cut off, and so this is always shown.
Albert: I also solved the previous bug you reported (places view not showing selected items at the first click) on a different commit |
|
|
|
|
|
|
Rafael Fernández López committed changes in /trunk/KDE/kdelibs/kdeui/icons:
|
|
This code fixes the icon loading for 4.0. This code _needs_ to be reviewed when Qt 4.4 is out. I will personally take a look on this when the time comes. Right now, as the SVG renderer is just broken on Qt, what we do is to resize from PNG's. |
|
|
|
|
|
|
Jaroslaw Staniek committed a change to /trunk/KDE/kdelibs/kdeui/kernel/kstyle.cpp:
|
The patch fixes sort indicator (PE_IndicatorHeaderArrow element): only 'down' arrow was displayed before.
All KStyle-based styles were affected like Oxygen or Plastik, so only plastique worked properly.
As a sanity check I test QStyleOptionHeader::sortIndicator and State_UpArrow/State_DownArrow flag. |
|
|
|
|
|
|
|
|
Hamish Rodda committed changes in /trunk/KDE/kdelibs/kate:
|
Fix katepart so that the whole view does not re-layout and repaint on each keystroke.
This is essentially removing a hack I inserted when I was porting and having difficulties with drawing. It is a rather large change to how things work even though the amount of code changed is relatively small. Please notify me if you find any rendering regressions. |
|
|
|
|
|
|
Networking Tools |
|
David Faure committed changes in /trunk/KDE:
|
Rename default emoticons theme from Default to kde4. Existing config files can still say "Default", the code interprets that as "kde4". Found emoticons in use in kopete and kpimutils (for e.g. kmail); no kde4-konversation yet. |
|
|
|
|
|
|
|
|
|
|
Office |
|
Thomas Zander committed changes in /trunk/koffice/libs:
|
Fix usecase where enlarging the actual document (like adding a page in kword) would move the view down a bit on every page-add.
Loading a big document (which adds pages after loading) now correctly keeps the canvas on the position it started on. |
|
|
|
|
|
|
Features |
|
|
|
Games |
|
Aron Boström committed a change to /trunk/KDE/kdegames/doc/bovo/index.docbook:
|
Add Bovo documentation. Look out for: * Bad English and lack of logic. * It builds, but I can't seem to figure out how to view it.
Now, it just needs a review (and subsequent corrections). |
|
|
|
|
|
|
|
|
Marcel Wiesweg committed changes in /trunk/extragear/libs/libkexiv2/libkexiv2:
|
Merge changes to get information for new database schema in digikam:
GPS: - split up in getGPSLatitudeNumber, getGPSLongitudeNumber, getGPSAltitude - add checks that the denominator is not (I have one RAW image here, KODAK-DCSPRO.DCR, where invalid info with denominator 0 is returned. In any case, 1/0 is not 0) - add getGPSLatitudeString, getGPSLongitudeString to get XMP-like GPS strings - add a setGPSInfo method which takes the XMP-style strings - add methods to convert from/to XMP-style string format - add a method to convert to user-displayable numbers (in ° ' '' between 0 and 60)
Exif: - add getDigitizationDateTime
Xmp: - add getXmpTagVariant to get an XMP tag value as a QVariant (similar to getExifTagVariant, but with support for LangAlt etc.) |
|
|
|
|
|
|
|
|
Marcel Wiesweg committed changes in /trunk/extragear/graphics/digikam/libs/database:
|
- Add an initial implementation of the V4toV5 major schema upgrade - move Images and Albums to new tables - create one AlbumRoot from KConfig info - create file filter settings from KConfig info - TODO: one complete scan - port Rating, Comment, Date (overwrite values read by ImageScanner with those found in the db!)
- modify and rearrange parts of the updater logic |
|
|
|
|
|
|
|
|
KDE-Base |
|
Christopher Blauvelt committed changes in /trunk:
|
|
SolidDevice engine is feature complete and ready for inclusion in trunk. |
|
|
|
|
|
|
David Faure committed changes in /trunk/KDE/kdelibs/kdecore:
|
KService: support for storing Actions defined in .desktop files into ksycoca4.
While writing the unit test for this, I noticed that the binary representation (like, in ksycoca) of a single KService was 3700 bytes. This is because KConfigGroup::entryMap returns all translated entries. After filtering those out, the KService is down to 755 bytes; and the whole ksycoca4 went from 9.0M to 1.5M!
Seems to be an unexplained KConfig behavior change, which should be fixed, though. |
|
|
|
|
|
|
Maksim Orlovich committed changes in /trunk/KDE/kdelibs/khtml:
|
A major rework (really rewrite except for the graphics bits) of the <canvas> support, to fix the fundamental problems the previous implementation had. Essentially, it used to store all the bits in the renderer, and have the painting state split between an ephemeral painter (which went away on every repaint), and the JS context object. The way it's spec'd in HTML5 is that the canvas element/its context manage the canvas area and the painting state, and the renderer merely scales. So, I did the following:
1) The context, gradients, patterns, are all proper DOM objects, giving the information the expected lifetime.
2) The DOM context object keeps track of all the painting state itself, updating the painter as needed, and provides the canvas APIs
3) khtmlImLoad gets a new CanvasImage class, that provides a way of using its scaling cache features for this sort of thing. It's not a great fit (it's really meant for something more static), but it's reasonable
4) The JS part is now just a standard wrapper object, with some extra parameter checking, and a bit of code to split the type-unsafe things nicely.
Should we perhaps provide this as part of our C++ DOM in 4.1 or a later 4.0.x release?
5) In general, this was brought in line with HTML5 as best as I could, not being a graphics guy. At least the type checking should be close... assuming I understood it right
There are still gaps/missing features and bugs, of course, but this should serve as a solid foundation.
Various portions were reviewed by Allan, Germain, Harri and Fredrik, hopefully totally covering everything.
(Oh, and I need to figure out how to testcase this properly; I've been using a bunch of web-available testsuites, but we need something for khtmltests) |
|
|
|
|
|
|
Clarence Dang committed a change to /trunk/KDE/kdelibs/kdeui/actions/kfontaction.cpp:
|
Make KFontAction mostly work -- at least enough for changing font in KolourPaint:
* Make changing the font in the GUI update the action (call i.e. setFont())
* Make programmatically calling setFont() update the GUI, but not fire a signal (mimicks KDE 3.5 behavior)
* Make createWidget() set the created combobox to the action's current font
This took a surprising amount of time to write (don't ask). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Volker Krause committed changes in /trunk/KDE/kdepim/akonadi:
|
The agent manager now handles all kind of agents, not just resources. This includes support for autostarting single-instance agents such as the mail threader. |
|
|
|
|
|
|
|
|
Multimedia |
|
Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src:
|
|
some more work on collabsible albums. I think I will need to optimize the playlist some before progressing further with this work as it stresses it quite hard at the moment. But we already knew that the playlist was not optimised at all and contains lots of lots of O(n) stuff still |
|
|
|
|
|
|
Nikolaj Hald Nielsen committed changes in /trunk/extragear/multimedia/amarok/src:
|
Try out a new way of regrouping albums in the playlist. As of rigth now it is not much faster than the old one, but as it does not requre regrouping of the entire playlist in most cases, it has potential tp become a lot faster if the internal datatypes are optimised (such as using hashes instead of lists).
Grouping seems to work correctly, but there are still some issues with redrawing the playlist leaving some thing looking slightly broken untill a redraw is triggered.
This grouping aproach also has the advantage that information about collapsed groups are not disarded every time a regroup is triggered. Oh, one more thing, removing single items from the playlist seems to send it into some kind of an infinite loop at the moment... |
|
|
|
|
|
|
|
|
Nikolaj Hald Nielsen committed a change to /trunk/extragear/multimedia/amarok/src/playlist/PlaylistGraphicsView.cpp:
|
Dont animate items that when neithe rthe old or new y position is within the visible area of the playlist. This change actually makes the playlist usable with a large number of tracks (I tested it with just over 3000 tracks).
The only really bad performance problem with the playlist right now is collapsing and expanding albms wiht a large umber of tracks. 10-20 tracks are almost instantanious, but collapsing someting with about 100 tracks (yeah, kind of a corner case) takes 10-20 seconds... |
|
|
|
|
|
|
Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok/src/collectionbrowser:
|
Implement sorting in the collectionbrowser by Track Number.
We reimplement lessThan in the proxyModel to do so. Note that this sort order does not propogate down to the source model, which means that adding items to the playlist from the collection does not insert them in the sorted order. I'm not quite sure the proper way to fix this at present, will investigate. |
|
|
|
|
|
|
Dan Meltzer committed changes in /trunk/extragear/multimedia/amarok/src:
|
|
Sort tracks when they are added to the playlist as well. This could possibly cause problems if the user does not want them sorted by track number on insertion, but I'm not sure if that would ever be the case |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:
|
- Porting KNewsTicker to KDE4 (and Plasma, and Qt4, and whatnot); unfortunately so many things changed (and so many other things I want to rewrite anyway) that I can just as well throw everything away and start from scratch. At least I don't have to do the RSS parsing anymore, I'll use the 'syndication' library from kdepimlibs.
This is a minimum plasmoid, it's visible in the list of applets. So far, so good. |
|
|
|
|
|
|
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:
|
|
- Start looking like a scrolltext by implementing the renderer a bit and adding some sample news items. Very crude yet. In particular, it's flickering somehow and I'm not sure how to fix this. |
|
|
|
|
|
|
Frerich Raabe committed changes in /trunk/KDE/kdenetwork/knewsticker:
|
- Instead of doing the scrolling ourselves (like I did since KDE2), let's try using QGraphicsItems instead. Each item in the scroller is a QGraphicsItem and we scroll them by calling moveBy() on them.
Pro: Very simple to implement, very little code. A lot of features (event handling on the items) for free
Contra: Slow as well (each KNT instance takes 15% for me, and I'm not sure why) |
|
|
|
|
|
|
|
|
|
|
|
|
Boudewijn Rempt committed changes in /trunk/koffice/krita:
|
Two things in this commit:
a) the qpainter canvas refactoring (that, as noted before, is still buggy) b) lots of work on the node/layer/mask refactoring. Still very buggy, but there has been progress since my last commit on this topic: clicking the relevant buttons now do insert new layers. They are just not selectable.
More work will follow tomorrow. |
|
|
|
|
|
|
Jaroslaw Staniek committed changes in /trunk/koffice/kexi:
|
GUI - local toolbars now entirely belong to KexiViews, not to KexiWindows, for smoother GUI updates - flow layout: it is now possible to set vertical/horizontal alignment of items |
|
|
|
|
|
|
|
|
Johannes Simon committed changes in /trunk/koffice/kchart/shape:
|
More work on ChartProxyModel. Now most of the functionality that's needed is implemented. Changes now allow us to set * the data direction ( setDataDirection( Qt::Orientation ) and dataDirection() ) * whether the first column or row is to be treated as a header: - setFirstRowIsHeader( bool ) and firstRowIsHeader( bool ) - setFirstColumnIsHeader( bool ) and firstColumnIsHeader( bool )
Also, mapToSource( QModelIndex ) works, and mapFromSource( QModelIndex ) needs some testing as I haven't done that yet.
With this implementation of the proxy model, it's expecting pure table data. Headers in the source model - that is, accessible through sourceModel()->headerData() - will be ignored. |
|
|
|
|
|
|
|
|
Inge Wallin committed changes in /trunk/koffice/kchart:
|
Start of OpenDocument loading of charts!
This is the last large item on the TODO list before we can start working on the details. This patch handles ODF loading in the KChartPart. What we need now is some handling on the ChartShape side.
This should be fairly easy, since there is lots of code in the old KChart to steal from. |
|
|
|
|
|
|
|
|
|
|
|
|
Optimise |
|
|
|
|
|
Other |
|
Development Tools |
|
Michael Pyne committed a change to /trunk/KDE/kdesdk/scripts/kdesvn-build:
|
|
Exchange a Perl warning that dfaure found for a more understandable warning. Or in other words kdesvn-build may build all of extragear or playground in one pass but I'm loath to call it "supported" |
|
|
|
|
|
|
|
|
|
|
Games |
|
Aron Boström committed changes in /trunk/KDE/kdegames/bovo/themes:
|
Since there are some glitches with theme switching, and some serious painting issues with the gomoku theme, disable the gomoku and spacey themes and change the background color of the high contrast theme to white.
Thus, there are no visible problems left with theme painting.
Revert this as 4.0 hits the world. |
|
|
|
|
|
|
|
|
John Layt committed changes in /trunk/KDE/kdegraphics/okular:
|
Port from KPrinter to QPrinter, remove dependency on KDE4_KDEPRINT_LIBS.
*** Note this is not a complete port, most of the generators use the printFiles method which Qt 4.3 does not support, these have simply been commented out until we find a solution. At least it removes the dependency so we can remove from kdelibs. |
|
|
|
|
|
|
Marcel Wiesweg committed changes in /trunk/extragear/graphics/digikam/libs/database:
|
At the time it was a nice idea to write the absolute path and the status of album roots dynamically into the database so that they were available from SQL. But now I see that this is not the way to go. It does not allow sharing DBs (not that we support that officially, or say that it works, but people will do it once we support MySQL, and this would break it), and it does not work with read-only DBs.
So now, we always have the album root id and use CollectionManager then which has all the necessary information.
Adapt a lot of SQL. |
|
|
|
|
|
|
Eli Fidler committed changes in /branches/work/kst/portto4-objectstore/kst:
|
HUGE commit!!! Project build and runs. Most tests work.
Introduce ObjectStore, which is responsible for creating, naming, storing, and accessing all Kst::Objects.
many, many cleanups
rebuild Equation parser
fix Matrix::resize()
spacing fixes everywhere |
|
|
|
|
|
|
John Layt committed changes in /trunk/extragear/graphics/ligature:
|
Port from KPrinter to QPrinter, remove dependency on KDE4_KDEPRINT_LIBS.
I was unable to test as ligature segfaulted on startup even before I started work. Normally I wouldn't commit this, but ligature will break on Monday anyway when KDEPrint is removed from kdelibs, so at least this way it builds OK.
Note this is only a partial port as QPrinter does not support printFiles or non-continuous print ranges required for the page selection side-bar. We are currently developing the solution for this and will finshing porting when that is ready in about 2 weeks. |
|
|
|
|
|
|
|
|
John Tapsell committed changes in /trunk/KDE/kdebase/workspace/ksysguard/libksysguard/processui:
|
Try to make it a bit more friendly:
* If a process is stopped, the context menu will include "Resume stopped process", which prompts for root password if needed * If a process is a zombie, no option to kill/renice will be given * Added context menu option to select and jump to the parent process, if applicable * Added context menu option to select and jump to the process that is debugging it, if applicable * When multiple processes are selected, the context menu options change to "Kill processes" etc. |
|
|
|
|
|
|
|
|
Kévin Ottens committed changes in /:
|
|
Bye bye kio media. Liked you, but unfortunately Solid and KFilePlacesModel are prettier now... |
|
|
|
|
|
|
David Faure committed changes in /trunk/KDE/kdelibs/kdecore/tests:
|
Added test for KConfigGroup::entryMap(). This shows that translated keys are present in the entryMap.
Any KConfig guru for removing them from there? (and hopefully from memory altogether, after parsing?)
KDE3 had them when using KConfig but not when using KDesktopFile, very weird stuff [see k-c-d]. |
|
|
|
|
|
|
Jos van den Oever committed changes in /trunk/kdesupport/strigi:
|
This is a rather big patch that moves the code for the actual indexes into loadable plugins.
Strigi has always abstracted the index containing all the search terms. This means you can use any database by implementing three classes: IndexManager, IndexWriter and IndexReader. Only one thing was missing: loading these index types from plugins. In practice this meant that different indices need to be added at compile time. It also meant no GPLed databases can be used.
For Nepomuk, Sebastian Trueg has written an implementation of a Strigi index that stores the data in the Nepomuk storage. In doing so, he has created a direct need for indexes as plugins.
So I've writting the code to make this possible and I've attached it as a patch. Since we are in freeze I'm asking you all to have a look at it. The plugin loading part is basically the same as what we use for loading the analyzer plugins.
So what does the patch add: - add a class IndexPluginLoader (not public) that looks in the strigi plugin directory for files named strigiindex_$name.{so,dll} and loads them if they define createIndexManager and deleteIndexManager. - ports all strigi code to use it - removes the compile-time lib${name]index.so libraries and uses the plugins instead
No public API is changed by this code. It does add a macro REGISTER_STRIGI_INDEXMANAGER for easily registering an IndexManager in a plugin.
In hindsight, we should have added this much earlier as it makes (will make) the build system dependencies much cleaner. |
|
|
|
|
|
|
Rafael Fernández López committed changes in /trunk/KDE/kdelibs/kdeui/icons:
|
KIconLoader now returns more quality icons if the requested size is not a standard one. This means that if the size requested is not standard it will try to load the icon from the SVG format before than trying to load the PNG image and then resizing it (what leads to a worse image quality).
In the case that not SVG was found and PNG was, the change on KIconTheme assures that it will stop on the closest size bigger than the selected (for example, it will stop on 22x22 if you requested a 19x19 pixels icon size) and then resize it.
This will only happen if the SVG wasn't found. If the size is a standard one, go on with the normal procedure: load the PNG that is faster than drawing a SVG and since no resizes are needed no quality is lost. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Albert Astals Cid committed a change to /branches/KDE/3.5/kdelibs/kdeui/kactionclasses.cpp:
|
Revert r706570 which fixed a corner case in kaffeine and broke zoom settings on kpdf, kghostview, kview and basically anything using editable kselectations
You'll have to find a fix that does not break all the other applications using the same class as you
Please next time be extra careful when touching kdelibs code |
|
|
|
|
|
|
KDE-PIM |
|
Casper Boemann committed changes in /trunk/KDE/kdepim/kontact:
|
Change various frames to make a nicer visual appearence Mostly a matter of using styled frames rather than ugly win95 type And also remove the big around-it-all frame. |
|
|
|
|
|
|
|
|
|
|
Pino Toscano committed changes in /trunk/extragear/network/ktorrent:
|
Change most of the tooltips with simple (= non-formatted) text to not use rich text. This makes them much easier to be translated, and no more hardcoded fonts. |
|
|
|
|
|
|
|
|
|
|
Office |
|
Inge Wallin committed changes in /trunk/koffice/kchart:
|
Convert ChartTypeCommand to handle an embedded ChartShape instead of the built-in KDChart.
This is in preparation to remove the built-in KDChart totally, thus finishing the move to ChartShape. |
|
|
|
|
|
|
|
|
|
|
Cyrille Berger committed changes in /trunk/koffice:
|
|
move the CMYK to a subdirectory of libs/pigment (this is probably not an optimal solution, but no reasonnable true solution appeared in two weeks, and as files are easy to move, if a better solution comes, those files will be easily moved to an other location, so don't worry !) |
|
|
|
|
|
|
Johannes Simon committed a change to /trunk/koffice/kchart/shape/ChartShape.cpp:
|
|
Little workaround for the chart not getting updated after setting a new source model. I myself think this is a pretty ugly fix, as it is done by recreating the entire diagram, so I marked it as a 'FIXME'. But still better than it was before, I'd say. |
|
|
|
|
|
|
Johannes Simon committed a change to /trunk/koffice/kchart/shape/ChartShape.cpp:
|
Yes!! KDChartAbstractDiagram::doItemsLayout() is the function I was looking for ;D It updates the diagram after we changed the models data. Setting the data direction and firstRow/ColumnIsHeader for a chart now works flawlessly. |
|
|
|
|
|
|
|
|
Other |
|
Benoît Jacob committed changes in /branches/work/eigen2:
|
Merge WrapArray into FromArray. Less code. The downside is that we're using one more const_cast. But I think that anyway trying to maintain const strictness in Eigen2 is not worth the hassle.
Konstantin: so the code snippet I sent you won't work anymore, replace wrapArray with fromArray. |
|
|
|
|
|
|
Benoît Jacob committed changes in /branches/work/eigen2/src/Core:
|
|
make shameless use of const_cast to reduce code redundancy. This means Eigen2 gives up enforcing constness. I really tried to enforce it, but it really was much hassle because our expression templates can be lvalues (not only rvalues) and so much code had to be written twice. |
|
|
|
|
|
|
Dirk Mueller committed changes in /trunk/kdesupport/qca:
|
so, I learned that the official way to build qca is via qmake and that cmake is just a hack. a hack that works, unlike qmake. except that it doesn't install man pages and that the pc file is different.
the remaining bit is to create the crypto cert directory, I haven't figured out how to do that with cmake yet |
|
|
|
|
|
|
|
|
Jakob Petsovits committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
|
Icon naming spec (and IANA MIME type) compliance: Remove a lot of formerly used mimetype icons for which the proper replacement already exists, and move the other ones to their correct name.
As KDE 4 uses the XDG shared MIME database, no one should be affected by these changes anymore.
If someone is, remember not to directly load icons from the mimetype category by specifying their names. |
|
|
|
|
|
|
Security |
|
|