Commit Graph

2053 Commits

Author SHA1 Message Date
Martin Klapetek
b36ba7c9b6 Return intersection of KWS::workArea() and QScreen::availableGeometry()
KWindowSystem::workArea() gives us the whole workarea, which in case of dual screens is the whole virtual desktop. QApplication::desktop()->availableGeometry(id) gives the full screen geometry for the given screen. So we just intersect them and have a proper availableScreenRect().

This is just a temporary method until the patch in [1] is merged in Qt
and released, then we can revert back to the commented method.

[1] - https://codereview.qt-project.org/#change,80606

BUG: 331968
2014-03-11 19:14:15 +01:00
Marco Martin
cc8de5a789 remove unused variable 2014-03-11 17:07:15 +01:00
Marco Martin
d397358346 Make the delete containment dialog async
a syncronous dialog brings crashes if something gets deleted while the dialog's event loop is in execution
BUG:332027
2014-03-11 17:04:31 +01:00
Martin Klapetek
62d35541ed Add availableScreenRect(int id) to ContainmentInterface
Now plasmoids can simply get the available screen rect
2014-03-11 15:30:45 +01:00
Martin Klapetek
699057ad33 Emit geometry changes on screen added/removed events 2014-03-11 15:30:45 +01:00
Martin Klapetek
6a1fa18986 Add availableScreenRect(int id) to Corona base class
This is already implemented in ShellCorona and is quite handy too

Reviewed-by: Marco Martin
2014-03-11 15:30:45 +01:00
Marco Martin
5fe26c0da1 close at applet destruction
and bury behind a weakpointer
BUG:332015

in some cases seems a crash still happens, but is completely unrelated with the one in 332015, so should be a separate bug
2014-03-11 12:44:04 +01:00
Martin Klapetek
cc6cc00282 Remove useless casting to itself 2014-03-10 22:55:06 +01:00
Marco Martin
dee8ff8645 delete remove action for desktops
desktop containments never have a remove action.
the only way to be deleted is from the activity manager
2014-03-10 19:47:46 +01:00
David Edmundson
effb5e8ad1 Add temp workaround to avoid black squares in main context menu
BUG: 331809
2014-03-10 17:50:50 +01:00
Sebastian Kügler
a1dce4bb86 Update theme on KWindowSystem::compositingChanged
BUG:328651
2014-03-09 23:50:21 +01:00
Ivan Čukić
4b3ae32b17 Added IconDialog class to the platform components 2014-03-08 18:02:39 +01:00
Marco Martin
50b5c62d81 fix highdpi mode for slider and progressbar
progressbar looks like still needs some serious work
2014-03-07 17:59:33 +01:00
Àlex Fiestas
a3c4e95bb8 Use Qt::CTRL since what we want there is the modifier
This fixes the bug where kglobalaccel "eats" the | character, what
was actually happening is that Qt::Key_Control + Qt::Key_F12 was
producing a valit KeySquence which was Shift+\, and Shit+\ is what
you use in US keymaps to make |.
2014-03-07 17:44:12 +01:00
Martin Klapetek
fa643132bc Use QScreen::virtualGeometry() for computing panel struts
QScreen::availableGeometry() returns screen size minus the struts, which is fine on first Plasma start. But if Plasma crashes, the struts set on the startup are not cleared and then when Plasma autorestarts, availableGeometry() gives it rect with the old struts to which Plasma adds one more panel height (so the total strut height is panel.height()*(numberOfCrashes+1)).

Using QScreen::virtualGeometry() gives us the whole screen including
struts and the new struts are computed and set properly.

Reviewed-by: Marco Martin
2014-03-07 17:18:32 +01:00
Ivan Čukić
924fd195ae Oprimized Units::devicePixelIconSize 2014-03-07 09:26:33 +01:00
Ivan Čukić
6008c889f5 Added the units.displayAspectRatio property 2014-03-06 20:24:41 +01:00
Marco Martin
fc6938887b correctly restore saved popup size 2014-03-06 15:57:37 +01:00
Marco Martin
ef1010f312 set maximum size only when there is actually an hint 2014-03-06 15:26:05 +01:00
Marco Martin
3d5f105c80 use hints to ensure proper size 2014-03-06 14:37:19 +01:00
Marco Martin
83b0c8cc3c re set the flags on show
ensured the dialog is a tooltip, on top and doesn't accept focus
2014-03-06 14:36:51 +01:00
Martin Gräßlin
3303f9b979 Set state in PlasmaCore.Dialog after Qt handled the show event
Qt's xcb plugin updates _NET_WM_STATE and ignores anything we set,
thus we need to ensure that our additional states are set after Qt
set the state. Luckily KWindowSystem does not remove the state which
is already set.

Reviewed-By: Marco Martin
2014-03-06 13:24:45 +01:00
Marco Martin
ba91c53c12 move the skiptaskbar flag set to showEvent 2014-03-06 13:10:55 +01:00
David Edmundson
58e45d97b1 Remove unused check against local shortcuts 2014-03-05 23:22:36 +01:00
David Edmundson
fdd627c629 Use promptStealShortcutSystemwide from frameworks 2014-03-05 23:20:56 +01:00
David Edmundson
a403c3f3ca Don't check for conflicts when first setting keyboard shortcut 2014-03-05 23:20:56 +01:00
Marco Martin
f4daf5f7d9 export location 2014-03-05 20:58:42 +01:00
Marco Martin
6fe147f4d7 new graphics for tabbars 2014-03-05 20:14:52 +01:00
Marco Martin
0f4654643f don't always do the "dialog inside panel"
if a window is not outsideParentWindow or all the borders are enabled, don't do the trick
this fixes positioning of systray tooltips
2014-03-05 20:14:52 +01:00
David Edmundson
1dc6d98aa3 Allow shift in global shortcut 2014-03-05 19:37:41 +01:00
David Edmundson
a8ddfe1def Connect to real window changed signal
In PanelView screenChanged is redeclared in order to create a property.
However this signal is not the one that is emitted.

This fixes the confif following the panels when moving between screens

Reviewed-by: Aleix Pol
2014-03-05 18:41:50 +01:00
David Edmundson
b5a04c55ea Add missing license 2014-03-05 18:09:47 +01:00
David Edmundson
48e8e588a6 Add documentation on FrameSVGItem updating 2014-03-05 18:07:54 +01:00
David Edmundson
fb7451051e Expose globalShortcut in AppletInterface so it can be set from the config 2014-03-05 17:28:50 +01:00
David Edmundson
7e7fe6f972 Add KKeySequence QtQuick clone 2014-03-05 17:28:50 +01:00
David Edmundson
6599c25087 Port FrameSVGItem to paint directly
REVIEW: 116618
2014-03-05 17:24:13 +01:00
Marco Martin
c3d6c00a95 if parent = 0, component is complete
the tooltip dialog is created from c++, not qml

this fixes dialog positioning for tooltips
2014-03-05 17:03:47 +01:00
Aleix Pol
f8be8ab0fd Fix glitch in PanelView
Never use the window size to figure out the thickness: This is bad because
sometimes this will get called before the move hasn't been effective, which
results in full-screen struts. Use the thickness method from KConfig
instead.

REVIEW: 116614
2014-03-05 16:09:16 +01:00
Aleix Pol
78c6e452df Reduce QWindow::setGeometry calls
Don't call setPosition and resize, but do it all at once in a setGeometry
call. It simplifies the life of the QPA and WM, also it's quite faster as
we reduce the calls to the WM by half (both setPosition and resize are
syntax-sugar for setGeometry)

REVIEW: 116614
2014-03-05 16:08:09 +01:00
Aleix Pol
da325d037b Make the PanelView::distance change immediate
This way we can use it from the EdgeHandle without having to stop moving
the mouse first.

Reviewed by Marco Martin
2014-03-05 16:06:32 +01:00
Aleix Pol
03dcec82b5 Remove unused variables 2014-03-05 14:28:06 +01:00
Aleix Pol
017387a0b2 Fix dis/connects in the panelview
When porting to the new syntax I saw that the slot was also missing, I
made it trigger the unhide timer.

REVIEW: 116613
2014-03-05 14:26:35 +01:00
Marco Martin
b388a0d76b expose hasElementPrefix() method 2014-03-04 18:13:46 +01:00
Marco Martin
a0aa88f00d formFactorChanged, locationchanged signals 2014-03-04 18:13:19 +01:00
Marco Martin
9cac91b652 try harder to avoid scroll buttons
also event copmpress the relayout
2014-03-03 22:24:05 +01:00
Marco Martin
9c600c5d68 add a new property in TabBar: tabPosition
it makes the tabbar eventually vertical and appearing oriented differently towards the content

possible values:
Qt.TopEdge (default)
Qt.LeftEdge
Qt.RightEdge
Qt.BottomEdge
2014-03-03 19:43:13 +01:00
David Faure
4f784339b6 Make ktexteditor an optional dependency 2014-03-01 18:47:00 +01:00
Marco Martin
31707f406c locally manage the ToolTipDialog singleton
ToolTipDialog is not a Q_GLOBAL_STATIC because QQuickwindows as global static
are deleted too later after some stuff in the qml runtime has already been deleted,
causing a crash on exit
2014-02-28 19:12:14 +01:00
Marco Martin
0a8df8895f don't access a global static when destroyed 2014-02-28 17:08:37 +01:00
Marco Martin
92d2e6adb6 icon and title for the desktop window 2014-02-28 16:26:57 +01:00
David Edmundson
66bac622b4 Merge branch 'davidedmundson/svgrendering'
Conflicts:
	src/declarativeimports/core/svgitem.cpp
	src/declarativeimports/core/svgitem.h

REVIEW: 115923
2014-02-28 16:22:49 +01:00
Aurélien Gâteau
16b6578806 Hopefully fix build on CI
CI noX11 variant fails, complaining HAVE_X11 is not set. I assume this is
because the call to add_definitions is too late. Using config-plasma.h is
cleaner anyway.
2014-02-28 16:09:34 +01:00
David Edmundson
6968ab8117 Set filtering so SVG's look nice and smooth 2014-02-28 15:58:05 +01:00
David Edmundson
8bdbc034d4 Add SVG::image(QSize size,QString elementId)
This allows SVGItem to fetch elements at various sizes without resizing
the SVG.
2014-02-28 15:24:08 +01:00
Sebastian Kügler
f3cf993882 Shush 2014-02-28 14:54:19 +01:00
Marco Martin
f4225e95c2 correct positioning in vertical panels 2014-02-28 14:33:52 +01:00
Marco Martin
c615013d96 restore panel autohide functionality 2014-02-28 12:41:56 +01:00
Marco Martin
ccd8f8494d workaround a crash in qt during drop events
delay adding an applet with a queued connection.
this should be reverted once this is fixed:
https://bugreports.qt-project.org/browse/QTBUG-35702
2014-02-27 17:39:42 +01:00
Marco Martin
f1448ed71c use the namespace 2014-02-27 16:33:02 +01:00
Marco Martin
7c14b22fc0 Qt5::Widgets not used anymore 2014-02-27 13:20:26 +01:00
Marco Martin
f5ce791246 Qt5::Network not used anymore 2014-02-27 13:19:00 +01:00
Marco Martin
9253bc1cf0 threadweaver not used anymore 2014-02-27 13:06:39 +01:00
Marco Martin
13bb3fa054 solid isn't used 2014-02-27 12:59:37 +01:00
Marco Martin
4817e11441 don't depend from Auth 2014-02-27 12:51:24 +01:00
Marco Martin
88122c62a5 don't depend from DNNSD
it wasn't actually used anymore
2014-02-27 12:50:32 +01:00
Marco Martin
1fd741b5d3 Merge branch 'mart/interactiveconsole'
REVIEW:116085
2014-02-26 18:35:49 +01:00
Marco Martin
d703996b24 initialize variabiles 2014-02-26 17:00:55 +01:00
Marco Martin
b2fec905b5 Merge branch 'mart/svgHiDpi'
REVIEW:116027
2014-02-26 16:39:52 +01:00
Marco Martin
c2812c30e5 add copyright 2014-02-26 16:24:28 +01:00
Marco Martin
a67b3c78f8 remove kcomponentdata
we are completely free of KDE$Support now
2014-02-26 16:17:33 +01:00
Marco Martin
6402338ac2 remove KIcon 2014-02-26 16:11:55 +01:00
Marco Martin
16182e90a6 remove KTextBrowser 2014-02-26 16:09:37 +01:00
Alex Merry
7dc3895451 Fix build
Link test that includes QQmlAbstractUrlInterceptor against Qt5::Qml.
2014-02-26 15:04:05 +00:00
Marco Martin
8b4c541cff remove KStandardDirs 2014-02-26 16:03:43 +01:00
Marco Martin
777bf35984 remove klocale 2014-02-26 15:57:12 +01:00
Marco Martin
f995cf5b90 use a QFileDialog
platform plugin will make it use KFileDialog anyways
2014-02-26 15:27:41 +01:00
Marco Martin
9f2c38c66f port away of kdialog 2014-02-26 14:27:42 +01:00
Marco Martin
bf181c0b4d restore loadScriptInInteractiveConsole() 2014-02-26 13:17:50 +01:00
Marco Martin
ad86e5d2c8 remove dead code 2014-02-26 12:51:28 +01:00
Marco Martin
f8d254ed16 instantiate the console 2014-02-26 12:46:16 +01:00
Marco Martin
462b2cc836 port Package usage 2014-02-26 12:38:45 +01:00
Marco Martin
0612ae0402 add a building version of interactive console
still too much kde4 dependency, not used yet
2014-02-26 12:17:37 +01:00
Sebastian Kügler
5f998abd7b More usage of QStringLiteral in theme's hot pathes 2014-02-26 05:09:31 +01:00
Sebastian Kügler
7fde00f2f0 Use QStringLiterals for stylesheet processing
Speeds up the construction of all these strings a bit.
2014-02-26 00:50:10 +01:00
Marco Martin
3e966f29b1 typo 2014-02-25 19:42:04 +01:00
Marco Martin
53b2aba558 explain why we only consider integers right now 2014-02-25 19:39:12 +01:00
Marco Martin
359dd09c5d restore dbus interface for dashboard
restore old feature from plasma1
2014-02-25 17:48:10 +01:00
Marco Martin
449e659ded Dialog don't have borders. ever. 2014-02-25 16:30:13 +01:00
Marco Martin
dd75385313 don't set keepabove
the dock windows are in their own layer, keep above gives them a weird behavior
2014-02-25 15:55:59 +01:00
Marco Martin
6ab569e85e add new needed keys to applet plugin definition 2014-02-25 14:32:00 +01:00
Marco Martin
0fdc1a71f0 don't double create root objects 2014-02-25 13:52:19 +01:00
Marco Martin
c533153978 add a new color for svg stylesheets: Highlight 2014-02-25 11:21:19 +01:00
Marco Martin
b8b913c930 concept of panel distance
if the shell requires the panel window to be in a different position than attached to screen edge (will be needed for active)

also, fix panel and panelcontroller positioning
2014-02-24 20:47:34 +01:00
Marco Martin
a04a87bcec use units to understand the devicePixelRatio 2014-02-24 16:55:19 +01:00
Marco Martin
9976c47ad9 add a transientParent property
if this contextmenu is done from a Dialog, add this as transientParent
2014-02-24 14:01:05 +01:00
Marco Martin
ef879a7c7b transientParent property for Dialog
use it when a Dialog instance is a popup menu of another dialog
2014-02-24 13:52:24 +01:00
Martin Gräßlin
1249e5bfc1 Follow Qt's OpenGL compile flags
Only link against OpenGL if Qt links against OpenGL. This ensures
that we don't run into issues if Qt links GLES and plasma links
GL because that's found.

REVIEW: 115990
2014-02-24 09:43:13 +01:00
l10n daemon script
c802da22a5 SVN_SILENT made messages (.desktop file) 2014-02-23 04:51:11 +00:00
Marco Martin
c009c7f0cd concept of fixedMargins
sometimes we need to know what the margins are of a framesvg, even if some of them are disabled
2014-02-21 21:13:12 +01:00
Marco Martin
840a77b083 remove other excess devicepixelratio
Svg manages devicepixelration completely internally, multiplying any of its sizes by it makes it applied twice, therefore incorrect
2014-02-21 20:08:01 +01:00
Marco Martin
372912d53e fix elementSize() 2014-02-21 19:52:25 +01:00
Marco Martin
4a0be9acd9 Revert "Slider scales with devicePixelRatio"
This reverts commit 4b0e828e29.
2014-02-21 19:41:31 +01:00
Sebastian Kügler
4b0e828e29 Slider scales with devicePixelRatio
Conflicts:
	src/declarativeimports/plasmacomponents/qml/Slider.qml
2014-02-21 19:28:34 +01:00
Marco Martin
17332257d7 experimental devicePixelRatio in Plasma::Svg
Conflicts:
	src/declarativeimports/core/framesvgitem.cpp
2014-02-21 19:24:14 +01:00
Marco Martin
8c65f60de5 get rid of actions()
redundant function
2014-02-21 18:57:55 +01:00
David Edmundson
c825bd7509 Update SVG outside paint loop 2014-02-21 16:32:05 +01:00
Sebastian Kügler
01d1509c7c Speed up cache lookups
Use constFind and an iterator to save one hash key lookup.

CCMAIL:aleixpol@kde.org
2014-02-21 16:03:03 +01:00
David Edmundson
9e5727d15c Force repainting a texture if the theme changes 2014-02-21 15:15:22 +01:00
David Edmundson
1eb0deb0df Move QSGTexture memory management into QSGSimpleTextureNode subclass 2014-02-21 15:15:21 +01:00
David Edmundson
d7b8ba265b Cleanup whitespace 2014-02-21 15:15:21 +01:00
David Edmundson
fd4bf875a7 Remove manual isDirty tracking in SvgItem 2014-02-21 15:15:21 +01:00
David Edmundson
9492340ba6 Always resize the node geometry on resizes 2014-02-21 15:15:21 +01:00
David Edmundson
f104d171da Update to paint to fill the size of the object, not the size of texture 2014-02-21 15:15:21 +01:00
David Edmundson
d0bc8b2a75 Fix leaking texture 2014-02-21 15:15:21 +01:00
David Edmundson
9459ed1f02 Add convenient QImage image() getter in SVG 2014-02-21 15:15:21 +01:00
David Edmundson
318560c8c2 Avoid repainting if node is not changed 2014-02-21 15:15:21 +01:00
David Edmundson
9851f8c789 Render SvgItem natively rather than going through QQuickPaintedItem 2014-02-21 15:15:21 +01:00
Marco Martin
1a55ac0c8c outside parent if the parent window ignores WM 2014-02-21 11:55:37 +01:00
Marco Martin
3fd81dbeb5 add a shadow in the panel controller 2014-02-21 11:36:54 +01:00
Marco Martin
e27a2512af make :screen() not crash if is child of an applet 2014-02-21 11:13:14 +01:00
Sebastian Kügler
13ec787302 Improved contrast for highlighted and today's delegate 2014-02-21 01:22:24 +01:00
Sebastian Kügler
29cf8e22d2 Faster theme changes
Don't wait too long after the file changed, makes theme changes be
picked up half a second faster -- noticeable for the user.
2014-02-21 01:20:27 +01:00
Sebastian Kügler
d8ea983d45 Slightly faster lookup of cached theme elements 2014-02-21 01:19:58 +01:00
Marco Martin
68496ed363 unbreak wallpaper config model 2014-02-20 13:35:11 +01:00
Marco Martin
a7c6d3a79e Merge branch 'mart/plasmaquickNamespace' 2014-02-20 12:36:44 +01:00
Marco Martin
aaf7fa328d export plugin name
not super nice but the simplest way to avoid code duplication in the image plugin
2014-02-20 12:33:31 +01:00
Marco Martin
5fb89a5ea9 add warning notices that is not public api 2014-02-20 11:19:50 +01:00
Marco Martin
e9580fc257 don't install headers of plasmaquick
don't commit to binary stability just yet
2014-02-20 11:16:46 +01:00
Marco Martin
90c608f863 complete porting 2014-02-19 20:00:29 +01:00
Marco Martin
d3253428dc plasmaquickview.h -> view.h 2014-02-19 19:40:40 +01:00
Marco Martin
5bb4761c73 use a namespace in libplasmaquick
right now only the library builds
2014-02-19 19:37:30 +01:00
Marco Martin
c9ac5ebefb make private what should be private 2014-02-19 18:30:24 +01:00
Marco Martin
2be97bdcdc realign the panel when size changes
inthe case the panel is centered or at right, it has to be moved as well
2014-02-19 16:20:48 +01:00
Martin Klapetek
bd0ccdebf7 Check the OSD path before trying to load it, Plasma crashes if empty
Review-by: David Edmundson
2014-02-19 14:39:21 +01:00
Martin Klapetek
d3d7a6fd63 Return early if we failed to load valid Wallpaper package
Reviewed-by: Marco Martin
2014-02-19 13:28:15 +01:00
Hrvoje Senjan
dde1da619e Use QStandardPaths for finding plasma shells instead of hardcoding to install prefix
Otherwise plasma shells are never found if plasma-framework and
kde-workspace are installed to different prefixes

REVIEW: 115871
BUG: 331063
2014-02-19 12:15:25 +01:00
Alex Merry
e83e3cf300 Fix build
If code uses KDBusService, it must link against KDBusAddons.
2014-02-19 11:05:28 +00:00
Alex Merry
596abe8c68 Use ecm_configure_package_config_file
Ported with:
sed -i -e 's/\(include(\)CMake\(PackageConfigHelpers)\)/\1ECM\2/' \
       -e 's/\<\(configure_package_config_file\)/ecm_\1/' \
       CMakeLists.txt

See http://commits.kde.org/extra-cmake-modules/139f60d81653888f696ef433
2014-02-18 21:18:16 +00:00
Marco Martin
99e350bb34 take into account panel size while positioning
make the dialog look always inside the panel, to not have borders looking brutally cutted away
2014-02-18 18:16:17 +01:00
Marco Martin
ef2e4f46d4 correctly restore panelVisibilityMode 2014-02-18 17:41:48 +01:00
Marco Martin
208e485577 correct behaviors for panel modes
(just missing edge activation)
2014-02-18 17:26:32 +01:00
Marco Martin
456d919326 notify signal of visibilityMode property 2014-02-18 16:59:11 +01:00
Marco Martin
fa8ed3668b event compress restore after location change
now the panel position is correct after location change, and flickers less
2014-02-18 16:54:05 +01:00
Marco Martin
553055e6d3 adjust maximumWidth when adjusting offset, if needed 2014-02-18 13:42:14 +01:00
Marco Martin
ef0832787a restore the proper offset 2014-02-18 12:32:53 +01:00
l10n daemon script
592a0db2ab SVN_SILENT made messages (.desktop file) 2014-02-18 05:13:41 +00:00
Sebastian Kügler
bc7a54bb09 Compile-time connect in PlasmaComponents.Menu 2014-02-18 01:05:26 +01:00
Sebastian Kügler
61e4b3bbd3 Fix assignment type error 2014-02-18 00:20:20 +01:00
Marco Martin
08e3fcfe65 requestActivate() in this place caused 100% cpu
if more than one dialog is shown in a loop, causes requestActivate called to different windows too fast, this causes 100% cpu usage both in the application and in the windowmanager (not kwin specific)
2014-02-17 19:49:40 +01:00
Sebastian Kügler
7fcb1b7889 Merge branch 'sebas/themeswitch2'
Conflicts:
	src/shell/panelconfigview.cpp
2014-02-17 17:59:32 +01:00
Michael Palimaka
c9c4e6c3b2 Remove unused system dependencies.
- plasma_appletscript_declarative includes QtUiTools but doesn't use it
- QtPrintSupport is not used anywhere
- Xss, Xext, and SM are not used anywhere
- OpenSSL is not used anywhere

REVIEW: 115830
2014-02-18 03:12:12 +11:00
Marco Martin
11bdf0b5d3 repaint the svg icon when plasma theme changes 2014-02-17 15:45:20 +01:00
Marco Martin
317f19d658 event compression in icons generation
saves generation of useless qimages and speed improvement ruring manual resize: ludicrous
2014-02-17 15:39:01 +01:00
Marco Martin
1b21c1a5d9 call superclass in the proper place 2014-02-17 14:32:35 +01:00
Marco Martin
12a766795e return the correct immutability 2014-02-17 12:00:24 +01:00
Marco Martin
e03570227c more robust location switch
an horizontal panel will have a fixed height
a vertical panel will have a fixed height
this way window managers don't fiddle with it
2014-02-14 19:06:06 +01:00
Marco Martin
d1b0e89a63 a way to read and write global shortcuts from qml config views 2014-02-14 17:28:10 +01:00
Marco Martin
7e8aa867b0 crash--
wait for the ui to be ready before connecting activated() to the expanding
2014-02-14 17:25:59 +01:00
Marco Martin
50a584d0bc rename Applet::activate() with Applet::activated()
activate() is a name that suggests a slot more than a signal
2014-02-14 14:40:53 +01:00
Marco Martin
60565dafcb get rid of elementAtPoint()
was a stub, never implemented because qtsvg doesn't support it (and never will)
2014-02-14 14:30:58 +01:00
Marco Martin
54549d8312 set the applet as expanded on activate signal 2014-02-14 14:26:53 +01:00
Marco Martin
ad54cc0187 global shortcuts and different flags for the dashboard
it should be actually usable
2014-02-14 13:56:13 +01:00
Marco Martin
44ab365d2c simplify a bit location change
don't call restore() on positionPanel()
a bit more reliable
still fails randomly by h11 not doing what is asked to
2014-02-13 18:42:55 +01:00
Marco Martin
4aa3360495 resize the panel in one single go 2014-02-13 15:48:20 +01:00
Marco Martin
59dbfeeab6 ask confirmation to delete containments 2014-02-13 15:30:07 +01:00
Sebastian Kügler
566e2a8a42 Fix QPixmapItem::PreserveAspectCrop
This case was broken and would scale the image, while what we want is a
centered piece, from Qt::KeepAspectRatioByExpanding.
2014-02-13 14:56:10 +01:00
Sebastian Kügler
a8e31e1593 plasmapkg2: Fix installation and listing of wallpapers 2014-02-13 14:56:10 +01:00
David Edmundson
6bff4ef469 Avoid frame resizing till componentCompleted 2014-02-13 12:45:30 +01:00
Marco Martin
5c6077c728 add a zoom icon
used for the panel controls
2014-02-13 11:50:49 +01:00
David Edmundson
7c135314aa Watch QQmlParserStatus in dialog
This way we only call the expensive syncToMainItemSize once we have all
the information to accurately position the window.

Using the timer to limit the calls doesn't work entirely (according to
qDebug) especially with the multiple threads to compile things.

Seems to prevent the dialog ever jumping around on load.

REVIEW: 115709
2014-02-13 11:27:35 +01:00
Bhushan Shah
334e818af0 Do not show OSD for invalid values of percentage like -1 or 200
REVIEW: 115712
2014-02-13 18:16:49 +05:30
Marco Martin
664fd4167c maximizing the panel actually works 2014-02-12 17:36:46 +01:00
Marco Martin
6bccf2d1af api to access to containment actions 2014-02-12 17:13:56 +01:00
Martin Gräßlin
bada0c97ba Ensure that we can build without X11 or XCB
* X11 is optional dependency
* XCB is optional dependency
* Qt::X11Extras is only found if both X11 and XCB are found
* switch to HAVE_X11 instead of X11_FOUND in CMakeLists
* remove/fix custom added definitions
* use #if HAVE_X11 instead of #ifdef HAVE_X11 (that is always true)

REVIEW: 115698
2014-02-12 16:20:42 +01:00
Martin Gräßlin
31e301174a Ensure to not call X11 specific calls if we are not on platform X11
This fixes a bunch of possible crashy code when trying to run
applications linking plasma-framework on platform Wayland.

REVIEW: 115641
2014-02-12 16:20:04 +01:00
Marco Martin
68552f81dd take into account margins when propagating size hints 2014-02-12 15:34:34 +01:00
Marco Martin
003cbf8317 hide remove action for desktop containments 2014-02-12 14:04:53 +01:00
Marco Martin
a4f14a966a new property: interactive (default false)
if interactive is true, when the mouse cursor leavesthe tooltiparea and enters the tooltip,
it won't hide, so it will be possible to interacti with it
2014-02-11 19:28:28 +01:00
David Edmundson
63c62d6da8 Documentation++ 2014-02-11 18:52:51 +01:00
Aleix Pol
18473c9e9e Remove KRunner from Plasma-Framework
Have it as a separate KRunner framework instead
2014-02-11 18:03:06 +01:00
Sebastian Kügler
dbbb1ed513 Minor cleanup 2014-02-11 17:29:59 +01:00
David Faure
452413ef33 use version strings defined at toplevel - doesn't work though ? 2014-02-11 16:23:33 +01:00
Marco Martin
da36ebe0e4 remove unused signal 2014-02-11 13:31:44 +01:00
Marco Martin
6f256aa7e6 remove the legacy config machinery 2014-02-11 13:29:37 +01:00
David Edmundson
66d10d5c5a Add a property to tooltip to enable/disable tooltips
This is useful to be able to disable tooltips when a dialog exists.

We don't use the QQuickItem::enabled property as this propagates onto
children and has side effects.

REVIEW: 115623
2014-02-11 12:10:43 +01:00
Marco Martin
0d138bf2fb check the pointer 2014-02-11 11:11:34 +01:00
Marco Martin
3c74807791 don't alterate the position given the borders
eternal size dance--, don't take borders into account 2 times
2014-02-10 20:09:03 +01:00
Marco Martin
4e13ce6966 make sure full representations don't get loaded 2014-02-10 18:14:11 +01:00
Marco Martin
6f8f9a9c64 fix layout 2014-02-10 17:15:40 +01:00
Marco Martin
4e25b59b8e fix the condition 2014-02-10 17:04:39 +01:00
Marco Martin
4722cf45bc check the propert mainText() subText() 2014-02-10 17:01:25 +01:00
Marco Martin
022db8a9af don't show tooltips without tiles or custom item 2014-02-10 16:56:58 +01:00
Marco Martin
808eca4182 use QStringLiteral instead 2014-02-10 16:38:15 +01:00
Marco Martin
87730146db and make the previous one actually work 2014-02-10 16:23:13 +01:00
Marco Martin
e30a50f755 null string:fallback empty string: empty 2014-02-10 16:18:13 +01:00
Marco Martin
0573a47e06 tests and autotests in top level dir 2014-02-10 15:17:07 +01:00
Hrvoje Senjan
cc34d2c17e Rename plasmapkg to plasmapkg2
So it can be co-installed in the same prefix as kde-runtime(4)

REVIEW: 115605
2014-02-10 12:56:26 +01:00
David Faure
e76d11be9d Port to updated KActivities 2014-02-08 18:48:40 +01:00
David Edmundson
fb0728d40a Ammend last commit 2014-02-07 19:37:06 +01:00
David Edmundson
39ce54c0db Set paneltoolbox properties on construction
Also refactor the code to avoid creating and deleting an object if
containmentGraphicObject does not exist.
2014-02-07 19:35:31 +01:00
David Edmundson
233267f492 Fix spelling in comment 2014-02-07 19:35:31 +01:00
Marco Martin
77214956e7 search trough parent hierarchy for locations
seems reliable to determine the applet location
2014-02-07 17:44:47 +01:00
Marco Martin
5ba990df15 invert parent relationship of the compact and expander 2014-02-07 16:19:11 +01:00
Marco Martin
857150c183 the expander is compactrepresentation child
because it'll contain a tooltip too
2014-02-07 12:20:43 +01:00
Sebastian Kügler
b2ead1fe09 Merge branch 'master' into sebas/themeswitch2 2014-02-06 23:56:47 +01:00
David Edmundson
2b7a1eef48 Initialise values
Fixes valgrind screaming about us doing a jump on unitialised memory
2014-02-06 19:07:43 +01:00
Marco Martin
ab140c8c1e add properties for tooltips metadata 2014-02-06 18:49:28 +01:00
Sebastian Kügler
eebfb64d0a Merge branch 'master' into sebas/themeswitch2 2014-02-06 17:56:28 +01:00
Marco Martin
cab11dd7f8 change expanded accordingly when applet expands or collapses 2014-02-06 13:57:53 +01:00
Marco Martin
3858044d25 Merge branch 'mart/AppletAttached'
Conflicts:
	src/declarativeimports/core/dialog.cpp
	src/scriptengines/qml/plasmoid/containmentinterface.cpp
2014-02-06 13:16:11 +01:00
David Edmundson
e82b1dab9d Enable Plasma Controls for tab-navigation 2014-02-06 12:35:32 +01:00
David Edmundson
a3a434ced5 Upgrade all components to use QtQuick2.1
This has some new features like activeFocusOnTab which are awesome.
2014-02-06 12:16:43 +01:00
Marco Martin
3bb0e7d3d0 use the config of the applet parent of containment
that's the systray specific hack
2014-02-06 12:12:43 +01:00
l10n daemon script
34284e90eb SVN_SILENT made messages (.desktop file) 2014-02-06 04:12:17 +00:00
Sebastian Kügler
585aa4998a noise-- 2014-02-06 04:00:39 +01:00
Sebastian Kügler
15e4d93102 PanelConfigView respects contrast effect settings 2014-02-06 03:52:56 +01:00
Sebastian Kügler
62de49128e Don't forget the Blur behind the panel 2014-02-06 03:52:11 +01:00
Sebastian Kügler
60e955784c PlasmaCore.Dialog respects contrast effect settings 2014-02-06 03:51:14 +01:00
Sebastian Kügler
d9e43ff979 Be smarter about contrast effect reading
This commit allows the theme designer to just enable and disable the
effect (enable=true). If no color values are set, values are picked
based on the background color. This essentially restores the hardcoded
values in some other places, and makes them available as sensible
defaults to other themes.

Also, make sure colors are read before the effect is applied (as we need
the new bg color to decide whether it's light or dark).
2014-02-06 02:51:46 +01:00
Sebastian Kügler
8e062ace17 panelview takes contrast effect config from Theme 2014-02-06 01:04:23 +01:00
Sebastian Kügler
5dd4b51151 Plasma::Theme gets API for KWS' background contrast effect
From its api docs:

This method allows Plasma to enable and disable the background
contrast effect for a given theme, improving readability. The
value is read from the "enabled" key in the "ContrastEffect"
group in the Theme's metadata file.
The configuration in the metadata.desktop file of the theme
could look like this (for a lighter background):

[ContrastEffect]
enabled=true
contrast=0.45
intensity=0.45
saturation=1.7
2014-02-06 00:56:50 +01:00
David Edmundson
af82f2f0e7 Take into account screen positioning when detecting if out of bounds 2014-02-05 20:12:22 +01:00
David Edmundson
aada92247c Fix documentation 2014-02-05 20:04:33 +01:00
David Edmundson
3bbda089ed Add missing const 2014-02-05 20:04:23 +01:00
Marco Martin
29c72a9898 include appletquickitem_p.h from the right file 2014-02-05 18:00:05 +01:00
Martin Gräßlin
e69179e42e Fix cast error with new flags in NETWM 2014-02-05 17:42:24 +01:00
Marco Martin
f8b649fba9 move AppletQuickItem in libplasmaquick 2014-02-05 17:23:52 +01:00
David Edmundson
e0b6628541 Remove unused include 2014-02-05 17:22:24 +01:00
David Edmundson
b97e726ae2 Set minimumWidth of button to actually show the text
The minimumWidth of a plasma button is based on the paintedWidth
of the text item. There is no way to work out the correct width it
should be if we set the text to elide.
(except for the hack of using a hidden fake text item)

We should always fit contents. This won't cause any problems unless a
developer has a broken layout, at which point that should be fixed

REVIEW: 115500
2014-02-05 17:00:34 +01:00
Marco Martin
c363b33b43 don't assume containment() exists 2014-02-05 16:39:06 +01:00
Marco Martin
2f17e371d5 comments++ 2014-02-05 16:31:47 +01:00
Marco Martin
0f16569daa move more stuff in private 2014-02-05 16:23:57 +01:00
Marco Martin
c86a956c28 move private methods and slots in private 2014-02-05 16:02:28 +01:00
Marco Martin
7e53c7276a move private members in AppletQuickItemPrivate 2014-02-05 14:54:22 +01:00
Marco Martin
c196f8b748 AppletLoader->AppletquickItem 2014-02-05 14:19:39 +01:00
Marco Martin
b8a41a88f3 get rid of compactrepresentationexpander property 2014-02-05 14:07:23 +01:00
Marco Martin
4a5c20f954 getters and setters for packages 2014-02-05 13:51:41 +01:00
Marco Martin
74515ee2f5 use "_plasma_graphicObject" in applet*
to avoid possible collisions, use the private looking name "_plasma_graphicObject" for the dynamic property of Applet that represents the AppletInterface* pointer
2014-02-05 12:59:33 +01:00
Marco Martin
3325f24992 appletLoader doesn't depend from Declarativeappletscript 2014-02-05 12:51:31 +01:00
Marco Martin
e2ee69bf08 note about subclass property at left hand 2014-02-05 12:09:56 +01:00
Martin Gräßlin
91e9e401f0 Include config-plasma.h before checking for HAVE_X11
Fixes compile warning since kwindowsystem.h doesn't provide HAVE_X11
any more.

Reviewed-by: Marco Martin
2014-02-05 11:10:53 +01:00
David Edmundson
a951b7357b Remove leftover debug code 2014-02-04 19:16:07 +01:00
David Edmundson
ea7802a787 Add interface to open widget explorer from panel config 2014-02-04 19:04:38 +01:00
Marco Martin
9275e84a99 add a Wallpaper attached property for wallpapers 2014-02-04 17:23:22 +01:00
Marco Martin
be4c13e627 call the import org.kde.plasma.plasmoid 2014-02-04 17:01:28 +01:00
Marco Martin
2a0384c3c7 keep locally applet and corona packages
less references to the corona()
2014-02-04 16:43:47 +01:00
Marco Martin
68f2de9ec3 correctly export containment properties 2014-02-04 16:18:45 +01:00
David Edmundson
27e5a2ab46 Fix multiscreen popup positioning
This patch makes two changes:
 1) don't rely on window()->screen() it's rubbish.

 2) if the dialog is parented to a desktop, we want to position
 inside the parent, not outside the parent object

REVIEW: 115448
BUG: 330546
2014-02-04 14:55:48 +01:00
Marco Martin
517403096d port improve cache file dropping to plasma-framework
this ports revision c03052935b082 on kdelibs

improve cache file dropping

* fix regression: version the image cache file name
* version the svg elements
* drop old svg elements files
* respond to changes at runtime by watching the theme's metadata.desktop for changes
* move creation of the svg elements file into ThemePrivate::useCache()

REVIEW:115397
2014-02-04 12:06:09 +01:00
Sebastian Kügler
3647ee36ef Add copyright also in .cpp file 2014-02-04 03:29:31 +01:00
Sebastian Kügler
52c489eee5 Units reads longDuration from config file.
This reads the global animation duration value from plasmarc, and gets
notified of changes: change the file, all animations are updated
automatically.

Put this into your plasmarc to disable animations globally:

[Units]
longDuration=0

As you might guess, other values will work as well.

shortDuration will always be 1/5 of this. (For now.)
2014-02-04 03:25:51 +01:00
Sebastian Kügler
09564783a3 Fix wrong property name 2014-02-04 03:15:01 +01:00
Sebastian Kügler
1bfbee809e const-ref in foreach, clean up debugging 2014-02-04 02:18:28 +01:00
Sebastian Kügler
5f5716791a Merge branch 'master' into sebas/themeswitch 2014-02-04 02:13:15 +01:00
Sebastian Kügler
e8413e2703 Set default animation duration back to 250
Both, 0 and 250 works fine now across our imports and applets.
2014-02-04 02:08:44 +01:00
Sebastian Kügler
1d0c41f936 Fix animations with animations disabled
This may sound a bit weird, but we can't just switch off everything, as
in some cases, the animation is not just eye-candy, but carries
important semantics of the UI -- examples are BusyIndicator and
ProgressBar. Behaviour for those is restored.
2014-02-04 01:32:12 +01:00
Sebastian Kügler
86e458cdd0 Normalize animations in PlasmaComponents 2014-02-04 00:16:55 +01:00
Sebastian Kügler
27eae008d6 250ms animations become units.longDuration 2014-02-03 18:56:32 +01:00
Marco Martin
362a5017b6 support a corona child of an applet
this is an ad-hoc thing for the systray, would be better not having something like that
2014-02-03 18:47:51 +01:00
Sebastian Kügler
2ba6bd6cbc PlasmaExtras' animations use units.*Duration 2014-02-03 16:41:57 +01:00
Sebastian Kügler
90d2afb722 Cleanups in units 2014-02-03 16:32:29 +01:00
Sebastian Kügler
30e98ba8f7 units.longDuration and units.shortDuration properties
These centralize the duration of animations, currently set to 250 and 50
milliseconds. They're notifiable since we want to be able to switch off
animations at runtime.

CCMAIL:plasma-devel@kde.org
2014-02-03 16:30:50 +01:00
Sebastian Kügler
f49c37a36c use pluginName() 2014-02-02 02:55:25 +01:00
Sebastian Kügler
1fedbb587c Allow package deinstallation from package file
Uninstall previously only took plugin names. This is unfortunate, since
it made uninstallation from a package file impossible, leaving it to the
user to figure out the plugin name before a package can be uninstalled.

So let's read the plugin name from the zip prior to uninstalling.
2014-02-02 02:33:47 +01:00
Sebastian Kügler
9e491920e5 Only search for metadata.desktop when necessary 2014-02-02 02:25:08 +01:00
Sebastian Kügler
fa7ae03867 Catch packages zipped into subdirectory
This is a pretty common thing, as most zipping tools put the contents
into a subdirectory by default.

Fixes theme package installation.
2014-02-02 02:18:54 +01:00
Sebastian Kügler
833c2f55dd plasma-shell reads theming from LookAndFeel package
ShellCorona reads the theme from the LookAndFeel package, (defaults,
group "Theme", key name), looks into plasmarc if the LNF theme should be
overridden, and if either exists, it sets the new theme on startup of
plasma-shell.
2014-02-01 23:51:05 +01:00
Sebastian Kügler
174eae6802 Merge branch 'master' into sebas/themeswitch 2014-02-01 22:38:55 +01:00
l10n daemon script
063366d681 SVN_SILENT made messages (.desktop file) 2014-02-01 04:10:47 +00:00
Marco Martin
b68bbca6c8 check for validity 2014-01-31 20:03:33 +01:00
Marco Martin
89cb417e9f propagate sizehints from mainItem 2014-01-31 19:59:45 +01:00
Marco Martin
856e16e803 safer sizehint propagation 2014-01-31 16:56:16 +01:00
l10n daemon script
cef95ccc63 SVN_SILENT made messages (.desktop file) 2014-01-31 04:30:37 +00:00
Sebastian Kügler
91a861e3ef noise-- 2014-01-31 03:39:10 +01:00
Sebastian Kügler
0f3c51e859 Fix theme listing and installation 2014-01-31 03:38:43 +01:00
Sebastian Kügler
e0fbf3473f Remove unused member 2014-01-31 02:25:25 +01:00
Sebastian Kügler
1c4f14c177 Remove some dead code 2014-01-31 02:06:09 +01:00
Sebastian Kügler
ac1aba0f2a Add -t shorthand to plasmapkg
This restores backwards compatibility in arguments for theme
installation.
2014-01-31 01:51:31 +01:00
Sebastian Kügler
de7558e7f7 Use shared KDirWatch instance 2014-01-31 01:31:09 +01:00
Sebastian Kügler
ffeb585003 Rough version in which theme switching works
This aligns the config files and groups, and adds a KDirWatch in the
shared Plasma::Theme private object in order to nofity when the
configured theme changes.

It's a bit rough, doesn't cover all corner cases and needs polishing.
2014-01-31 01:06:43 +01:00
Marco Martin
9e65dbc789 export compactRepresentationExpander
still have to decide if this is a really bad idea
2014-01-30 22:38:44 +01:00
David Edmundson
f5618db949 Remove unused property drawWallpaper
As suggested here: http://community.kde.org/Plasma/libplasma2/API_Review/Containment
kde-workspace doesn't use it.

REVIEW: 115224
2014-01-30 15:34:45 +01:00
David Edmundson
d7a3a10238 Align Dialog Popups to align to be outside the docks.
For the WidgetExplorer we want to show the tooltips to the right of the
scrollbar in the view, not to the right of the delegate the tooltip is
for.
This patch checks if the visualParent is in a dock. If so the popup is
positioned outside

I have also introduced a manual test for Dialog Positioning, and
includied some fixes in the original logic.

REVIEW: 115393
2014-01-30 15:03:28 +01:00
l10n daemon script
d3ae687cd7 SVN_SILENT made messages (.desktop file) 2014-01-30 04:16:54 +00:00
Marco Martin
bf648ceeb6 default full component as the root component
if a fullrepresentation wasn't specified, use the root as fullrepresentation: item and component
2014-01-29 20:07:29 +01:00
David Edmundson
60e0754f90 Reduce the number of times syncToMainItemSize is called in Dialog
syncToMainItemSize is rather expensive and gets called a lot in item
initalisation as various properties get set.
2014-01-29 18:49:06 +01:00
David Edmundson
9de921e34d Warnings-- if modelData.seperator is not set 2014-01-29 18:39:20 +01:00
David Edmundson
d43fa35c42 Remove triple include of the same file 2014-01-29 17:22:44 +01:00
Marco Martin
428c10e24c fullrepresentation and the expander are created on demand 2014-01-29 17:09:43 +01:00
David Edmundson
c9c79e7a42 Optimisation: Don't work out position based on visualParent if there isn't one 2014-01-29 16:54:56 +01:00
David Edmundson
a805af6e7d Don't emit widthChanged ourselves. QWindow does it in resize() 2014-01-29 16:49:50 +01:00
Marco Martin
2a37efbdb7 cleanups
move qmlobject initialization in appletloader
2014-01-29 16:20:39 +01:00
Marco Martin
012554d8d9 get rid of the old sizehint mechanism 2014-01-29 11:11:43 +01:00
l10n daemon script
6ecbbd9129 SVN_SILENT made messages (.desktop file) 2014-01-29 04:19:24 +00:00
Marco Martin
075d55c842 entation switching done by appletloader 2014-01-28 22:55:02 +01:00
Marco Martin
866fe43120 experiment with AppletInterface to be attached
Plasmoid.title etc would be attached properties to the root object instead of being a component itself
2014-01-28 18:26:46 +01:00
Martin Klapetek
2ea398f5a6 Detect current QScreen manually in Dialog
QWindow::screen() never ever changes if the window is moved across
virtual screens (normal two screens with X), this seems to be
intentional as it's explicitly mentioned in the docs.

Until that's changed or some more proper way of howto get the current
QScreen for given QWindow is found, we simply iterate over the virtual
screens and pick the one our QWindow says it's at.

This also fixes the OSD having proper shadows in multiscreen environment
2014-01-28 18:19:30 +01:00
Martin Klapetek
203f4a5049 [OSD] Display "%1 Muted" for media players with volume down to 0 2014-01-28 17:07:50 +01:00
Martin Klapetek
a4c4fc05af Add OSD API for media player's volume changes
Reviewed-by: Marco Martin
2014-01-28 15:08:09 +01:00
Martin Klapetek
605ab0f130 Add OSD notifications to plasma-shell
As we decided to make the OSD available only for certain things, the API
is intentionally limited to very particular set of things. The list is
not complete yet I believe, but it's definitely a finite and a small set

Also as it's not a public service, I left it under org.kde.plasma_shell
on D-Bus.

And we're still missing all the icons except volume, but Jens is on it.

REVIEW: 115301
2014-01-28 15:08:09 +01:00
Aleix Pol
87a7db3063 Create a MimeDatabase component that maps QMimeDatabase
Makes it possible to figure out mimetypes from QML.

REVIEW: 115348
2014-01-28 15:04:19 +01:00
Sebastian Kügler
6dfb4f240b Make setDevicePixelRatio(qreal) a simple slot 2014-01-28 13:49:23 +01:00
l10n daemon script
831357d98f SVN_SILENT made messages (.desktop file) 2014-01-28 04:22:11 +00:00
Sebastian Kügler
789a40f15f Merge branch 'master' into sebas/hidpi 2014-01-28 01:17:19 +01:00
Sebastian Kügler
2a217dff0a Remove unneeded API
- dpi(QQI*) and printScreenInfo(QQI*) goes away, they're mainly useful for
  testing.
- setDevicePixelRatio goes private
- clarify DPI computation
2014-01-28 01:15:38 +01:00
Sebastian Kügler
b7fcea471c Add comment why we read the DPI the way we do 2014-01-28 00:17:32 +01:00
Sebastian Kügler
b102ae5e45 Complete apidocs for Units. 2014-01-27 19:51:08 +01:00
David Edmundson
3abddd8d99 Move python and ruby dataengine bindings from kde-workspace 2014-01-27 19:48:08 +01:00
Sebastian Kügler
b3a5d65580 Complete apidocs for Plasma::Theme 2014-01-27 19:41:39 +01:00
Marco Martin
2f4867bf0c get rid of the old QtScript bindings 2014-01-27 19:27:59 +01:00
Sebastian Kügler
f374d2880d Merge branch 'master' into sebas/hidpi 2014-01-26 23:39:00 +01:00
Sebastian Kügler
94540a4262 Workaround seems to have been accidentally disabled
This workaround is needed for applet internal qmldirs to be loaded.

Fixes crasher in notifications applet.
2014-01-26 23:24:07 +01:00
Sebastian Kügler
b1bc20259a units.dp and units.du be gone
- They're not used
- They're conceptually broken and arbitrary to our scaling concepts
- The implementation as Q_INVOKABLE isn't very useful
2014-01-25 03:35:00 +01:00
Sebastian Kügler
c8ba9746f2 iconSizes.default be gone
This is used nowhere, so better get rid of it before someone gets the
idea.

Leaves us with only one non-scaled icon size. Maybe worth considering to
get rid of this as well, and let Folderview decide?
2014-01-25 03:30:45 +01:00
Sebastian Kügler
11e3d687d9 Remove dialog and toolbar icon sizes
Add FIXME for small icon alignment
2014-01-25 03:25:07 +01:00
Sebastian Kügler
124ae423c1 Scale units.iconSizes with dpi
This is still pretty rough. It seems to work fine for larger icons, but
smaller ones get misaligned. This will need some corrections, such as
locking the smaller sizes to 16, 22, 32, 48, 64, which should take care
of this issue.

With this change, parts of Plasma scale depending on the DPI. This is
noticeable in Kickoff.
2014-01-25 02:40:52 +01:00
Sebastian Kügler
a2baa1c7c7 Merge branch 'master' into sebas/hidpi 2014-01-24 23:38:37 +01:00
Bhushan Shah
3c0007db22 Provide KFormat wrapper in PlasmaCore for unit conversion
REVIEW: 115284
2014-01-24 22:28:04 +05:30
Sebastian Kügler
6d9022dca2 Use int for units.gridUnit
It was an int already anyway, so let's be true about this and also
return an int. This reflects pixel-alignment in the API, not just in the
implementation.
2014-01-24 12:33:39 +01:00
Martin Klapetek
c0f53545eb Provide look&feel package by ShellCorona
REVIEW: 115256
2014-01-23 16:23:28 +01:00
Martin Klapetek
fc30bc6b52 Add OSD to look&feel package definition
REVIEW: 115257
2014-01-23 15:40:31 +01:00
Marco Martin
e0676f7501 use the new backgroundcontrast effect 2014-01-23 15:17:41 +01:00
Martin Gräßlin
188e421956 Do not overwrite the window type by calling setFlags
QWindow::setFlags is manipulating the same X property as
KWindowSystem::setType. Thus our setType never succeeded as the
setFlags overwrote the window type again. In the same way we
have to call setFlags when reverting to the default Normal type.

REVIEW: 115258
2014-01-23 14:26:59 +01:00
Sebastian Kügler
e346c751ec Allow to reset devicePixelRatio
Setting devicePixelRatio to 0 re-reads it and resets it to its default
value.
2014-01-23 04:05:45 +01:00
Sebastian Kügler
cca8a86f98 Rename units.dpiScale to units.devicePixelRatio 2014-01-23 02:18:06 +01:00
Sebastian Kügler
f305950a80 Fix tooltip spacing 2014-01-23 01:50:37 +01:00
Sebastian Kügler
a70dd8c299 theme.defaultIconSize moves to units.iconSizes.default 2014-01-23 01:47:42 +01:00
Sebastian Kügler
4da01ebce0 spacing hints move from theme to units 2014-01-23 01:26:19 +01:00
Sebastian Kügler
d4902e2df2 Remove icon sizes from Plasma::Theme
They've moved into Units
2014-01-23 00:43:21 +01:00
Sebastian Kügler
cc7bd8e11e Port from theme iconsize to units.iconSizes.* 2014-01-23 00:24:38 +01:00
Sebastian Kügler
e10b77f236 Move units from PlasmaComponents into PlasmaCore 2014-01-23 00:06:43 +01:00
Sebastian Kügler
7e5604cc56 icon sizes move into Units
They go into the propertymap, so are accessible now with

units.iconSizes.huge, units.iconSizes.large, etc.
2014-01-22 23:59:23 +01:00
Sebastian Kügler
d51711edc6 Add dpi function from theme
printScreenInfo() has the debugging prints for now, removes random crap
from the shell output.
2014-01-22 01:36:30 +01:00
Sebastian Kügler
847a61b3d8 Delete ThemeProxy 2014-01-22 01:34:56 +01:00
Sebastian Kügler
e81db11f05 Export Plasma::Theme as theme, remove proxy class
The last bits have moved out of ThemeProxy, units is used for iconSizes,
which means we can finally directly use Plasma::Theme, and don't need a
ThemeProxy class anymore.
2014-01-22 01:33:26 +01:00
Sebastian Kügler
0c3e49866a Add dpiScale property to dynamically scale the whole ui 2014-01-22 01:18:54 +01:00
Sebastian Kügler
60950e8333 Correct api docs 2014-01-22 00:39:54 +01:00
Sebastian Kügler
416029ec4f Default tooltip uses units.iconSizes -- works fine 2014-01-22 00:30:04 +01:00
Sebastian Kügler
0dc8a7ee53 Move iconSizes from theme here
This is means two things:
- icon sizes have moved from theme.iconSizes.* to units.iconSizes.*,
  will provide porting script and update docs
- we can kill PlasmaCore's ThemeProxy now. Icon sizing and dpi handling
  is kept outside of Plasma::Theme for now, as it pulls in too many
  deps.
2014-01-22 00:28:09 +01:00
Sebastian Kügler
c84e549715 Use msize.height, not width for gridUnit
This change does two things:

- it increases the gridUnit to 11 pixel on 102DPI, 18 on 170DPI. This
  means on the one hand larger sizing, but aligns gridUnit and
  theme.largeSpacing consistently, and thus makes these types work
  together better.
- it scales the gridUnit with the DPI. The width of the font's bounding
  box doesn't change on the displays I've tried, the height does.
  As a result, gridUnit now scales linearly with the DPI setting.
2014-01-21 23:47:32 +01:00
Sebastian Kügler
095469729a update spacing on font change
Also explain the sizing trick in the comment.
2014-01-21 23:46:50 +01:00
Sebastian Kügler
e72b297e48 Use defaultFontChanged notifier for spacing
This makes the spacing update when the font changes. This will be handy
for a more dynamic DPI switching in the future.
2014-01-21 23:44:05 +01:00
Sebastian Kügler
13a6a38628 Some debugging for gridUnit 2014-01-21 17:55:47 +01:00
Sebastian Kügler
af691a9897 Merge branch 'master' into sebas/hidpi 2014-01-21 16:47:52 +01:00
Sebastian Kügler
18c4fc7c60 Improve tooltip spacing, increase allowance for text 2014-01-21 02:47:41 +01:00
Sebastian Kügler
22c12b8424 Temporarily add an invokable to read dpi value 2014-01-21 00:28:40 +01:00
Sebastian Kügler
ff1d062b47 Skeleton DPI test app 2014-01-21 00:28:40 +01:00
Martin Gräßlin
bdc2ad2a84 Add outputOnly property to PlasmaCore.Dialog
The outputOnly property allows to specify that the dialog should not
accept any input. Thus it's an output only window which supports click
through. This is obviously platform specific and so far it is only
implemented for the X11 platform using the shape extension.

The input shape needs to be set once the window is visible and thus
the functionality is bound to the visible changed signal. The code
ensures that the required shape extension version is present and only
fetches it once.

REVIEW: 115139
2014-01-20 15:57:44 +01:00
Martin Gräßlin
e4d4f5fc1c Allow dialogs to be Notifications
Extending the WindowType enum by NET::Notification.

REVIEW: 115138
2014-01-20 15:57:10 +01:00
Aleix Pol
db3dd7a994 Improve clipboard types support
Try to be more accurate about the translations mimetype <-> variant.
2014-01-18 16:21:57 +01:00