30th November 2008by Danny Allen
|Commits||2906 by 250 developers, 6542 lines modified, 2012 new files|
|Bugs Opened||532 in the last 7 days|
|Bugs Closed||840 in the last 7 days|
||Albert Astals Cid||
Internationalization (i18n) Status
There are 54 selections this week
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.
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
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.
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.
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 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
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.
Allow the user to deactivate the icon bar.
* whatsthis help still works
* kontact plugin still works
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.
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...
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
- 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.
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:
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
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
// 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).
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.
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.