Issue 139
30th November 2008 by Danny AllenThis Week...
Statistics
Commits | 2906 by 250 developers, 6542 lines modified, 2012 new files |
Open Bugs | 16387 |
Open Wishes | 14652 |
Bugs Opened | 532 in the last 7 days |
Bugs Closed | 840 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/l10n-kde4 |
996
|
/trunk/KDE |
825
|
/trunk/extragear |
261
|
/branches/work |
165
|
/trunk/playground |
113
|
/branches/stable |
101
|
/trunk/l10n-support |
100
|
/trunk/www |
81
|
/trunk/koffice |
52
|
/trunk/kdesupport |
52
|
Lines | Developer | Commits |
197
|
Gilles Caulier |
92
|
43
|
Thomas McGuire |
89
|
139
|
Aurélien Gâteau |
60
|
111
|
Laurent Montel |
59
|
59
|
Khoem Sokhem |
59
|
145
|
Albert Astals Cid |
55
|
169
|
Marc Mutz |
54
|
60
|
Chusslove Illich |
52
|
132
|
David Faure |
50
|
120
|
Andreas Pakulat |
45
|
Internationalization (i18n) Status
Bug Killers
Commit Countries
Commit Demographics
Sex
Age
Contents
Bug Fixes | Features | Optimization | Security | Other | |
---|---|---|---|---|---|
Accessibility | |||||
Development Tools | [] | [] | |||
Educational | [] | ||||
Graphics | [] | [] | |||
KDE Base | [] | [] | [] | [] | |
KDE-PIM | [] | [] | |||
Office | [] | ||||
Konqueror | |||||
Multimedia | [] | [] | |||
Networking Tools | [] | ||||
User Interface | |||||
Utilities | [] | [] | |||
Games | [] | ||||
Other |
There are 54 selections this week
Bug Fixes
Educational
Fix memory leak that could get Plasma to use up to 1 GB of memory ("it's only a small hole...")
KDE Base
Paint effect text onto a QImage instead of a QPixmap.
Makes OpenGL mode faster, XRender slower and works around a subpixel font rendering problem.
Correctly update the extender's label when the battery is unplugged
This commit is dedicated to my beloved notebook luna, which fortunately didn't die last night after the resident cat poured half a glass of water into it.
I'm not a 100% sure this commit fixes the issue fully, but HAL decided to report two batteries after some un- and replugging, so it's pretty hard to test until that goes back to normal (maybe another glass of water is needed!?).
This patch does improve updating the extender's label however, so there you go.
Refactor of the filtering functionality in KDirLister, so that toggling one filter does emit the right added/removed items (the old logic would ignore the effect of other filters still active at the same time).
For instance toggling hidden files/dirs in okular's KFileDialog (which sets a mime filter) would not manage to remove hidden dirs like ".kde" (*), so after doing it a few times you'd have those dirs shown 4 times :)
(*) because the new logic in KDirModel bails out if the list of items to hide contains already-hidden items
Extender Polishing time! The following problems have been adressed:
* Far more correct spacer implementation. This avoids the spacer jumping around while dragging an item. Also adjustSizeHints is now only called once/spacer move.
* Avoid spacer related memleak.
* Only load extenderItems that are actually detached. This way, attached items won't linger around in case of a plasma crash.
* Use utilities-desktop-extra as icon for items with no saved icon (e.g. items where the icon is set using setIcon(QIcon) instead of setIcon(QString)). Sure beats the questionmark.
* Update mask when offscreen extender items are resized when being dragged to avoid screwed up masks (white borders).
* Start the drag only aften being moved a minimum of QApplication::startDragDistance().
* Correct transformation for calls to showDropZone.
* Use the mouse position for positioning items in extenders or panels, the topleft corner for positioning in a desktop containment. This feels the most natural.
* Move items back to the extender they came from when they're dropped into nowhere.
* Some small code style fixes.
Mark download as failed when the favicon was deemed too big (like the still broken <a href="http://planet-soc.com/favicon.ico">http://planet-soc.com/favicon.ico</a>) so that we don't try downloading it over and over again (e.g. while akregator is running).
+ code cleanup
Hectopascals is not in WeatherUtils::convert srcDir so the BBC pressure was converted from something that does not exist hence the always raining pic.
Now should behave like a barometer, meaning that if it's raining but the tendency is "Rising" the pic can show a sun.
This calculation though could be tweaked further.
KDE-PIM
An attempt to repair the encoding mess a bit, when attaching files:
- Don't set the charset to us-ascii if it couldn't be found
- Give up on KEncodingProber, it doesn't work reliable enough.
Instead, add an encoding combobox to the file dialog.
Now it is the user's fault if the encoding is not correct :)
- Don't attempt to set a charset for a non-textual mimetype
- Don't show an empty string for the mimetype
Multimedia
make lyrics cached.
this sets the HTML of the lyrics to be cached.
reasoning: previously, if you had a track playing and resume on start enabled, and had the lyrics applet visible, when opening amarok you would have to press the refresh button to see the lyrics (this is because the scriptmanager *must* be created after MainWindow).
so caching fixes this bug
if you notice *any* lyrics weirdness, please get a hold of me.
Fix using the "Purchase" or "Download" actions from the playlist starting a purchase or download of the wrong album.
Please give this a bit of testing ( just check that the purchase/download of the right album is initated no matter where this action is invoked from ( playlist, browser, tray icon, toolbar, or current track applet ) ).
No need to actually purchase or download anything.
Features
Development Tools
Implement full support for use-building on signal/slot connections.
This is embedded directly into the parser using a new AST node, which also allows complete use-building on the signal/slot arguments.
This means that:
- You can search for all places where a signal/slot is connected
- You can rename signals/slots, and all the connections will be adapted
- You can rename a class that is used as an argument in some signal/slot function, and the connections will be adapted as well
Includes a test.
Of course, this only works when the signals/slots have actually been declared.
Graphics
Added print interface, now printwizard could be usable
NOTE: print to gimp does not work
added new options to set the behavior if unprocessed images are found.
Right now a popup window will appear all the time if unprocessed images are found.
This is annoying after a while, even for me :-)
The new settings will control the way the plugin handles those images:
Ask the user - same behavior as before
Keep - do not remove unprocessed images
Remove - well, this would remove unprocessed images :-)
This is really helpful when playing with the advanced settings and you don't want to be bothered by the popup window all the time.
Add VIM-like navigation (HJKL) in the content view.
Patch by Frederik Gladhorn, thanks!
Add hidden configuration for showing the document title (if any) in the title bar.
Default is true (as before).
Based on a patch by Alejandro Exojo, thanks!
$ kwriteconfig --file okularpartrc --group General --key DisplayDocumentTitle --type bool false
KDE Base
Added configuration option to disable indexing of archive contents since that is what I want to do in Nepomuk.
Getting depth > 0 results is very confusing to the user.
We need to improve the handling of those results before we can enable them again.
The new method cannot be virtual to keep binary compatibility.
Adds support to ePub-specific field for creation date.
Sounds strange but because ePub has almost identical metadata format, odfsaxanalyzer actually handles ePub files without any problem.
Real life example why conforming to standards (Dublin Core in this case) benefits everybody.
Add in a simple tool for measuring load times, in hope I can convince v.t. to use it for his CSS work :)
Added italic font support (applet allowed to use only bold before this commit).
Added "custom color"/"theme color" option.
Applet doesn't use anymore hardcoded colors.
KDE-PIM
Allow the user to deactivate the icon bar.
Tested:
* whatsthis help still works
* kontact plugin still works
1) Use property names from xesam ontology
2) Extract more fields
3) Handle vCards bigger than 1KB (for example containing embedded picture)
It is now possible to search a contact in the list thanks to the search text edit.
It is also possible to search contacts by category.
When a category is selected, the search text edit only works in the particular category.
A problem has been identified: The categories are entered in Akonadi as String.
It will be a problem when the language will change.
A code will be certainly made to go through.
It is now possible to export contacts in vcard format.
The save file dialog window must be modified to enter in little Screens.
Now the export button is on the main window, but it will certainly be transfered to options/config.
Office
Multimedia
Actually implement "Watch folders for changes".
Until now enabling the option did exactly nothing.
Now it starts a 60s-interval timer thatchecks for collection changes.
- compile tutorial1 again
- add outputselector example which shows how to remote control Phonon applications.
Not completely ready for public consumption yet, though
Networking Tools
Utilities
7zip-plugin support overwrite dialog when extracting files.
Games
Another big commit, the Kigo GUI moved from a per-screen based approach (with a GameScreen, SetupScreen, ErrorScreen) to a dockwidget based approach with several small widgets which are shown/hidden depending on the game state.
This way Kigo becomes a lot more customizable and expandable in the future.
It also concentrates all GUI-related code in the MainWindow class while the other GUI classes just implement additional logic (like showing SGF file information or a move history list).
The undo/redo support is now more feature-complete with a little dockwindow showing the move list.
I also added a little visual hint which is shown when the user is about to place his next stone.
Before that it wasn't always clear where a stone will be placed when the mouse is clicked, this should be more obvious now.
Last but not least the usual code refactorings and cleanups...
Artwork update for Ktuberling.
Sound theme will follow shortly
Optimization
KDE Base
Use O(M+N) algorithm instead of O(M*N) for collecting selectors list on some heavy sites, like youtube, it could save 100-300ms
Improve startup speed by;
* delaying krunner startup till plasma is done and
* don't wait for krunner to finish and
* register the adaptor as soon as possible and load the runners as late as possible
Optimize selectors more:
for this time, optimize how we choose selectors to check for possible match, do some smart precomputation and hashing so we could easily find only selectors with same id, class and local name as checked element saved a lot of CPU, 10x speed-up on my synthethic test with css based on facebook ones, and up-to 50% improvement in style computation for real life pages
Other
Development Tools
- The shortcuts to navigate are now: ALT+Arrows and ALT+Return.
- When pressing+releasing ALT fast in completion-list or quickopen, the navigation-widget of the current item is toggled.
- When keeping ALT pressed for some time, the navigation-widget is only shown until ALT is released again. This allows only peeking into the additional information.
- When the code-browser is visible and the cursor is in the editor, it is now possible to navigate within the code-browser using the ALT+Arrow and ALT+Return shortcuts.
Graphics
The imageslist widget used in IPod, Flickr, SendImages and RemoveRedEyes has been refactorized to be a common kipiplugins widget. Flickr and RemoveRedEyes have already been ported.
The widget can be used "as it is", if no special features or columns are required. It will display "Thumbnail" and "Filename" column by default. It also provides 3 User Columns, as shown here: <a href="http://www.flickr.com/photos/26732399@N05/3066278002/">http://www.flickr.com/photos/26732399@N05/3066278002/</a>
Also a plainPage widget is added, where a plugin can add additional widgets if needed, like the summarybox in RemoveRedEyes plugin.
If you need additional methods, just derive your own class from the common imageslist.
The cstor of the ImagesList widget takes two additional parameters:
allowRAW:
---------
allow RAW files to be added [default: true]
If false, don't load RAW files and send a signal so that the plugin can react in this case
autoLoad:
---------
load images from interface directly when ImagesList widget is created [default: true]
I needed to provide this for RemoveRedEyes because I need to load the images later, otherwise some signals will not work
To change the column setup, you can use the widget as follows:
m_imglst = new KIPIPlugins::ImagesList(iface, true, true, parent);
m_imglst->listView()->setWhatsThis(i18n("This is the list of images to upload on your Flickr account."));
// set additional column
m_imglst->listView()->setColumnEnabled(KIPIPlugins::ImagesListView::User1, true);
m_imglst->listView()->setColumnLabel(KIPIPlugins::ImagesListView::User1, i18n("blabla"));
// or use this wrapper method instead
m_imglst->listView()->setColumn(KIPIPlugins::ImagesListView::User1, i18n("blabla"), true);
For additional information, take a look at the already ported plugins (Flickr and RemoveRedEyes).
KDE Base
for optical drives say "eject", for other storage things it's "safely remove"
green flag from i18n people
It works nicely in the plasmoidviewer... why are the icons spaced out on the panel?
Does the panel even pay attention to the KeepAspectRatio hint?
I guess not.
I think we need the plasmoidviewer to actually act like the panel in linear form factors.
Sorry for the mountains of debug.
Restore KDE 3 behavior: When only one application is available, show "Open with <app>" action on the top-level.
No new string has been introduced, the string was already available before the last 2 commits (-> 1 hour ago :-))
When modifying the compositing settings, save a backup of kwinrc to another file to be able to revert if the X server crashes while testing the new config. Also fixed a little bug in kcmkwincompositing (dropdowns on the general tab were not updated correctly) and cleaned up the code a bit (removed a few unneeded function calls and stale connects).
See the conversation on the mailing list ("Patch for bug 174769", <a href="http://lists.kde.org/?l=kwin&m=122696916611602">http://lists.kde.org/?l=kwin&m=122696916611602</a>) for further information.
Initial working directory for the JOLIE scripts needed by the Plasma<->JOLIE integration layer.
- Compute the match-colors by tinting the background softly with green/blue, instead of mixing.
This makes the colors friendlier to the eye, and should better adapt to different color schemes.
- For expanded items, use the tooltip base color, instead of a hardcoded color.
paint the background of the last and notifying items in the system tray with a different background
new graphics for the expander arrows
Reduce wobblyness when resizing the window by locking the opposite window corner of the mouse cursor.
This greatly improve the wobbly experience when resizing.
Patch by Toby Dickenson
patch by Andrew Lake to free-resize applets from the corner rather than the center; need to do some work on applet handle right now and i don't want this patch going sideways and he's not online right now, so ...
Maybe a first approach on what have been discussed on usability mailing list?
Remove from the toolbar the kind of view switching.
Let the preview action, and the zoom slider.
Usability improvements:
* search next on pressing return
* select old search text on pressing ctrl+f again
Utilities
Just in time before the freeze, start of KTimer doc for blauzahl!
Give some life to ktimer documentation.
Work done by blauzahl, it was just me being late commiting it as she doesn't have a svn account yet.