|
| This Week... |
|
The "simple menu" (similar to the menu found in the KDE 3 series) becomes usable. The clock receives a popup-based calendar widget, with KRunner becoming multi-threaded in Plasma. Work continues the long-awaited update of KBugBuster, with important development milestones reached. Version Control and other general work in KDevelop. Start of a DirectShow (for Windows) backend for Phonon, and the integration of this backend in Amarok 2.0. Continued work on the BitTorrent plugin for KGet. KBlogger gets KWallet integration. The beginnings of a simple vector text shape with support for text-on-path and exact positioning, and the start of another painting framework in KOffice. A bitmap (BMP) export filter for Krita. Support for SVG animations in KDM. Important work on the KNewStuff2 framework, through the work of a new maintainer. Adjustments in colour schemes intended for KDE 4.0, more work on adapting icons to the FreeDesktop.org icon naming standard. Abakus, a calculator application, begins to be ported to KDE 4. KDE 4.0 Release Candidate 2 is tagged for release.
|
This week saw the final adaptation of the "Simple Menu" (started off weeks ago by Robert Knight) into a working mechanism, by Sebastian Sauer. For all those menu-fanatics outh there, proof of this new development (and also of the clock calendar popup also added this week):
As every detail of KDE 4.0 seems to need a water-tight disclaimer these days, i'll just state that the green colour scheme shown in the screenshots is not the default of KDE 4.0!
|
Rolf Eike Beer talks about recent developments in a redeveloped KGPG application, KGPG2:
|
My name is Rolf Eike Beer, also known as Dakon on IRC and in KDE SVN. In real life I prefer my second name, Eike.
KGPG is a graphical frontend for GnuPG and has been shipped in the kdeutils package for ages. Since I felt it became orphaned I started working on it last year with a major boost this year. Before that I had done little C++ work and no Qt programming at all, so it is both an improvement in my programming skills as well as (hopefully) for the application. Currently there are three flavors of KGPG which I would like to introduce to you. I've taken three pictures of the same keyring with all three different versions so you can easily compare them.
KDE 3.5.x contains version 1.2.x (currently 1.2.2) which is the classical, Qt3 based application I have only touched very little. This version is considered stable for everyone and is only touched for bug fixes. There will be no new features for this series (at least from me).
The KGPG 1.7 series is included in KDE 4.0 and is basically a port of the 1.2 series to KDE4. It still uses the Qt3 compatibility classes and also suffers from some regressions compared to 1.2. The most visible one is that dropping a text or file on the systray icon does not have any effect as those icons are no longer a anchestor of QWidget. One the other side it has a number of improvements, some of them can be seen in the screenshot:
- The key groups are much more usable now compared to KGPG 1.2 as you can now expand them and see there members in the key manager. In KGPG 1.2 you have to open the group edit window to find out the group members.
- The key sorting has been improved for usability. On the top are always the key groups, followed by your private keys (not shown in the pictures) and the public ones. The signatures are also sorted to show the ones from unknown keys at last.
- There are more colors for the different trust levels so you can now distinguish between fully and ultimately trusted keys as well as disabled and expired keys.
In /branches/work/kgpg2 you can find a version of KGPG that will eventually grow into KGPG2. I just started porting this to model/view architecture and neither is this finished nor is it very usable. You can see that the old KeyListView widget is still around (the debris on the upper left) as well as the column headers are not set. The goals for this branch include:- full port to model/view framework
- port to gpgme or similar library where useful
- remove more limits, like where only one signature at a time can be deleted
- add some often requested features like editing or signing single identities
|
|
Ian Monroe provides a progress update on Video Player, the video application formerly-known as Codeine:
|
Recently, i've been working again on Video Player. The codebase of Video Player is nice and small, and so it's pretty easy to make significant progress. First thing I did was remove the remaining dependencies on KDE 3 Support and Qt 3 Support elements. I can't really say that the application is fully ported yet, but it is certainly no longer using any deprecated APIs. Thanks to some help from Matt Rogers of Kopete fame, it also no longer crashes on exit. In fact it has no known crashes, an important milestone with any software, though a state that's usually short-lived!
Phonon in KDE 4.0 will not have APIs for subtitle or multiple audio streams (like on DVDs and .mkv files). So Matthias Kretz added a property to the Phonon xine backend to give direct access to xine_stream_t, an important data structure in xine. I was able to use this property to add subtitle support for Video Player. Currently, it doesn't have any way of knowing when a new subtitle is available (for instance on a DVD, the title screen may have no subtitles, but then they are available when you start playing the movie), and it just asks xine every 5 seconds. Hopefully I can find some solution for this, perhaps from the Phonon xine engine or directly from xine.
This all means that Video Player will have a direct dependency on xine and the Phonon xine engine until at least KDE 4.1 (though it could probably work with other engines, just without subtitle or multiple audio streams).
Last night I re-added fade-out on exit (as seen in Codeine). And when I have more time, I plan on fixing up all the other little features that make Codeine great, mostly involving keeping state.
I think kdemultimedia has a need for a simple video player. Video Player would fit this niche nicely. I hope to make some indepedent releases and then with community approval be included into kdemultimedia in KDE 4.1.
I actually do have an idea for a less generic but still simple name for Video Player, but i'll keep it private until I buy the domain.
|
|
Sebastian Trueg writes a report on the status of NEPOMUK in KDE 4:
|
After months and months of development, Soprano, the RDF storage framework all of NEPOMUK is based on, has finally reached "release candidate" status. Version 2 is nearly a complete rewrite of Soprano 1, and brings a lot of nice features, including a full-text index based on CLucene, which indexes all RDF literals. Soprano has storage backends for Redland and Sesame2.
Yes, Sesame2 is a java RDF store, I know. Anyway, I would hope that until we have a proper (i.e. fast) C(++) implementation of an RDF store, distributions could ship Sesame2 as its performance is so much better than Redland's (especially regarding queries).
Soprano of course has a nice D-Bus interface when run as a daemon. Each RDF model (one big graph of RDF quadruples) has one D-Bus object. Querying the model creates a new object which has an iterator interface. The best way to test that is to use the powerful 'sopranocmd' command-line client. Or if you are within an application, just forget about D-Bus and let Soprano handle it all internally using Soprano::Client::DBusClient and Soprano::Client::DBusModel (Actually this is done internally by libnepomuk when using Nepomuk::ResourceManager::mainModel()).
Well, so much for Soprano, the data foundation of it all. What has happened in SVN? We now have the NEPOMUK Server in kdebase/runtime. NEPOMUK Server is a KDED module which provides the NEPOMUK data store (based on Soprano) and controls Strigi. The latter meaning that it starts and stops Strigi (well, at least tries to stop, as Strigi does not actually like being stopped and is a D-Bus autostart service anyway. But we will get there! ;))
With the KDED module comes a configuration KCModule called "kcm_nepomuk" which allows to enable and disable both Strigi and NEPOMUK. Disabling NEPOMUK makes Strigi use its plain CLucene backend instead of the NEPOMUK store.
Yes, Strigi can now use the NEPOMUK store as data backend. Thus, metadata indexed by Strigi and metadata created through NEPOMUK (like tags or ratings) can be queried in combination. And thanks to the CLucene full-text indexing in Soprano queries are as fast as they are with the default Strigi backend.
I also did some development in playground again: in playground/base/nepomuk-kde/filewatch you can find yet another KDED module which updates the metadata when files and folders are moved or deleted. As it is based on inotify, you may run into problems with more than 8000 folders in your home directory. Any help for improvement is greatly appreciated.
As for the NEPOMUK library - which is used by Dolphin to do the tagging and rating and so on - I am currently experimenting with some caching methods. It looks promising.
Ok, enough talk, I did a little screencast. Actually I made it for an internal NEPOMUK project presentation, so there is quite a lot of RDF to see. But maybe it is of interest to you, too.
As a final note I would like to say how happy I am that I get the chance to introduce NEPOMUK technology into KDE.
|
|
|
| Statistics |
|
| 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 |
|
|
|
John Tapsell committed changes in /trunk/KDE/kdebase/apps/dolphin/src:
|
The first columns model and selection model should be the same as the view's model and selection model.
This means 1) We don't leak memory switching to and from column view 2) Selection is preserved when switching views 3) We don't have 2 models running for the root directory |
|
|
|
|
|
|
|
|
|
|
Maksim Orlovich committed changes in /trunk/KDE/kdelibs/khtml/imload:
|
Fix decoding of progressive + alphablended PNGs --- the premultiplication code is not designed to handle multiple combinding passes, so disable it in this case. Also noticed that the RGBA enums should be ARGB, so fix that.
(Thanks to FredrikH for providing analysis and a testcase) |
|
|
|
|
|
|
Hamish Rodda committed a change to /trunk/KDE/kdelibs/kate/view/kateviewinternal.cpp:
|
Commit slightly modified version of patch provided by Thomas Friedrichsmeier to fix bug 153375 (select all not correctly rendered)
The only modification was to place the update call after the sanity checks, if the tagging was not for lines on the view, we don't need to update at this point.
BTW, much of this will have to be re-done post 4.0 in order to fix an entirely separate issue (memory usage terrible for large files without newlines) |
|
|
|
|
|
|
|
|
Dan Meltzer committed a change to /trunk/extragear/multimedia/amarok/src/MainWindow.cpp:
|
|
Fix local shortcuts mostly. Quitting now works with ctrl + q! The other shortcuts seem strange still. SeekForward is being triggered by the left arrow key.. even though its shortcut is set to the right arrow. Seek backward is not being triggered at all |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Features |
|
|
|
|
|
Andreas Pakulat committed changes in /trunk/KDE/kdevelop/plugins/appwizard:
|
Move the pages into the dialog class, needed to properly validate/invalidate the next button.
Also add a ApplicationInfo class to carry the new apps data to the plugin which still does the actual template extraction and creation of dirs..
Also changes the logic for the location a bit, the user now has to provide an empty or non-existing directory as location and the application name won't be added to that location. Application name and location on disk need to be completely separate.
Unfortunately this is somewhat broken right now (some paths are wrong when creating a project). |
|
|
|
|
|
|
|
|
|
|
David Nolden committed changes in /trunk/KDE/kdevplatform:
|
Add a new quickopen interface that allows some data-providers to serve file-lists for other data-providers.
That way we only need one single data-provider for all the duchain stuff, and it queries the file-lists from all other enabled data-providers. |
|
|
|
|
|
|
Dmitry Suzdalev committed changes in /branches/work/kbugbuster-dimsuz:
|
I continued to make backend API look better when I suddenly realized I need to do something more major.
Using an old code as a useful reference. So meet The Broken KBugBuster and Dimsuz learning TDD :) |
|
|
|
|
|
|
David Nolden committed changes in /trunk/KDE/kdevplatform/plugins:
|
Add a new wonderful plugin: When a declaration or use is under the text-cursor, highlight all other uses+the declaration.
This allows getting a better overview, and can help us debugging the du-chain until it is reliable enough for refactoring.
Also this is our first duchain feature plugin, and it shows how easy such a thing can be. :) |
|
|
|
|
|
|
Allen Winter committed changes in /trunk/KDE/kdesdk:
|
add nice feature logging for SVN in the subversion ioslave. the same needs to be done for all the other other packages in kdesdk. |
|
|
|
|
|
|
|
|
Dmitry Suzdalev committed changes in /branches/work/kbugbuster-dimsuz:
|
My KIO learning curve grows up :) Created kbbjobmanager class which will handle all kio jobs for kbugbuster It even retrieves contents of b.k.o front page now.
Woo hoo! :) |
|
|
|
|
|
|
|
|
Games |
|
Pierre-Benoit Besse committed changes in /trunk/playground/games/kapman:
|
- Ghosts model, view and tests implemented - characters initial position changed - kapman's speed increased - all characters positions and speed will be qreal instead of int |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
KDE-Base |
|
Paolo Capriotti committed changes in /trunk/KDE/kdebase/workspace/libs/plasma:
|
Package refactoring as discussed on panel-devel.
* Icon, preview, screenshot and release notes are gone. * Everything in a package (except metadata) is in the contents/ directory. * Package::createPackage and Package::installPackage cleanup. * Added Package::metadata method to retrieve a metadata object. |
|
|
|
|
|
|
|
|
David Faure committed changes in /trunk/KDE/kdelibs/khtml:
|
We've always gotten some trouble from the fact that KHTMLFactory has a dual purpose; being the KParts::Factory (when khtmlpart is dlopened, e.g. in konqueror), and being the repository for a bunch of global things needed by khtml.
I've separated those two things, creating a KHTMLGlobal for the global stuff and leaving the KHTMLFactory to being the kparts factory only. It solves some life-cycle issues and allows to remove the ugly bool clone from the constructor. I also improved the refcounting mechanism in KHTMLGlobal to make it debuggable.
This doesn't fix the KHTMLFactory assert though; this only showed that the problem lies in DocumentImpl refcounting, not in KHTMLFactory itself...
OK'ed by carewolf. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Rafael Fernández López committed changes in /trunk/KDE/kdelibs:
|
Important changes on our models. The sorting of the categories is being done internally, taking info from data() with role CategorySortRole, while we use CategoryDisplayRole for displaying the information on the view itself.
This leads us to do a natural comparing (if needed it can be removed), and therefore, moving the naturalCompare method from KDirSortFilterProxyModel to KCategorizedSortFilterProxyModel.
This way categorizing is even easier. This patch has been developed by John Tapsell and me.
More changes will follow on Dolphin to fit this changes. |
|
|
|
|
|
|
|
|
|
|
Sebastian Kügler committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/digital-clock:
|
* A calendar popup, based on the new Plasma::Dialog.
I'm using a simple calendar right now. I was planning to use KDatePicker for that, but KDatePicker crashes when setting a stylesheet. So keep it simple for now, and try to find out how to fix KDatePicker->setStylesheet()
* Also, fix saving showTimezone and add an option to easily switch back to the local timezone. * Clean up some remains from the SVG themable thing
Last, if someone knows a way to prevent the widget from getting a shadow, feel free to tell me. The transparent borders don't look so sexy with shadows, and it kind of conflicts with the visual appearance of the panel. |
|
|
|
|
|
|
Thomas Friedrichsmeier committed changes in /trunk/KDE/kdelibs/kate:
|
Correctly update view when smart highlighting regions change. This also allows for removing a bunch of workaround code in KateSearchBar.As discussed on kwrite-devel. |
|
|
|
|
|
|
|
|
|
|
Germain Garand committed changes in /trunk/KDE/kdelibs/khtml:
|
- complete the separation of zooming from font-size increase/decrease. - rewire font increase/decrease action to the correct effect. - disable zooming to size < 100% for now.
showstopper |
|
|
|
|
|
|
|
|
Frederik Gladhorn committed changes in /trunk/KDE/kdelibs/knewstuff/knewstuff2:
|
Keeping track of files during the installation. For compressed files this is achieved by going through the archive.
Uninstall now works using the above.
An app may access the list of files that were installed by using KNS::Entry::installedFiles() to get a QStringList of the files.
In detail: - added a stringlist for the files to entry - add handling of installedfiles tag in entryhandler (xml) - use the local registry entry for these (obviously) - add (set)installedFiles to entry class - KNS::CoreEngine::unregisterEntry(Entry*) removes the associated files and registry entry - Zip and Tar code is now sharing the same code since both are derived from KArchive |
|
|
|
|
|
|
|
|
|
|
|
|
Jakob Petsovits committed changes in /trunk/KDE:
|
Masses of icon fixes and adaptions, caused by the original desire to rename "edit" to "object-edit". I changed my mind in the middle of the process (but had lots of other changes lying around already and really need to stop), so many or all of the newly renamed "object-edit" icons might vanish again.
But all in all, there are improvements in many places. |
|
|
|
|
|
|
|
|
Christian Weilbach committed changes in /trunk/playground/pim/kblogger/src:
|
|
Added automatical blogId fetching via the Fetch ID button. It works for all API's :D The only problem is the visual representation in the dialog at the moment as the fetchedBlogId() slot only changes the KLineEdit for the first ID found and all others are dropped. That is ok for the moment, but the dialog should imho use a drop down list or a some list window/dialog. |
|
|
|
|
|
|
Thomas McGuire committed changes in /trunk/KDE/kdepim/kmail:
|
Rewrite the layout code of the main widget.
The splitter layout has many interesting special cases, which were all spread around in the code. Now it is all in layoutSplitters().
Now widgets shouldn't be hidden anymore because the splitter sizes were zero after changing the layout. This needed some more config keys.
Cleaned up readConfig a bit, and other places as well. Plus some style fixes. |
|
|
|
|
|
|
Multimedia |
|
Shane King committed changes in /trunk/extragear/multimedia/amarok/src/engine/phonon:
|
Start of a DirectShow (ie Windows) backend for phonon. Only a framework at the moment, nothing implemented, but at least it stops amarok complaining at startup about not having an audio backend.
My intention is to only implement enough to get playback working with amarok, hopefully the qt 4.4 phonon backend will replace this eventually. In the meantime it'd be nice to actually be able to have the windows version do something useful. ;) |
|
|
|
|
|
|
Shane King committed changes in /trunk/extragear/multimedia/amarok/src/engine/phonon/directshow:
|
Implementation of an audio backend for windows using DirectShow. Should mostly work, at least well enough to play a few tunes from the collection.
Amarok is now somewhat usable under windows! :)
TODO: * Code needs more documentation. * Some methods are left unimplementation because Amarok doesn't currently make use of them but probably will before release (eg cross fading). * Doesn't do streaming, only local files. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Jakob Petsovits committed changes in /trunk/KDE:
|
Icon renaming (code changes - KDE/): mail -> mail-message, or mail-message-new, or whatever
...plus a number of other adaptions & fixes of icons that dared to stand in my way. |
|
|
|
|
|
|
|
|
Office |
|
Sebastian Sauer committed changes in /trunk/koffice:
|
Added KoMainWindow::viewFullscreen(bool) to be able to switch between fullscreen and normal modes.
The method does not more then calling showFullScreen()/showNormal() atm but could be later extended to e.g. hide dockers at fullscreen. IMHO it would make sense to introduce a way to differ between different modes and there view-settings to be able to say that e.g. in fullscreen-mode only docker "xyz" should be displayed while in normal-mode others should be displayed. Anyway, that's todo for later :)
To add it to your ko-app, just put a <Action name="view_fullscreen"/> into your apps *.rc file and in the view do something like
actioncollection->addAction("view_fullscreen", view->shell()->actionCollection()->action("view_fullscreen")); |
|
|
|
|
|
|
Jan Hambrecht committed changes in /trunk/koffice:
|
|
The beginning of a simple vector text shape with support for text on path and exact positioning. |
|
|
|
|
|
|
|
|
Jan Hambrecht committed changes in /trunk/koffice:
|
KoPositionSelector: - center radio buttons inside row/column - center all radio buttons inside widget
DefaultToolWidget: - follow some suggestions from Thomas by: - removing group boxes - moving ascpect button to the right side
I hope that is a compromise all can live with.
Comments or suggestions are welcome. :-) |
|
|
|
|
|
|
|
|
|
|
User Interface |
|
Jakob Petsovits committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
|
Tango and GNOME use an icon for document-properties which resembles more our "edit" icon than the currently used "info" one. If you need the "info" icon, please use "help-about", or wait for me porting all that crap.
This move should help for better theme interoperability, and with a little luck we might get rid of both "edit" and "object-edit". |
|
|
|
|
|
|
Jakob Petsovits committed changes in /trunk/KDE/kdebase/runtime/pics/oxygen:
|
|
I realized that we didn't yet have a KDE icon that reliably (also in other themes) can ensure that it does indeed contain the KDE icon and not some generic fallback. So, copy our KDE icon to apps. |
|
|
|
|
|
|
|
|
|
|
Optimise |
|
Educational |
|
Torsten Rahn committed changes in /trunk/KDE/kdeedu/marble:
|
* Sorting out performance problems related to QVariant usage * Adding alignment capability for labels to satisfy ingwa's complains ;) * adding data for english country names (translation of displayed data is scheduled for 4.1) * Some minor fixes and added source comments.
The appearance of features per zoom level still needs trivial fine tuning which I'll do later today. |
|
|
|
|
|
|
|
|
Rafael Fernández López committed changes in /trunk/KDE/kdelibs/kdeui/itemviews:
|
Tiding up the _AMAZING_ patch proposed by John Tapsell. His idea was to place the categories by an int instead of a boolean, depending on if the value is negative, 0 or positive you know that the category is before, the same, or after for two given indexes.
This simplifies amazingly the KCategorizedSortFilterProxyModel. This patch is fundamental for .0. We get rid out of some annoying bugs, so this is a bugfix also (like selections when changing sortings not being kept correctly). |
|
|
|
|
|
|
|
|
Rivo Laks committed changes in /trunk/KDE/kdebase/workspace/kwin/effects:
|
Reworked shadow effect which should bring nice speedup (especially on cards where fill rate is expensive).
It optimizes shadow rendering a lot by eliminating tons of overdraw: - Windows are not forced to be drawn bottom-to-top anymore. - For opaque windows, shadows are drawn only to where they will actually be visible, not under the whole window. |
|
|
|
|
|
|
Other |
|
Development Tools |
|
Dirk Mueller committed a change to /trunk/quality/krazy2/plugins/c++/license:
|
okay, I give up. krazy2 is just too buggy and randomly forgets files during each run.
Therefore I add an optional mode to determine licenses directly. The disadvantage: it is slightly faster than krazy2:
krazy2: 9 min 48s direct: 0 min 3s |
|
|
|
|
|
|
|
|
KDE-Base |
|
Peter Penz committed changes in /trunk/KDE/kdebase/apps/dolphin/src:
|
Allow turning off the feature that additional information might be shown in the icons view. Per default the setting is still on, but for people who prefer browsing with the details view and only temporary switch to the icons view (e. g. for having a larger preview), this feature gets a showstopper (discussed with Eike Hein).
Got the OK from the translator team for adding the new string. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sebastian Sauer committed changes in /trunk/KDE/kdebase/workspace/plasma/applets/kickoff:
|
Added simple KMenu Applet as alternate to kickoff as requested by report #150883
Thanks goes to Robert Knight for this great implementation and to everybody who did provide feedback on that topic :) Through don't expect a full powered mega-giga-menu like we had in KDE3.
So far it's "only" a simple + fast application started. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ian Monroe committed changes in /trunk/extragear/multimedia/amarok/src:
|
The Amarok 1.4 file browser was based on Kate code. To fix ours I just reimported it from the Kate in KDE 4.
* Need to re-add Amarok specific features. Mydirlister and MyDirOperator might be useful for that, so they are not built, but I kept them in the filebrowser directory. * It crashes on quit if you open the bookmark menu. * Revert whatever the heck Hydrogen decided to do while talking to me and sent me into git hell. |
|
|
|
|
|
|
Other |
|
Matt Rogers committed a change to /trunk/bugs/3.0/wizard.cgi:
|
Yay! The wizard works now!
You have to be logged in first before starting though. I still need to fix that, but at least I can report bugs using it now. There are other bugs too but they can be fixed. :) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Michael Pyne committed changes in /trunk/playground/utils/abakus:
|
|
Start on port of abakus to KDE 4. Not much works right now but it at least builds (if you have flex and bison) and does not crash horribly often as long as you leave user-defined functions alone. |
|
|
|
|
|