Issue 239

10th June 2012 by KDE Commit-Digest Team

Contributors

Marta Rybczynska
Jaka Kranjc
Myriam Schweingruber
Frederik Schwarzer
Shafqat Bhuiyan

This Week...

Multiple new features for a non editable view of Animations in Calligra; contour data is created and removed using image analysis from UI and a ClipCommand, a page/slide navigator control for the statusbar is used in Stage and Flow; Kexi gets and option for setting default length limit of Text values and Kexi forms get Date Picker widget. Pate plugins (plugins in Python) can add configuration pages to Kate's settings; initial version of Script IDE submitted. Public Transport gains new KDevelop-like TimetableMate GUI, update accessor file format and fixes in a single commit. Faster computation of the shortest path in rocs. SoK and GSoC work in several projects, including Plasma, Marble and Cantor. Bugfixes in Calligra, Amarok, Konversation, Muon and other programs. Amarok developers start giving bug fixes as birthday presents. Bugs status: 438 opened, 419 closed.

Statistics

Commits 2595 by 176 developers
Open Bugs 22181
Open Wishes 16906
Bugs Opened 438 in the last 7 days
Bugs Closed 419 in the last 7 days

Commit Summary

Module Commits
/trunk/l10n-kde4
235
 
/branches/stable
91
 
/trunk/www
43
 
/trunk/KDE
39
 
/trunk/l10n-support
25
 
/src/lib
25
 
/krita/ui
16
 
/branches/work
16
 
/playground/pate
14
 
/pate/src
13
 
Files Developer Commits
255
 
Roman Paholík
85
 
222
 
Laurent Montel
75
 
204
 
Dennis Nienhüser
69
 
174
 
Boudewijn Rempt
60
 
147
 
Harald Sitter
50
 
78
 
Sayak Banerjee
40
 
114
 
C. Boemann
38
 
108
 
Sebastian Kügler
36
 
105
 
Miha Čančula
35
 
75
 
Gilles Caulier
33
 

Internationalization (i18n) Status

Language Percentage Complete
Brazilian Portuguese (pt_BR)
100%
 
Portuguese (pt)
100%
 
Dutch (nl)
96%
 
Estonian (et)
96%
 
German (de)
95%
 
French (fr)
91%
 
Italian (it)
90%
 
Danish (da)
87%
 
Low Saxon (nds)
86%
 
Chinese Traditional (zh_TW)
85%
 

Bug Killers

Person Bugs Closed
Myriam Schweingruber
36
 
Jekyll Wu
34
 
Jeroen van Meeuwen
25
 
Ben Cooksley
23
 
Christoph Feck
23
 
Laurent Montel
19
 
Peter Penz
18
 
Anne-Marie Mahfouf
14
 
Matěj Laitl
14
 
Christian Mollekopf
14
 

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 78 selections this week

Bug Fixes

Educational

Andreas Cord-Landwehr committed changes in [rocs] src/Scripts/IncludeManager.cpp:

Do not remove comments from script before starting engine.

The include-script method removed all comment lines before the script
file was given to the engine. This caused that the line numbers of
script errors, possibly given back by the engine and displayed at the
debug output, were wrong.
This partily fixes the problem for script files _without_ includes.

Dennis Nienhüser committed changes in [marble] src/plugins/runner/yours/YoursRunner.cpp:

Don't ignore via points, but refuse to calculate a route instead.

Dennis Nienhüser committed changes in [marble/sok-2012-plasma-active] /:

Improve favorite mode.

Previously the favorite only mode was implemented by each plugin on its
own as a filter on the bbox selection. This causes a huge overhead in
network requests (most of the data is filtered) and prevents retrieving
all favorite item data at once (without artificially creating bbox
requests). Now the favorite mode is handled by the base plugin directly,
which prevents all bbox queries in favorite only mode and instead queries
the item data directly from the plugin, which only has to implement direct
access to (download of) item data.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 5 more) Revision 0cf632f...

Graphics

Fabio D'Urso committed changes in [okular] ui/presentationwidget.cpp:

Fixes in presentation page switch logic

Do not assume that oldPage == m_document->viewport().pageNumber, because
it's false if we are processing a viewport change notification.
It caused presentation drawings to turn into persistent annotations,
when switching page from the main okular window.

In general, this patch also tidies up PresentationWidget::changePage a bit:
- Removed redundant checks: they are always true
- Removed duplicated code that performed the page opening actions:
Previously the first slide and the other ones followed different code
paths, both doing the same things. I unified them.

I also changed slotNextPage so that it never sets m_frameIndex = -1, because
it confuses changePage and makes it skip page closing actions.

KDE Base

Viranch Mehta committed changes in [kde-workspace] plasma/generic/applets/lock_logout/contents/ui/lockout.qml:

Change orientation when inside an applet automatically

Change the orientation to occupy minimum visible area
on the panel


FIXED-IN: 4.9

Aaron J. Seigo committed changes in [kde-workspace] plasma/generic/applets/systemtray/protocols/plasmoid/plasmoidtaskprotocol.cpp:

do not clear the applet list since the code relies on that to remove / add entries

fixes a regression introduced in 6c7cf245

Peter Penz committed changes in [kde-baseapps] dolphin/src/kitemviews/kfileitemmodelrolesupdater.cpp:

Folders Panel: Also count directory links

... otherwise no expansion toggle will be shown. The implementation
is a compromise between performance and correctness: If the directory
contains links that are not directories, an unnecessary expansion
toggle will be shown. But this is better than showing no expansion
toggle in case if the directory contains links that point to other
directories.


FIXED-IN: 4.9.0

Peter Penz committed changes in [kde-baseapps] /src:

Inline renaming: Improve focus handling

Fix issue that cancelling the inline-renaming by clicking
on the other split view applies the wrong focus.

Thanks to Frank Reininghaus for the initial patch and noticing
this issue.

Jekyll Wu committed changes in [konsole] src/MainWindow.cpp:

Do not ask for confirmation of closing when logging out.

This effectively reverts the change which was made to ask for
confirmation when powering off. That issue needs to be reworked in
next feature release, but for now just revert it since the current
implementation should cause more annoyance than benefit.


FIXED-IN: 4.9.0

John Tapsell committed changes in [kde-workspace] libs/ksysguard/processcore/processes.cpp:

Update init process's total cpu

This bug caused the problem that the summary of cpu load never stopped increasing

Kai Uwe Broulik committed changes in [print-manager] printer-manager-kcm/kcm_printer_manager.desktop:

Fix launching KCM from settings:// kio slave

Viranch Mehta committed changes in [kde-workspace] plasma/generic/applets/batterymonitor/contents/ui/batterymonitor.qml:

Set a minimum and a default size when the battery
monitor is on desktop

Peter Penz committed changes in [kde-baseapps] /src/panels/places:

Hide "Recently Accessed" and "Search for" if indexing is disabled

The bookmarks for "Recently Accessed" and "Search for" require
enabled indexing not only an enabled Nepomuk.


FIXED-IN: 4.9.0

Martin Gräßlin committed changes in [kde-workspace] kwin/useractions.cpp:

Fix switching to window left/right/up/down

Regression introduced with
2ae475cedefc7521a03602bf163864f08caad23e


FIXED-IN: 4.9.0
REVIEW: 105138

KDE-PIM

Dan Vratil committed changes in [libkgoogle] libkgapi/ui/authwidget_p.cpp:

Parse OAuth code from page title instead of body

The OAuth code used for obtaining access tokens is provided
in webpage <title> as a string. The title is guaranteed not to change
syntax, while the body of the page, from which we were parsing the token
before, can change anytime, which breaks the authentication process.


FIXED-IN: 0.4.1

Laurent Montel committed changes in [kdepim] mailcommon/filter/filteractionreplyto.cpp:

Fix Bug 290150 - When filter action "Set Reply-To To" executes on an

email which has no "Reply-To:" header, KMail segfaults
FIXED-IN: 4.8.5

Laurent Montel committed changes in [kdepim] messageviewer/viewer_p.cpp:

Bug 285153 - kmail2: missing filename entry in message body after

deleting attachment

Fixed as on thunderbird.




FIXED-IN: 4.8.5

Laurent Montel committed changes in [kdepim] /:

Fix Bug 301152 - Kontact - Personal Information Manager has been

crashed!
too late for 4.8.4
FIXED-IN: 4.8.5

Office

C. Boemann committed changes in [calligra] /:

Remove connection shape from "add shape" and Flow's insert thingy
ConnectionTool is supposed to be the only way to create connections

Jarosław Staniek committed changes in [calligra] /:

KexiDB: Remove limits for Text data type, leave as option

Now: by default there are no limits in Text data type


REVIEW:105161

C. Boemann committed changes in [calligra/words-references-notes-erione] /textlayout:

Relayout footnotes in an even better way.

Also move the hardcoded constant for contiuned notes to
KoTextDocumentNoteArea.cpp and #define it

Finally the overlapping of the continue notice with text was actually a bug
in KoTextLayoutObstruction (it's still not completely right)

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 2a80660...
C. Boemann committed changes in [calligra] libs/textlayout/KoPointedAt.cpp:

Improve hovering over footnotes/endnotes.
This also removes a lot of Qt warnings about QTextCursor::setPosition out of bounds

Boudewijn Rempt committed changes in [calligra] krita/ui/kis_view2.cpp:

Save the shortcuts in the krita.rc file

This has two advantages:

* krita now can remember the shortcuts of the user even if they install
a new version of krita with a higher kritarc version number
* for plugins, where kde tries to save the shortcuts to the installed rc
file (like /usr/share/apps/kritaplugins/modify_selection.rc) instead of
in a .kde rc file, we save and restore the shortcuts correctly.

Disadvantate: KDE natters on startup that setShortcut is used on a QAction
that's a KAction.

Dag Andersen committed changes in [calligra] /:

Fix bug 301326 - Export to pdf does not respect reports page layout

C. Boemann committed changes in [calligra] /:

Make sure we draw the caret when in footnotes correctly.

This actually uncovered a big problem with rootAreaForPosition

I was able to work around using that method, and in the responsivenes branch
I'm working around it for updating too, which only leaves some variables

Diffs: 1, 2, 3, 4 Revision 15b57ff...
Friedrich W. H. Kossebau committed changes in [calligra] libs/kopageapp/widgets/KoPageNavigator.cpp:

Fixes: have page navigation actions updated on setting a page by number with the KoPageNavigator

all other navigation code also sets the active page via KoPAViewProxyObject::updateActivePage(...),
not with KoPAView::setActivePage(...), as only that updates the navigation actions

okay'ed by Thorsten

Jarosław Staniek committed changes in [calligra] /:

Set limit to 255 for Text type in MySQL Driver

MySQL Driver:
*set limit to 255 characters for Text type (VARCHAR)
*call "SET SESSION sql_mode='TRADITIONAL'" on opening database - needed to turn warnings about trimming string values into SQL errors
*practical solution for 'Kexi shows no indication that text is trimmed' bug in case of MySQL: error is displayed eg. "Record inserting on the server failed.Message from server: Data too long for column 'hn' at row 1. SQL statement: INSERT INTO table4 (hn) VALUES ('...................'). Server result: 1406"

More info on VARCHAR support in databases: http://www.ispirer.com/wiki/sqlways/mysql/data-types/varchar_n



REVIEW:105182
FIXED-IN:2.4.3

Jan Hambrecht committed changes in [calligra] karbon/ui/KarbonView.cpp:

fix separating a path into its subpath

do not use the buggy KoPathSeparateCommand, rather create
a macro ommand using alreday existing create and delete commands

C. Boemann committed changes in [calligra/words-references-notes-erione] /textlayout:

Make sure we create extra pages when footnote continuation requires it
And fix a crash in the process, in fact the entire code was wrong
Also renamed a method to be slightly more telling

Diffs: 1, 2, 3 Revision ca65926...
Stephane Mankowski committed changes in [skrooge/Feature] /:

: 'To Account' of an existing money transfer is displayed incorrectly in edit area

Boudewijn Rempt committed changes in [calligra/krita-lut_docker-rempt] krita/ui/opengl/kis_opengl_image_textures.cpp:

opengl canvas: use the float and half texture formats correctly

This enables the exposure shader; it also means that the hdr colorspaces
don't use the monitorprofile. (I bet those bits of the code were never
called before.)

Multimedia

Harald Sitter committed changes in [phonon-vlc] /:

Handle sound systems when libVLC gives no devices for them

libVLC offers an empty device list for sound systems such as OSS. Create
a default device for the sound system in this case.

Additionaly, if multiple sound systems are found, return devices for all
of them, not just for the first one.

Thanks to Franz Fellner for reporting the issue.

Signed-off-by: Harald Sitter

Sven Krohlas committed changes in [amarok] /services/amazon:

Amazon store: several fixes related to the config

* trivial code cleanup
* do not attempt to query the store if there is no valid config. I missed
a corner case there
* correctly write the config if the user just presses OK when being
presented our best guess. this is the ugliest hack I have ever written.
Isn't there a better solution?


FIXED-IN:2.6

Matěj Laitl committed changes in [amarok] /:

IpodCollection: don't crash when ejecting while the db is being written

Piotr, I think this solves your crash, can you please pull, rebuild &
re-test? Let me know whether the crash is fixed or not.


FIXED-IN: 2.6

Matěj Laitl committed changes in [amarok] /:

ContextView: fix crash in addCollapseAnimation, dedicated to Mamarok

With some gdb fu, I was able to investigate that the root cause of the
bug was invalid static_cast<>, I wish static_casts were (almost) never
used in Amarok.

This crash-fix is a day-late present for Myriam Schweingruber's
birthday - cheers, Myriam! :-)

[this crash existed (in its current form) since at least 2011-07-14 as
reported by Marian Kyral. We thought we have fixed it already, but we
have in fact just reduced its probability by defaulting to a different
configuration wrt collapsing applets. My last patch touching this
7ff8068a993b3ef08 was rather a blind guess and debugging patch than
a real fix.]


FIXED-IN: 2.6
CCMAIL: Myriam Schweingruber
DIGEST: Amarok crash-fix, please mention dedication ;-)

Matěj Laitl committed changes in [amarok] /core-impl/collections/ipodcollection:

IpodCollection: prevent crash on early disconnect and double-freeing

We were deleting Itdb_Playlist's twice, once in itdb_free and for the
second time in IpodPlaylist::~IpodPlaylist. Ensure we delete it only in
the second call by using trick we already do with tracks.

Also, try to prevent crashes when IpodCollection is destoryed while
IpodPlaylistProvider is still in parseItdbPlaylists() (needs testing)


FIXED-IN: 2.6

Harald Sitter committed changes in [phonon-gstreamer] gstreamer/audiodataoutput.cpp:

fix crash due to wrong placed return

always returned after fist append. this in turn caused the pending buffer
to be no longer a multiple of the channel count ultimately leading to
a mismatch between per-channel buffer sizes (as catched by the
assert introduced 2 commits ago)

Matěj Laitl committed changes in [amarok] /:

IpodCollection: finally safe solution for crash on early eject

We now (asynchronously) wait for the job that parses iPod tracks and
playlists before destroying IpodCollection.

Other change is that we factor playlists parsing into
IpodParseTracksJob, it really belongs there. (previously it was just
called from that thread and it made false impression that the method
is only called from the main thread)


FIXED-IN: 2.6

Bart Cerneels committed changes in [amarok] /browsers/playlistbrowser:

Apply update from QtGroupingProxy.

commit 42febf5 from https://gitorious.org/qtgroupingproxy/qtgroupingproxy
Call endRemoveRows in reverse order as begin...

This is a hack, because beginRemoveRows() should always be followed
by endRemoveRows() before the next remove. But since QAbstractItemView
uses a stack to apply changes it works with those. Might break proxyies
though.

Fixes QVector crash in QSortFilterProxyModel with Qt debug builds.




FIXED-IN:2.6

Matěj Laitl committed changes in [amarok] /:

IpodCollection: Don't hit ulimit -n when copying covers

This was because QTemporaryFile holds its file open. It cannot be
forced to close its file, so use slightly more dumb solution.


FIXED-IN: 2.6

Richard Lärkäng committed changes in [libkcddb] /:

Read year on Musicbrainz lookups

Add code for reading the year when looking up releases from Musicbrainz.
Added a test-case (musicbrainztest-fulldata), where the date
is "2011-04-29", which should be parsed as only "2011".

Also, while adding the test case, I ran into a bug, the titles
and track artists were always taken from the recording, while
ones from the "release credits" are preferred, fixed this as well,
and updated the other tests to reflect the fixes.

Networking Tools

Eike Hein committed changes in [konversation] src/viewer/topichistoryview.cpp:

Ignore focus when picking the color role.

This was a vestige from when the color group wasn't taken into
account (where focus does matter) and broke color selection with
"Inactive selection changes color" disabled in System Settings.

Eike Hein committed changes in [konversation] /:

Fix showing the away overlay icon in the nicklist What's This.



Also lays out the text a bit nicer and makes the code backing the
tooltip a little less batshit insane.

It would be nicer to show a blended example, but stuffing the
blended pixmap into a temp file to be able to access it from HTML
isn't worth it. Once more I wish the resource system could register
content dynamically at runtime.

Eike Hein committed changes in [konversation] src/irc/channel.cpp:

Unbreak build without QCA2.

Utilities

Martin Küttler committed changes in [cantor/gsoc2012] /:

Made multiline LaTeX code work; fixed context menu for text+latex entry

Diffs: 1, 2, 3, 4, 5 Revision d9f0fcd...
Aleix Pol Gonzalez committed changes in [muon/resources] /:

Muon installer adaption

Made sure the Muon Installer still works after all the changes on libmuonprivate.
Muon Installer has not been ported (yet?) to the ResourcesModel

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 10 more) Revision 8f1d001...

Features

Development Tools

Ralf Habacker committed changes in /trunk/KDE/kdesdk/umbrello/umbrello/widgets:

Made note widget text editable through doc window.
This also fixes doc window related inconsistences after selecting note widgets.

Educational

Dennis Nienhüser committed changes in [marble] /:

Have .qml files and similar appear in QtCreator projects

Uses a dummy target to make cmake aware of additional files which need
no build step, but still should appear in project files. This results
for example in .cbp files listing those files in Unit tags, which are
then picked up by QtCreator.

Diffs: 1, 2, 3, 4 Revision 4a79dcc...
Dennis Nienhüser committed changes in [marble/sok-2012-plasma-active] /plugins/declarative:

Support layers where both data and rendering are done from QML

Think of it as a QML (List,Grid)View where the layout is defined
by the geo position of the items in the model (instead of their
order transferred to some grid).
Based on a patch by Anton Chernov - thanks! Please see
examples/qml/data-layers/ how to use it. Basically you append one
or more DataLayer items to the dataLayers property of MarbleWidget.
Each DataLayer has a model property (use e.g. a ListModel), where
the lon, lat properties of elements define their geoposition. Optionally
the alt and identifier properties can be set. Those and all additional
properties are available in the qml context of each delegate (assigned
to the DataLayer via the delegate property). The delegate can be any
QML component.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 Revision 4f0917b...

Graphics

Fabio D'Urso committed changes in [okular] ui/fileprinterpreview.cpp:

Make it possible to type a page number and press enter in Print Preview

Do not close Print Preview if enter is pressed

KDE Base

Maximilian Löffler committed changes in [kate] /plugins/scriptIDE:

initial commit of Script IDE

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision 271bf77...
Daniel Nicoletti committed changes in [print-manager] /:

Initial work on the PPD model to support recommends drivers

Diffs: 1, 2, 3, 4 Revision 1d44c02...
Erlend Hamberg committed changes in [kate] part/vimode/katevinormalmode.cpp:

Add "?" binding

Pressing "?" in vi Normal mode starts a search.

Hugo Pereira Da Costa committed changes in [kde-workspace] /clients/oxygen:

Added hidden configuration option to enable/disable closing windows by clicking on menu button.
Option is called "CloseFromMenuButton"
It is false by default.
To turn it on, add
CloseFromMenuButton=true
in [Windeco] section of $HOME/.kde4/share/config/oxygenrc.
Note that it results in poor usability of the menu button, if enabled.

Viranch Mehta committed changes in [kde-workspace] plasma/generic/applets/batterymonitor/metadata.desktop:

Add powerdevil activities settings in battery
monitor's settings dialog

Shaheed Haque committed changes in [kate] /pate/src/plugins/gid:

Initial commit of a shiny new sample plugin

A plugin for the GNU idutils lookup function, intended as a functional
sample.

Shaheed Haque committed changes in [kate] /pate/src:

Allow Pate plugins to add confi pages to Kate's settings.

1. Add support to the Engine and to the kate module to allow modules
to decorate functions as returning config pages. Also a small further
reorganisation of the save/load configuration logic.

2. Hook the above up through the Plugin itself.

Diffs: 1, 2, 3, 4, 5 Revision bf77cb1...

Office

Oleg Kukharchuk committed changes in [calligra] /plugins/forms:

Kexi forms get Date Picker widget

FIXED-IN: 2.5.0
REVIEW: 105179
DIGEST: Kexi forms get Date Picker widget

Diffs: 1, 2, 3, 4, 5 Revision f43edae...
Friedrich W. H. Kossebau committed changes in [calligra] /kopageapp:

Adds: a page/slide navigator control for the statusbar, used in Stage & Flow

it has 2 states:
in first state it displays
* type of slide/page (incl. if Master one)
* the number of the current page/slide
* the number of the page/slide count
in second state it offers control to
* go to first/previous/next/last slide/page
* go by entered number to slide/page

FEATURE

REVIEW: 105180

Diffs: 1, 2, 3, 4, 5, 6, 7 Revision a4dc0ed...
Jarosław Staniek committed changes in [calligra] /:

KexiDB: Add option for setting default length limit of Text values

KexiDB
*Added maxLengthIsDefault property of table field for Text types to extended schema
**stores a hint that limit comes from default setting

*Added DefaultMaxLengthForTextFields config in Tables group
**specifies default maximum length for fields of type Text
**0 (the default) means unlimited or up to engine's limit


DIGEST: Kexi gets option for setting default length limit of Text values

Smit Patel committed changes in [calligra/words-gsoc-smit] /textshape/dialogs:

operator selection added to have more than one filters

Boudewijn Rempt committed changes in [calligra/krita-lut_docker-rempt] krita/ui/canvas/kis_image_pyramid.cpp:

Use the rendering intent setting for displaying the image

Instead of relying on the implicit conversion inside bitBlt, which uses
INTENT_PERCEPTUAL by default, convert the bytes ourselves. This might
even give a small speedup since we call the conversion method only once
now.

It also makes it possible to use different ways of convering the
projection bytes, for instance with opencolorio.

C. Boemann committed changes in [calligra] /:

Make ui and a ClipCommand to create (or remove) contour data by
analysing the image data and trace an outline around the actual contents of the image

Diffs: 1, 2, 3, 4, 5, 6 Revision 41c77b7...
Paul Mendez committed changes in [calligra/stage-paulm-test] /part:

Finish features for a non editable view of Animations

- Synchronize shape selection with Animations Time Line View
- Update Time Line View if a shape is removed from current page.
- Store presentation-preset tags in KPrShapeAnimation.
- Save presentation-preset tags in ODF document
- Set order numbers on Time Line View depending on the node-type (trigger
event)
- Read begin and end time from animations and set length of time bars
- Informative features (not edition) in Animations Time Line View almost
finished

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 2 more) Revision 1ce8a23...

Multimedia

Harald Sitter committed changes in [dragon/bluray] /app:

mount blurayrom devices to check for blurayvideo

due to DRM libblueray only plays mounted disks, and solid fails to
detect them as video completely, so this approach should(tm)
make it work

dragon now mounts blurays and checks if they are video, if so it
wants to play them...

Utilities

Friedrich Karl Tilman Pülz committed changes in [publictransport/QtScriptAndThreadWeaver] /:

New KDevelop-like TimetableMate GUI, update accessor file format, fixes

(Too) big commit, much code moved from TimetableMate to new files for
docks/tabs and a new Project class, improved GUI, etc.

TimetableMate:
- Much improved TimetableMate GUI, more KDevelop like
- Move Debugger code to subdirectory "debugger"
- Add dock/tab base classes and derivates for all available dock widgets
and tabs, in subdirectories "docks"/"tabs"
- Allow multiple projects to be opened in one TimetableMate window,
add a Project class and a ProjectModel to manage multiple projects
- Update TimetableMate XML GUI, menus of the kate part are now separated
from own menus like in KDevelop (copied some lines of code)
- Shortcut clashes with the kate part are now solved by using an own
katepartui.rc, which removes shortcuts from actions in the kate part
that are also used by timetablemate (the same way KDevelop does it)
- Opened projects and tabs are remembered when TimetabeMate gets started again
- Add preferences dialog, currently only one option: "Restore Projects"
- Add fixed dock toolbars to toggle the shown dock for the left, bottom,
right areas (like in KDevelop), add "shown docks" context menu
- Move much code from class TimetableMate to the project/dock/tab classes
- The new Project class provides actions (Project::ProjectAction),
it manages a set of actions internally (created when needed) and allows
to create and connect external actions. This makes it possible to create
project actions for the main window and connect them with one project
at a time (this one project is the "active project")
- Use KMessageWidget when the status bar is hidden
- Add new docks:
ProjectsDockWidget (visualizing ProjectModel)
TestDockWidget (visualizing TestModel)
WebInspectorDockWidget (showing the QWebInspector for web tabs)
NetworkMonitorDockWidget (visualizing NetworkMonitorModel)
- ProjectModel manages opened projects, makes sure that one project is
always the "active project", ie. connected with main window actions
and docks
- TestModel provides a set of test cases with tests, results are
visualized by TestDockWidget, tests are started from class Project,
can start individual tests/test cases
- NetworkMonitorModel collects all network requests and replies for the
QNetworkManager used in a web tab, NetworkMonitorFilterModel can filter
by type (GET/POST/reply) and content type (eg. html/css/images)
- Add new overview tab, written in QML, using Plasma Components,
works great with the new Project class
- New mime type "application-x-publictransport-serviceprovider"
for PublicTransport engine service provider plugins, ie. "accessor XMLs"
- Add "operation" argument to TImetableMateHelper to allow to specify
if a project should be installed or uninstalled
- Add actions for uninstallation of projects
- Improve about dialog, add translator about data dummy strings
(to be "translated" with translator names/authors),
add OCS username to aboutdata, replace "(c)" with "©"
- Fix JavaScriptParser crashes/hangs, use QSharedPointer
- Changes in the Debugger:
- Add signals waitingForSignal() and wokeUpFromSignal(),
emitted when script executions waits for a signal to continue,
previously stopped()/started() signals where emitted instead
- Add statistics to the stopped() signal, eg. execution time
- Use new debugger models with thread safe handling of changes:
BacktraceModel, BreakpointModel, VariableModel
- More control over jobs running asynchronously in the Debugger,
can enqueue/connect jobs of base type DebuggerJob
- Use ThreadWeaver::ResourceRestrictionPolicy to control jobs,
ie. only one job can run in the debugger at a time, but if
a running job is interrupted, one job can be run in the current
script context
- Fixes

Engine:
- Add parent argument to TimetableAccessor constructor, make m_info member
completely constant (const TimetableAccessorInfo *const)
- Fix changelog version comparison
- Add methods to TimetableAccessorInfo: shortUrlFromUrl() and
shortAuthorFromAuthor() for suggestions if the short versions are missing
- Provide the associated functionName() in RequestInfo
- Remove unused arguments from StopSuggestionRequestInfo constructor

AccessorInfoXmlReader/Writer:
- Better member variable names for ChangelogEntry
- New enum ErrorAcceptance for reading, the engine uses
OnlyReadCorrectFiles, TimetableMate uses ReadErrorneousFiles
- Add sample stops / city to the XML file format
- Write used script extensions in the writer
as attributes to the <script>-tag

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 97 more) Revision 130d2e9...

Optimization

Educational

Andreas Cord-Landwehr committed changes in [rocs] /:

Allow faster computation of shortest path distances.

Add script accessor for distance values to avoid computing
distance for each pair for graph nodes (improves running time by
factor n^2 for those cases).

Diffs: 1, 2, 3 Revision 0d70932...

KDE Base

Kurt Hindenburg committed changes in [konsole] src/ScreenWindow.cpp:

check to handle issue w/ fillWithDefaultChar given huge -count

Previously, the count could be a huge negative number which could
exceed what an int can handle. Also, there's no reason to calculate
this number if it will be negative.

Office

Adam Pigg committed changes in [calligra/kexi-q3port-piggz] /:

Allow to not set the project model to not searchable

This prevents multiple models being added when not required.

Diffs: 1, 2, 3 Revision ee60fd3...

Security

KDE Base

Dominik Haumann committed changes in [kate] kate/plugins/kate-ctags/tags.cpp:

Other

Educational

Andreas Cord-Landwehr committed changes in [rocs] src/Actions/ZoomAction.cpp:

Flip mouse wheel directions for zooming.

This is the more popular way to zoom in/out.

Bernhard Beschow committed changes in [marble] /lib:

PlacemarkPainter: turn into layer and rename to PlacemarkLayer; reverse composition with PlacemarkLayout

PlacemarkLayout used to be both responsible for laying out placemarks and painting them.
After having determined the layout, it realized painting by delegating the acutal work to PlacemarkPainter.

By reversing composition, PlacemarkPainter would ask PlacemarkLayout to update the layout before it would paint the placemarks itself.
That way, PlacemarkPainter becomes a layer and PlacemarkLayout would be the layer's model, which is a common pattern in Marble.

REVIEW: 105152

Diffs: 1, 2, 3, 4, 5 Revision 3352d56...

Graphics

Mailson Menezes committed changes in [okular/tiled-rendering] /:

Rendered image is at the same size of viewport

Previously we were rendering the current viewport but the image provided
by poppler was as big as the scaled page.

Diffs: 1, 2, 3, 4 Revision a405c07...

KDE Base

Aurélien Gâteau committed changes in [kde-runtime] /declarativeimports/plasmacomponents:

Use the same text color as C++ Plasma::LineEdit

Plasma::LineEdit uses the button text color for its text. Do the same
in PlasmaComponents.TextField to avoid white text on white background with
Oxygen theme.

Also use button text color for PC.TextArea because it uses the same
background frame as PC.TextField (P.TextEdit, its C++ equivalent, does not
have any background frame)

REVIEW: 105159

Diffs: 1, 2, 3, 4 Revision b318063...
Shaheed Haque committed changes in [kate] /pate/src:

Remove nascent auto-reload capability.

Reloading plugins can never be guaranteed safe, but I also realised
that just because a developer saves a file does not mean she wants a
reload, especially in the middle of a debug session. So, get rid of the
whole concept.

Also, a few minor GUI tweaks.

Diffs: 1, 2, 3 Revision c68c9b7...

Office

C. Boemann committed changes in [calligra] /part/tools/animationtool:

Animation tool is only relevant to Stage
And make it's optionwidget use the SpecialSpacer
Also change its tool tip

Diffs: 1, 2, 3, 4 Revision aa6eacd...

Utilities

Friedrich Karl Tilman Pülz committed changes in [publictransport/QtScriptAndThreadWeaver] /:

Rename all occurances of "accessor" to "(service) provider (plugin)"

- I think the new names are much better and easier to understand
- Rename everywhere: Class names and it's file names, variables,
functions, comments, documentation, path names
- Also rename variables named "info" or "accessorInfo" to "data"
or "providerData"
- Rename "/engine/accessorInfos" to "/engine/serviceProviders",
also rename the installation directory for provider plugins
to serviceProviders
- To have the path in one place it can now be retrieved from
ServiceProvider::installationSubDirectory()
- Retrieve provider plugin file patterns/extensions using
ServiceProvider::filePatterns() / fileExtensions(),
these functions use the mime type to get patterns/extensions
- Add support for the new mime type
"application/x-publictransport-serviceprovider", ie. let the engine
search plugin files with all patterns of the mime type
TODO: Move engine/timetablemate/timetablemate.xml to
engine/serviceproviderplugin.xml
- Rename the log file from "accessors.log" to "serviceproviders.log"
- Rename TimetableAccessor to ServiceProvider and
TimetableAccessorScript to ServiceProviderScript
- Rename TimetableAccessorInfo to ServiceProviderData
- Rename AccessorInfoTester to ServiceProviderDataTester
- Rename AccessorInfoXmlWriter/Reader to
ServiceProviderDataWriter/Reader
- Rename AccessorInfoDialog to ServiceProviderDataDialog
- Rename fields in TimetableMateHelper:
"filenameAccessor" to "filenameProvider" and
"contentsAccessor" to "contentsProvider"
- Update Provider XML format: The root tag is now called
<serviceProvider> instead of <accessorInfo>
- Some provider scripts are also updated to the new script API

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 75 more) Revision 0312f6c...
Martin Küttler committed changes in [cantor/gsoc2012] /:

Added ResultItems, and changed layout code for the Worksheet

- Added ResultItem and subclasses, removed ResultProxy and
ResultContextMenu. Added context menus to results
- Wrote the layout code for the Worksheet by hand, removed the
QGraphicsLinearLayout, and made the WorksheetEntry only inherit from
QGraphicsObject instead of QGraphicsWidget.

Diffs: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 (+ 14 more) Revision 19348df...