Issue 251
2nd September 2012 by KDE Commit-Digest TeamContributors
Martin Cigorraga
This Week...
Statistics
Commits | 2423 by 181 developers |
Open Bugs | 21315 |
Open Wishes | 15909 |
Bugs Opened | 308 in the last 7 days |
Bugs Closed | 342 in the last 7 days |
Commit Summary
Module | Commits |
/trunk/l10n-kde4 |
208
|
/branches/stable |
138
|
/trunk/l10n-support |
62
|
/trunk/KDE |
53
|
/trunk/www |
33
|
/krita/ui |
12
|
/kimpanel/src |
12
|
/krita/sketch |
12
|
/words/epub |
11
|
/kexi/doc |
10
|
Files | Developer | Commits |
201
|
Laurent Montel |
74
|
207
|
Aleix Pol Gonzalez |
69
|
207
|
Xavier Besnard |
69
|
201
|
Ben Cooksley |
67
|
150
|
Boudewijn Rempt |
50
|
111
|
Marco Martin |
49
|
144
|
Ingo Malchow |
48
|
132
|
Alexander Richardson |
44
|
129
|
Chusslove Illich |
43
|
129
|
Gilles Caulier |
43
|
Internationalization (i18n) Status
Language | Percentage Complete |
Estonian (et) |
98%
|
French (fr) |
96%
|
Dutch (nl) |
96%
|
German (de) |
94%
|
Italian (it) |
91%
|
Danish (da) |
88%
|
Chinese Traditional (zh_TW) |
84%
|
Low Saxon (nds) |
84%
|
Catalan (ca) |
84%
|
Hungarian (hu) |
81%
|
Bug Killers
Person | Bugs Closed |
djarvie kde org |
35
|
Jekyll Wu |
29
|
Christoph Feck |
28
|
Myriam Schweingruber |
27
|
Laurent Montel |
16
|
Thomas Lübking |
14
|
Jarosław Staniek |
14
|
Gilles Caulier |
11
|
Hugo Pereira Da Costa |
11
|
Thomas Zander |
8
|
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 108 selections this week
Bug Fixes
Development Tools
Support iterating over lists of tuples while unpacking those.
Code example:
c = [(1, 2)]
for a, b in c: print a, b # a, b are ints
should fix
Reuse the patch document instance pointer
Instead of opening a new one.
I got some crash there, unsure why, but it doesn't make sense to extract
it again anyway.
Improve the way we map to cmake's variables model
Now we raise a variable scope every time we enter a CMakeLists.txt file.
It solves a bug I reproduced many times with some test/CMakeLists.txt files
defining something like:
set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
This while not removing the variable when exiting the scope would make it all fail.
Don't crash if DISABLE_KEYGUARD permission is not set.
CC
Fix a crash when a container used in a foor loop has no content type
Educational
Showing J2000.0 coordinates in the Details dialog.
TODO:
1. Fix bugs and make sure that we are _actually_ showing J2000.0.
We _know_ this is not the case really, as per a recent discussion
on the kstars-devel Mailing List -- some stars have catalog
coordinates from a different epoch, but we assume they are J2000.0;
This leads to visible errors in matching DSS overlays, for example
(which I think I did notice at the Texas Star Party).
2. Improve the Astroinfo article on precession, to which the J2000.0
RA and Dec labels are hyperlinked. The article on precession
doesn't talk about epochs.
Fix crash when calling (x(x^2))^2
When resolving the type of an arithmetic function, check that all the
operands are valid first.
Fix bug affecting Azimuthal Equidistant projection -- when the object
was in the center of the field in azimuthal equidistant (for instance,
by doing right click -> Center), the X,Y coordinates would become nan
and the object would not be drawn.
The bug was traced down to an x/sin(x), where the limiting case of x =
0 was not handled, resulting in a 0/0, yielding nan.
BUG
Fix allowed connections in Graph data structures.
Allow self-loops for all graphs, check non-multigraph property also
for directed graphs.
Fix problem in loading 3D data cubes. KStars does not support loading of color FITS images, however, now it is able to read the first 2D image successfully.
Graphics
Fix Tools->review inconsistency when switching tool
FIXED-IN: 4.9.1
KDE Base
Fix for the issue where the focus goes to the location bar when opening a link
in new foreground tab.
FIXED-IN: 4.9.1
REVIEW: 105984
Restore --notransparency option for NVIDIA users
Some NVIDIA users still require this option for Konsole to work as
expected
This reverts 66b4a96e9353525703db77b189771a454f38f03d
Thanks to Matthias Kretz for patch/info.
FIXED-IN: 4.10
Fix crash when a part misbehaves and doesn't create a widget.
E.g. I just got this
KonqFrame::attach: The part KWDocument(0x28f5100, name = "document_0") didn't create a widget!
Testcase: konqueror <some .doc document on http>
(possibly with a broken koffice/calligra installation...)
(cherry picked from commit 637c39ae98c7a78d8cb359cb247ce97038bd2bce)
Don't associate an app to a launcher if both have valid but different launcher URLs.
do not show clientmenu if button is down for 2nd click
if one clicks very fast, the timeout will coincident with the
second downtime (between press and release) what was used to be
interpreted as "still down"
REVIEW: 106227
FIXED-IN: 4.9.1
fix SPARQL query for the series table model
kinotify: Check if the dirIterators list is empty before iterating
kshareddatacache: Use proper return value check for timedlock.
I discovered that the return value was being checked as if
pthread_mutex_timedlock used errno for return values while doing a code
review for bug 305023. In reality the only non-error return is 0,
anything else is an error code which is returned directly.
I'm making the fix now so it can join KDE Platform 4.9.1.
Reserve space for text and free space bar
Reserve the height for the text and the
free space bar while invisible, to avoid jumpyness
FIXED-IN:4.9.1
fix update order, since we use lazy update. we need to ensure the order.
elide completion entries in the middle
The completion list did show the URLs as right-elided entries,
which is not optimal.
For filenames and man pages at least middle-elide is much more sensible.
FIXED-IN: 4.9.1
REVIEW: 106183
Fix uninitialized memory and logic error in PaintRedirector
The refactoring of Compositor starting with b1739c3 caused some
regressions due to variables in Workspace and Compositor not
being initialized. Furthermore there was a boolean logic error
in PaintRedirector causing the decorations not to paint.
ignore dockers for showingDesktop state
also use a common funciton to decide whether or
not to break the state
FIXED-IN: 4.9.1
strip line breaking characters from URL on text input
This patch removes line-breaking chars when an URL is entered.
Very handy if you paste URLs from e.g. an email which shows
the complete URL broken into multiple lines.
FIXED-IN: 4.9.1
REVIEW: 106184
Ignore SettingsCompositing changed in Aurorae
Not needed and causing troubles when restarting Compositing.
fix bounding box in writing
A very old bug reappeared. Obviously Qt internals have changed since then.
FIXED-IN: 4.9.2
REVIEW: 106290
FileIndexer: Do not check for new files on startup
Only check for changes if the strigi version changes, cause in that case
their may be a new plugin or an earlier plugin may have been fixed.
REVIEW: 106256
properly deal with invalid colors when calculating cache keys.
using color.rgba() for an invalid color corresponds to solid black, which in turns conflicts with the cache
value for such color. We use "transparent black" instead.
FileIndexer: Fix a deadlock by making the mutex recursive
The following deadlock occurs during the first run of the
nepomuk-fileindexer, if you're on batery
QMutex::lockInternal()
QMutexLocker::QMutexLocker
Nepomuk2::IndexScheduler::suspend
Nepomuk2::EventMonitor::pauseIndexing
QMetaObject::activate(QObject*, QMetaObject
Nepomuk2::IndexScheduler::indexingSuspended
Nepomuk2::IndexScheduler::suspend
Nepomuk2::EventMonitor::pauseIndexing
Nepomuk2::EventMonitor::slotPowerManagementStatusChanged
Nepomuk2::EventMonitor::EventMonitor
Nepomuk2::FileIndexer::FileIndexer
This only happens during first run cause that is when the EventMonitor
is connected to the IndexScheduler
REVIEW: 106230
QueryService: Use heuristics to determine when to re-run the query
Instead of running all the queries any time ANY data in the database
changes.
REVIEW: 106238
KDE-PIM
in restoreHeaderState(), make sure there is a model before attempting
to resize the title column.
FIXED-IN: 4.9.1
Fix Bug 230886 - allow (un)subscribing multiple folder at once
FIXED-IN: 4.10
in showPasswordDialog(), wrap a new KPasswordDialog in a QPointer
for crash safety.
MERGE: 4.9
(cherry picked from commit c022193cb476d5e34eb65fc364bd071196ce3597)
in bgColor(), add a crash guard for todo == 0
FIXED-IN: 4.9.1
MERGE: master
Fix Bug 305248 - kmail often crashes when hitting "l" (lower L) for a
list reply
We can't parse address but don't crash
FIXED-IN: 4.9.2
Waou ! fix crash when 2 filters had same i18n (found in french).
Will add i18nc for 4.10 but it doesn't crash now
This fixes a crash triggered by a QSortFilterProxyModel on top of this model. It also fixes two issues which have been worked around in the tests.
I have yet failed to write a unit test for the actual issue.
The issue is likely related to what is mentioned in 18dbff53fec936b6ebfe78f3b33c5e82ba8626c5
Killing is wrong here, that will overwrite the error code we just set.
Also, the job has already been terminated by the session when we get here.
Fix Bug 305346 - KMail never automatically encrypts E-mail
config was not used
FIXED-IN: 4.9.1
Office
Fix unwanted offset after cancel slide show.
When running a presentation that does not fill the full screen e.g. due to
screen ratio and slide ratio do not match and the presentation is stopped
during the presentation there can be an offset in the slide after the presentation
mode is left. The offset happens only if the zoom level is smaller then the screen
or it is fit to screen/fit to width. Zooming in fixes the problem once the slide
is bigger then the screen.
Fix handling of multiple columns
: On the Dashboard, scheduled transactions have wrong number of decimal places
Fixed a limited zooming bug in KoCanvasControllerWidget
When you tried to zoom-in/out with current zoom level equal to the
maximum/minimum allowed zoom level the canvas jumped, because the
preferred center used to change, but the zoom level not.
Now the setting of the new preferred center is part of
KoZoomController::setZoom so it can calculate the right value
of the offset basing on the real change of the zoom level.
Query Designer: Make string concatenation operator || work
FIXED-IN:2.5.2
REVIEW:106199
Change Sparql Query/ResourceWatcher from QThread::moeToThread to QtConcurrent
In rare cases having the ResourceWatcher running in a thread lead to multiple access of the resource types and crash the program.
As threading is just needed to offer a more responsive startup it is done via QtConcurrent.
The ResourceWatcher and its connected slots for new/changed resources will be run in the main gui thread instead
Fix bug 305794: Uncompressed ODF is saved in wrong directory
This fix does that the old code tried to do but failed: Check if the
given path is a directory. But it does so using QDir so it's actually
portable.
FIXED-IN: 2.5.1
REVIEW: 106200
: Account panel shows Edition - should be Addition
Fix deform brush painting
Bring back some removed code from iteratorsNG porting
o provide sampledRawData in KisRandomSubAccessor
FIXED-IN:2.5.2
REVIEW:106222
Fix bug SQL Editor's history is not functional by removing it in 2.6
Also remove unused code in sql editor.
REVIEW:106309
Multimedia
Fix lastfm build for some people
Some users, for reasons unknown, were getting QPixmap incomplete type
errors building the LastFm plugin.
FIXED-IN:2.7
User Interface
Fix endless recursion with MDI shadows
Thanks Christoph Feck !
REVIEW: 106240
Fixed positioning of tabs when manually reordering with right mouse button
Made 'drop target' animation consistent with where tab is actually dropped
Cleanup code.
Fix bug when resetting motions to -1 on enter event (stupid !)
Utilities
Create a QValidator for MixedNumber.
Also I have added an incomplete mixednumber test. I needed it to solve a bug
which I introduced when I was working on this commit.
Furthermore, I removed the default value for locale_aware, in my opinion it's
too prone to mistakes.
This new validator isn't used yet, but it will be useful in the future.
Use a different D-Bus object path for each Ark::Part.
So far, all Ark::Part instances used the same D-Bus object path,
"/DndExtract", to receive drag'n'drop notifications.
This does not work correctly ever since we started supporting using Ark as
an embedded KPart (for previewing archived inside Konqueror or Rekonq, for
example). In this case, the object path is added to the embedder (the
`konqueror-5654' service, for example). If one previews multiple archives in
different tabs, multiple calls to QDBusConnection::registerObject() will be
made and only the first one will succeed, since we are always trying to
register the same path.
Fixing this involves touching separate parts of the code:
o Use a different object path for each KPart instance, just like
KateDocument or nsplugin do. We do this by keeping a static counter that
is incremented each time a KPart is created and is part of the path name.
o Use other, more specific mime types for the data we send when dragging
out of Ark. So far we used "application/x-kde-dndextract" and passed the
D-Bus service as its value. We now pass this value in the newly-created
"application/x-kde-ark-dndextract-service" mime type, and the object
path, which is now passed to ArchiveModel, in
"application/x-kde-ark-dndextract-path".
o Also use a more specific interface name in the XML file. While here,
generate the .cpp and .h files with CMake instead of keeping these
auto-generated files around for no purpose.
o ArchiveModel::mimeTypes() has been adjusted to indicate the mime types we
actually use on drag'n'drop. The previous list was mostly bogus, as we
only use the mime types indicated above.
As it can be seen, applications which support drag'n'drop from Ark also need
to be adjusted to use the new D-Bus interface. Currently, the applications
are Dolphin, the Folderview plasmoid and a Stack Folder plasmoid in
playground. They are all going to be updated accordingly in tandem with this
commit to both KDE/4.9 and master. Users using SVN/git directly might
experience some trouble if they update one part but not the other, but there
is not much we can do in this case.
BUG: 304860
FIXED-IN: 4.9.1
FIXED: wrong error message about missing editor plugin
Don't show message about missing editor plugin
when it is available, but fails to open a file.
Features
Development Tools
Make sure the build.ninja exists before reducing the target list
This way if we have a sub-project, the targets will be computed and no
unneeded stuff will be compiled
Improve usability of Reload All action
When reloading all files, don't reload the "Untitled %1" files, it doesn't
make sense and it shows an annoying dialog.
Add support for bootstrapping CMake.
This small buildsystem allows kdesrc-build to bootstrap CMake (from git,
obviously) onto a system that does not have a recent-enough packaged
version of CMake.
The "bootstrap" process is treated as module configuration, so
"configure-flags" is the relevant option (don't worry, those won't be
inherited from global configure-flags). The rest of the build/install
uses make as normal, which is implemented via fallback to
GenericBuildSystem.
support multiple location breakpoints
- turn breakpoint numbers/ids into QString (as they can be "1.1")
Add Thread and Frame Information on Execution
Moved the code that adds frame and thread information when not present
in the command already from the queueCmd method to the executeCmd
method and added some info at the debug strings to make clear that the
queued command will be modified upon execution. This is needed in order
to be able to queue commands whose information depend on previous
commands in the same queue.
REVIEW: 105210
Educational
Add two abilities to the FOV calculator:
1. Have a pre-defined dropdown list of popular Eyepieces and their
apparent FOVs, in addition to manual entry.
2. Provide an option to compute the telescope focal length from
f-number and aperture diameter (in both mm and inch). Amateur
astronomers continue to cite their telescope specifications using
the diameter in inches and the f-number, eg: 8" f/8.
FEATURE
Graphics
When there is only one page, "Opposite pages" should have no effect
FIXED-IN: 4.10.0
KDE Base
Allow Scripts to add menus to the UserActionsMenu
A script can register a callback through registerUserActionsMenu to be
informed when the UserActionsMenu is about to be shown. This menu calls
the Scripting component to gather actions to add to a Scripts submenu.
The Scripting component now asks all scripts for the actions, which will
invoke the registered callbacks with the Client for which the menu is to
be shown as argument.
The callback is supposed to return a JSON structure describing how the
menu should look like. The returned object can either be a menu item or
a complete menu. If multiple menu items or menus are supposed to be added
by the script it should just register multiple callbacks.
The structure for an item looks like the following:
{
text: "My caption",
checkable: true,
checked: false,
triggered: function (action) {
print("The triggered action as parameter");
}
}
The structure for a complete menu looks quite similar:
{
text: "My menu caption",
items: [
{...}, {...} // items as described above
]
}
The C++ part of the script parses the returned object and generates
either QAction or QMenu from it. All objects become children of the
scripts QMenu provided by the UserActionsMenu.
Before the menu is shown again the existing menu is deleted to ensure
that no outdated values from no longer existing scripts are around. This
means the scripts are queried each time the menu is shown.
FIXED-IN: 4.10
REVIEW: 106285
Introduce dedicated suspend and resume methods on Compositing interface
The new methods suspend and resume are meant to provide a better way to
influence the current compositing state than toggleCompositing. In
addition an overload setCompositing(bool) is added. The resume method is
implemented in a way that it can be used to try to start the compositor
again in case it failed.
Internally the method suspendResume is dropped as it does the same as
setCompositing just with inverted binary logic and worse name. The
compositingToggled signal is now emitted from within setup and finish to
ensure that especially the compositingToggled(true) signal is only
emitted if the Compositor could start.
Also the updateCompositingBlocking is adjusted to use the new dedicated
suspend and resume methods instead of the toggle method.
REVIEW: 106273
QueryTests: Run the query beforing adding rows
Instead of having columns of (query, expectedResults), we have columns
of (actualResults, expectedResults). This way, we are sure that no other
tests data is intefering with our results.
Add keyboard navigation to Kickoff GUI (within and among all Views)
Fixes regression in KDE 4.9. Enables movement between views with tab
key.
297842
FIXED-IN: 4.9.1
REVIEW: 106125
KSycoca now rebuilds the db by starting kded5 and calling 'recreate'.
This removes the dependency on KToolInvocation::klauncher() at compile time,
and on kdeinit/klauncher at runtime.
Clean containment handling code:
- Take advantage of the presence of the "plasmoid" property to determine
whether we are running in containment mode
- Avoid warning on stderr when not running as containment.
- Use "isContainment" as property name instead of "embedded"
Improve contrast of Oxygen colors
It mainly improves readability of ActiveText over Window background
FIXED-IN: 4.9.2
Added QJSON as optional dependency in kde-workspace, disabling chrome support in Bookmarks Runner if not found
Make the Compositor a proper Singleton
The Compositor class actually behaves like a Singleton so it should be
one. Therefore four static methods are added:
* self() to access the Singleton
* createCompositor() to be used by Workspace to create the instance
* isCreated() to have a simple check whether the Singleton is already
created
* compositing() as a shortcut to test whether the compositor has been
created and is active
The isCreated() check is actually required as especially Clients might
be created and trying to access the Compositor before it is setup.
Build option to disable the Oxygen window decoration
This build option is added to make it easier to build just KWin without
kde-workspace. This is a common requirement by developers wanting to
contribute to KWin and only want to build KWin but use everything else
from their normal distribution.
Building KWin standalone is very often difficult due to Oxygen. If the
library has changed it is not possible to build just KWin without also
building the workspace libs and if you do so you run into ABI problems
when trying to start KWin - either the decoration or the style is
crashing due to not matching libraries.
To circumvent this common issue for new developers this build option
is introduced to just exclude the Oxygen window decoration and defaulting
to Plastik.
Of course by default this option is turned ON, so that the Oxygen
decoration gets build. By default there is no change at all.
REVIEW: 106303
Make sure the plasma desktop scripts are sorted in the correct order
Instead of sorting the scripts according to their absolute paths,
which would cause scripts installed by packages to always end at
the top, scripts should be sorted by their relative path i.e.
plasma scripts from each directory that occurs in the path
should be sorted and then merged together to form a super list
REVIEWED BY: Marco Martin
Make Startup Feedback Effect aka Bouncing Cursor respect global size for small icons
REVIEW: 106166
FIXED-IN: 4.9.1
Add support for multi screen
implementing new knumber library which is a lot cleaner in implementation
simpler in design and can make use of MPFR for arbitrary precision
trig math
Merge branch 'ivan/desktop-events-log'
- Enabled logging of desktop events
- Statistics plugin ignores applications set in the kcm
- Plugins are now regular modules.
(And their features can be queried like for normal modules.)
- Renamed sqlite plugin to resourcescoring
Splitting up of KWin's global D-Bus interface
Two new interfaces are introduced:
* org.kde.kwin.Compositing
* org.kde.kwin.Effects
The Compositing interface is generated from scriptable elements on the
KWin::Compositor class and the Compositor is exported as /Compositor.
It provides the general Compositing related D-Bus methods like whether
the compositor is active and toggling and so on.
The Effects interface is generated from scriptable elements on the
KWin::EffectsHandlerImpl class and the instance is exported as /Effects.
It provides all the effects related D-Bus methods like loading an effect
or the list of all effects.
This removes the need to have all these methods provided on the global
org.kde.KWin interface. For backwards compatibility they are kept, but
no longer provided by the Workspace class. Instead a new DBusInterface
is generated which wrapps the calls and delegates it to one of our three
related Singleton objects:
* Workspace
* Compositor
* EffectsHandlerImpl
Improve QAbstractItemModel integration in Plasma.Core QML components
Introduces QAbstractItemModel to QDeclarative when setting up
the plasma core components.
This way we don't have to cast to the type ourselves and produce proper
QML errors if the type is not correct. This happened with Plasma::SortProxyModel.
REVIEW: 106267
Office
Move parsing of ODF metadata into a new class: OdfParser
Enabling Sheets to show plugin items on Configure Sheets/Plugins page
REVIEW: 106220
Implement multitouch painting in krita
This moves the multihand painting code into the freehand tool helper
and reorganizes the data to take care of multiple input points per
event, or generated output points (for multihand). The api is now much
simpler, the code a bit more complex.
Limitations:
* additional touch points during painting are not detected
* dropping touch points during painting is not detected
* it's not tested because the canvas doesn't show up for me.
Add current filename to the settings object
So that can be passed somehow from the recentimagesmodel to the settings
object, and from there queried by the main view's qml file, which can
ask the view to load it then by setting the document property.
That's not done yet... And similar things needs to be done for loading
from clipboard, from creating an image at a certain size or from a template.
Networking Tools
Display avatars in logs and more information in log header
REVIEW: 106228
Update the Account Icon toolbar item icon size when the toolbar icons size changes
Reviewed-by: Martin Klapetek
FIXED-IN: 0.5.1
Use KTp::TextUrlData to parse URL's instead of custom parsing
REVIEW: 106261
User Interface
Do not set argb X property on widget's window, if not created.
Optimization
Development Tools
Optimized the parser:
- Reduced significantly the memory usage for storing comments.
- Renamed the RAst struct to ast_t.
- Now the rb_compile_file just accepts one argument, containing all the
options. This is done because the contents and its length are already
calculated and, therefore, the parser can avoid potentially expensive
calls to strdup and strlen.
Improve reaction when "install as root" is true.
If that's the case, create two jobs one for building and the other for
installing. This will make sure we're not building with root.
Educational
Better behaviour when drawing polar curves (for cases where autoupdate is on and we have to use all the viewport). Also, new curve type: Implicit polar curve :). Polar curves (explicit and implicit) will have this notation: t:theta and r:radius
In plotter2d if m_dirty is true then do not draw (the logic in the if is m_dirty==false then skip draw)
Graphics
Remove debug painting off tiles manager
The extra painting is for debug purposes only. It may change depending
on what the developer wants to fix and should not go upstream.
KDE Base
Split out the windowing system related part of SceneOpenGL
The handling for creating and managing the OpenGL context is
split out of the SceneOpenGL into the abstract OpenGLBackend
and it's two subclasses GlxBackend and EglOnXBackend.
The backends take care of creating the OpenGL context on the
windowing system, e.g. on glx an OpenGL context on the overlay
window is created and in the egl case an EGL context is created.
This means that the SceneOpenGL itself does not have to care
about the specific underlying infrastructure.
Furthermore the backend provides the Textures for the specific
texture from pixmap operations. For that in each of the backend
files an additional subclass of the TexturePrivate is defined.
These subclasses hold the EglImage and GLXPixmap respectively.
The backend is able to create such a private texture and for
that the ctor of the Texture is changed to take the backend as
a parameter and the Scene provides a factory method for
creating Textures. To make this work inside Window the Textures
are now hold as pointers which seems a better choice anyway as
to the member functions pointers are passed.
Don't watch recursively for kconf_update files
Otherwise this triggers on $XDG_DATA_HOME/kconf_update/log/update.log
Everyone is installing the update files directly under kconf_update anyway.
Optimize sending of LiteralValue over the socket
Instead of sending it as <literal-value-string><literal-value-type>.
Send it as a string/int/bool/whatever when possible, and only send it
with the full type as a last resort.
This results in code duplication, but that should be fixed by deriving
both the classes from a common class.
REVIEW: 106233
ResourceWatcher: add *count() methods for resources, properties and types
These count methods are faster than returning the full list and then
counting the number of items in the list.
This also fixes an infinite loop where a temporary Resource is created
when querying for the number of resources being watched. The temporary
Resource is deleted, which results in ResourceData::resetAll being
callled which again called ResourceWatcher::resources(), and
the cycle countinues.
Ported from nepomuk-core 7bef7c53d3b9a971c203ed4391bf19ac79f381f5
Add functions to determine the strigi version at runtime
This way applications can easily detect the current version of
libstreamanalyzer and change their behavior during runtime.
REVIEW: 106254
Client: Cache the current bindings
Cache the current bindings when running the next() in a local variable.
This way we avoid asking for it during each operator[] and current.
Results in a MASSIVE performance boost - 6 secs vs 1 sec on a large
query which had a lot of bindings.
REVIEW: 106231
KDE-PIM
Now allow to remove specialmailcollection (need kdepimlibs)
Speed up statistics queries from O(n^2) behavior by avoiding a double inner join.
On Postgres 9.1 the query that uses two inner joins to limit the results
to collections with items with certain flags (like SEEN) is extremely
inefficient, for as yet unknown reasons. To work around this, we filter
manually by leveraging an in-memory cache of flag names to ids and using
those ids to filter.
Approved by vkrause.
Do not kill running jobs from Session.
This will become a problem once kill() will actually reconnect in this
case, as that's exactly what we are doing here already. So, reset the
running state before calling kill(), it does barely more than emitResult()
then.
in startSmtpJob(), use KPasswordDialog like we did in libksieve's
Session class.
MERGE: 4.9
Office
Change QRegion to QRect in KisIndirectPaintSupport
Instead of adding a rect to a region for every dab, we coalesce the
footprints into a big rect. This makes painting faster, but at the end
of the stroke we do much more work since we bitBlt the whole united
rect to the target layer, instead of just the rects the stroke touched.
Note: we might be able to remove the mutex, too.
Implement hatch background as defined in odf.
With this patch the different styles, freely defined angles and distance between
the lines of the hatch is supported.
This patch also changes the KoColorBackground to also use the d pointer of the
parent which reduces the memory needed for a KoColorBackground.
REVIEW: 106115
Networking Tools
Use MultiChat theme for multi chat logs
REVIEW: 106243
FIXED-IN: 0.5.1
Other
Development Tools
Use a CMake-specific module-configured key for KDE builds.
Previous to this the GenericBuild fallback of 'Makefile' was used to
test if a configure step had been run, but this only works for CMake
when the default generator is being used.
The 'ninja' generator is available in the latest CMake and seems to be
popular. Instead of hard-coding support for ninja we just try to support
something CMake-specific. Those who wish to use ninja should be able to
use cmake-options to add the appropriate -G flag, and
custom-build-command to specify ninja.