Commit Graph

14534 Commits

Author SHA1 Message Date
Friedrich W. H. Kossebau
6521c72f75 Fix wrong or missing "X-KDE-ParentApp" in desktop file definitions
"X-Plasma-ParentApp" would be nicer, but existing code and desktop files
use "X-KDE-ParentApp" as name for that property

REVIEW: 128616
2016-08-20 17:26:05 +02:00
Friedrich W. H. Kossebau
4bf1ef7ea6 Fix API dox of Plasma::PluginLoader: mixup of applets/dataengine/services/...
REVIEW: 128616
2016-08-20 17:19:14 +02:00
andreas kainz
1370644bac add system-search icon for the sddm theme 2016-08-20 16:15:43 +02:00
andreas kainz
f447c6dacd add nepomuk 32px icon 2016-08-20 16:05:27 +02:00
andreas kainz
8d2109328e update touchpad icon for the system tray 2016-08-20 15:55:51 +02:00
David Edmundson
b07904b901 Remove code that can never be executed.
We know d->uiReady is false, otherwise we wouldn't be in this code
block. Modifying d->loadingApplets won't change that.

REVIEW: 128709
2016-08-18 13:21:08 +01:00
Kai Uwe Broulik
1d66098e50 [ContainmentView] Show panels when UI becomes ready
The code already had logic in there but since UI ready is usually emitted later
the client (in this case plasmashell) had to manually show the panels and would
usually show them when they're not ready yet leading to visual glitches on startup.

REVIEW: 128708
2016-08-18 13:43:29 +02:00
David Edmundson
98cfdf6b45 Don't redeclare property implicitHeight 2016-08-18 12:06:20 +01:00
Marco Martin
f1699fe543 use QQuickViewSharedEngine::setTranslationDomain
setting the domain by just using kdeclarative would lead to
setting the domain on the wrong QQmlContext,
sometimes overwriting it on the global context, causing
unexpected crashes deep in qml
BUG:361513
reviewed-by: Ivan Čukić <ivan.cukic@kde.org>
2016-08-18 12:39:35 +02:00
andreas kainz
5f8f7db226 add 22px and 32px plasma breeze icon support 2016-08-18 00:18:33 +02:00
andreas kainz
76791a1431 22px and 32px plasma breeze icon support available 2016-08-17 23:44:54 +02:00
andreas kainz
4b8642660f remove colored system icons and add 32px monochrome ones
RR: 128598
2016-08-17 23:23:44 +02:00
David Edmundson
cb9ec94625 Add an optional reveal password button to TextField
Similar to KPasswordWidget in kwidgetaddons

Also fixes:
- the clear button still being clickable when not enabled
- RTL icons
- Updating the right margin correctly

REVIEW: 128660
2016-08-15 14:34:15 +01:00
Kai Uwe Broulik
a60f703e09 [DefaultToolTip] Enable LayoutMirroring
This flips the tooltip when using right-to-left languages

CHANGELOG: The standard tooltips are now mirrored when in a right-to-left language

REVIEW: 128662
2016-08-15 13:04:09 +02:00
Kai Uwe Broulik
97a3611c16 [Calendar DaysModel] Don't call layoutChanged() and emit dataChanged() with roles
LayoutChanged causes QML to destroy all delegates and re-create them.
Since the number of days doesn't change but only the numbers, we can just call dataChanged on all roles.

Furthermore, when agenda-related data changes, only the containsEventItems role
might have changed, so only emit a change for it.

CHANGELOG: Performance when changing months in the calendar has been greatly improved

REVIEW: 128648
2016-08-14 11:48:11 +02:00
David Edmundson
920dbcb1e8 Fix missing cleanup in early return
commit c8fdd7ed20 pushes a lazy fix for a
crash, but instead just leaves all signals blocked on
ContainmentInterface

REVIEW: 128642
2016-08-10 10:37:13 +01:00
David Edmundson
1ace6a46de Keep compatiable slot createApplet with Frameworks 5.24
Commit bb70febdbe changed the slot for
adding createApplet, turning the final argument from QPoint to QRect.

If the rectangle size is nothing, it acts like the original code.

Despite this being private API (ish) there is a hacks in plasma-
workspace that call methods on the view via QMetaObject invoke. This
obviously fails. As we need compatibility for Plasma/5.7 and earlier a
compatibility slot needs to stay.

REVIEW: 128640
2016-08-10 00:41:07 +01:00
David Edmundson
8031d80df5 Fix argument type in QMetaObject invoke
Commit bb70febdbe ported an argument from
QRect to QRectF. However, not all local invocations were updated.

REVIEW: 128641
2016-08-10 00:41:07 +01:00
Marco Martin
c8fdd7ed20 crash--
applet may be invalid

Change-Id: I53e831f1fb2dcf991b9248ce79036d77208d5893
2016-08-09 11:41:02 +02:00
David Edmundson
45a2f5a828 Don't delete gl texture twice in thumbnail
The QSGTextures are created with

window()->createTextureFromId(m_texture, QSize(w,h),
QuickWindow::TextureOwnsGLTexture));

this means we don't want to be deleting textures ourselves too, it will
be deleted when we delete the QSGTexture, which is a scoped pointer
inside our QSGNode.

BUG: 355644
BUG: 365946
REVIEW: 126131
2016-08-09 09:37:01 +01:00
David Edmundson
7364377a06 Add translation domain to wallpaper QML object
REVIEW: 128612
2016-08-09 09:37:01 +01:00
Marco Martin
e1a0299a46 don't manually delete applets
applets will be deleted by the parent, as they are
acontainment's children. by not deleting them by hand
also every signal will be disconnected, not causing appletRemoved
to be emitted, so not causing removal of config
pieces at shutdown, this removes the need of the
explicit disconnect in aboutToQuit from contaiment interface

Change-Id: Iddf6ded60ae849ca03c363be6e736da496310b82
reviewed-by: David Edmundson
2016-08-08 15:07:10 +02:00
David Faure
8abeceaffd Skip autotest that is broken with Qt 5.5
Eike Hein said this was fixed by David Rosca in Qt >= 5.6.1.

CCMAIL: plasma-devel@kde.org
2016-08-07 13:25:07 +02:00
l10n daemon script
4db599dcf8 SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2016-08-06 09:58:49 +00:00
l10n daemon script
c997c43e2f Upgrade ECM and KF5 version requirements for 5.25.0 release. 2016-08-06 08:43:39 +00:00
Friedrich W. H. Kossebau
d4f10cd67e Add a kapptemplate for Plasma Wallpaper
REVIEW: 128594
2016-08-05 16:02:14 +02:00
Friedrich W. H. Kossebau
9b288b77c9 Templates: register templates in own toplevel category "Plasma/" 2016-08-05 16:02:14 +02:00
Friedrich W. H. Kossebau
80b966559e Templates: Update techbase wiki links in READMEs 2016-08-05 16:02:14 +02:00
Aleix Pol
de1a45764a Define what Plasma packagestructures extend plasmashell
It specifies org.kde.plasmashell as the structures' target

REVIEW: 128604
2016-08-05 15:24:23 +02:00
Marco Martin
bb70febdbe support a size for adding applets
in the addapplet signal, support size paramenters as well,
to specify a full geometry where you want the plasmoid.

REVIEW:128597
2016-08-05 10:02:10 +02:00
Aleix Pol
3ba6efa44c Fix build in build.kde.org 2016-08-04 21:26:52 +02:00
Aleix Pol
67d882037c Define Plasma PackageStructure as regular KPackage PackageStructure plugins
This way we can use kpackagetool5 against them (see RR 128590).

REVIEW: 128596
2016-08-04 19:23:59 +02:00
Friedrich W. H. Kossebau
3ec4f26e79 Fix: update wallpaper example Autumn's config.qml to QtQuick.Controls 2016-08-03 23:01:07 +02:00
Aleix Pol
333bdd7fb3 Use KPackage to install Plasma Packages
Plasma packages are essentially kpackages, so use the macros from KPackage
to install Plasma packages.
This allows to reuse the facilities set up there.

REVIEW: 128579
2016-08-03 13:05:58 +02:00
David Edmundson
812340ea2f If we pass a QIcon as an argument to IconItem::Source, use it
Currently the code gets the icon name from the QIcon and tries to do
some Plasma theming with it.
However if that fails it then loads the QIcon::fromTheme again.

This is pointless in most cases and will break any icons that have a
custom loader (all SNIs)

REVIEW: 128580
2016-08-03 12:05:30 +01:00
Martin Gräßlin
9814aff6b9 [autotest] Extend ThemeTest with a case for compositing changes
The added test case simulates that a Compositor is started on X11
and shut down again. This should trigger the themeChanged signals
and the imagePath should return different elements.

REVIEW: 128572
2016-08-03 11:28:23 +02:00
Chinmoy Ranjan Pradhan
0abc67a99f Add overlay support to Plasma IconItem.
By default Plasma IconItem renders the icon without an overlay even when an overlay is required.
This fixes this.

REVIEW:128573
2016-08-02 22:09:51 +05:30
Aleix Pol
fbfcc4e914 Introduce .arcconfig file for better integration with phabricator.kde.org 2016-08-02 18:22:51 +02:00
Eike Hein
433b6794fe Add Qt::Dialog to default flags to make QXcbWindow::isTransient() happy.
Panel popup dialogs along with other applications of Plasma::Dialog
(e.g. Kicker's submenus) currently don't correctly set WM_TRANSIENT_FOR
to the id of their parent window on X11. This causes them to interact
badly with auto-hide panels which do not set struts, e.g. Kicker's
submenus open behind the panel.

Internally, Dialog makes calls to QWindow::setFlags when its window
type is "Normal" (the default) and otherwise uses KWindowSystem's
setType. (Kicker's subclass, SubMenu, does an additional
KWindowSystem::setType call for NET::Menu). Neither CompactApplet
nor Kicker change their Dialog's 'type' property to anything else,
so their dialogs are "Normal", thus going the setFlags route with
no setType calls.

Dialog also sets its transient parent to the window the visualParent
item is inside of.

Now here is where things break down: QXcbWindow will update
WM_TRANSIENT_PARENT for in show(), but only when an inline function
called isTransient returns true. isTransient decides this based on
window type, which is determined from the flags set with
QWindow::setFlags. Calls to KWindowSystem::setType would have no
bearing on this; there seems to be no mapping back from external
state. This is why setting Dialog.type to e.g. "DialogWindow" does
nothing.

This patch takes the route of adding Qt::Dialog to the starting
flags - after all Dialog is a dialog. That means isTransient()
will consider the window to be a transient and those
setTransientParent calls Dialog does will not be ignored. In the
case of CompactApplet, no further calls to KWS::setType are done;
Kicker continues to call it with NET::Menu to get desired window
manager behavior.

In light testing everything still seems too work, with the added
benefit of fixing:
BUG:366278

That said, the weird mess of setFlags and setType and state in the
windowing system vs. Qt is horrible and sad.

REVIEW:128571
2016-08-02 19:20:33 +09:00
Kai Uwe Broulik
009f49c08e [Breeze Plasma Theme] Add network-flightmode-on/off icons
Since nobody bothered to fulfill my request for this icon (cf. Review 128332)
I just did it myself, with no warranty.

Plasma IconItem finds icons from Plasma theme only in the SVG file of the first
section of the name (ie. all icons in network must start with network- prefix
which the flightmode icons did not).

The old icon is kept as is for compatibility.
2016-08-01 17:43:11 +02:00
Eike Hein
98c721e031 Fix build. 2016-08-01 03:57:22 +09:00
Eike Hein
8665999ee7 Emit contextualActionsAboutToShow before showing the applet's contextualActions menu.
This is done by ContainmentInterface::mousePressEvent, but not in this
code path, which is hit for applet panel popups.

Folder View relies on this to update actions ahead of the menu being
opened.

BUG:366294
2016-07-31 21:12:52 +09:00
Kai Uwe Broulik
42193ae631 [TextField] Bind to TextField length instead of text
Copying strings in QML is expensive.

REVIEW: 128550
2016-07-29 15:41:40 +02:00
Kai Uwe Broulik
16f8257068 [Button Styles] Horizontally center in icon-only mode
QtQuick.Layouts by default left aligns content and because the Layout is
anchors.fill'd the icon would show off-center in a button when no text has been set.
This fixes this.

REVIEW: 128493
BUG: 365947
2016-07-26 14:09:03 +02:00
Kai Uwe Broulik
d91127ca58 [Containment] Treat HiddenStatus as low status
The containment's status is the max of all applets.

Unfortunately, HiddenStatus, while semantically lower, has the highest value,
so as soon as there's a hidden applet (eg. pager with just one virtual desktop),
the panel will always auto-hide even when popups are open as its status will be HiddenStatus.

REVIEW: 128301
2016-07-22 08:32:52 +02:00
David Edmundson
3f53070185 Q_INVOKABLE needs to be outside the /// @cond INTERNAL_DOCS 2016-07-20 12:05:12 -03:00
Aleix Pol
a7068cb991 Add missing dependency in the config file
Qt5Gui is a public interface in plasma-framework

Reviewed by Harald Sitter
2016-07-20 14:34:27 +02:00
andreas kainz
83f1eb80f3 add kalarm icon for plasma system tray
BUG 362631
2016-07-19 23:17:27 +02:00
Marco Martin
301193cb96 don't assume last is is numScreens()-1
screen ids are going to not be continuous anymore
as screen id is going to correspond 1:1 to connectors,
it will be possible to have "holes", therefore valid ids
that are bigger than screenNum()

REVIEWED-BY:sebas@kde.org
Change-Id: I1c0b1fb827dba4d95f228d32209403150c089c77
2016-07-18 14:47:53 +02:00
andreas kainz
14dc19e1bd update kruler icon 2016-07-16 22:39:53 +02:00