The timer was used to skip ahead of parsing and to compress prop
updates to handle width/height changes atomically. This achieves
both by moving pixmap load into the polish phase after those are
guaranteed to be done.
This fixes a bunch of flicker all over the place since 150ms is
obviously far beyond the frame time budget on 60 hz, but we can
usually easily fit into one frame on hot caches.
This makes IconItem try to load global icons from the theme
with Plasma::Svg as well, making it assign the colors from
the stylesheet if the breeze monochrome icons are treated,
that should be scriptable, from some attempts i did the
script seems to convert them correctly, without any
change in rendering.
This will automatically color monochrome breeze icons only
in plasmashell, and more specifically only those that use
IconItem, not QIconItem (iconitem should probably have an
animation-less mode to be able to be used in taskmanager
and stuff)
perhaps in the future we'll be able somehow to hook all
this stuff in QIconEngine to be able to use it in QWidget
applications, but since QIcon does have any idea where it is,
is not usable yet for things like the fullscreen fixed-dark
gwenview view.
Change-Id: I28e5fedabafbe8ed82a9df7614f8e2af18c6a24d
REVIEW:125657
when QT_DEVICE_PIXELRATIO is something different from 1,
the pixmaps generated by Svg will be scaled up to give a proper texture.
This is complementary but not replacing our current approach:
the pixelratio that can be accessed by units is now in relation to the qt pixel ratio,
spacings are also adjusted accordingly (therefore, spaces and sizes won't
need an integer value like pixelratio)
svg introduces also a scaleFactor property (that is pretty much like its old pixelRatio)
basically, scalefactor, will scale both the textures and all the reported sizes,
(old method) pixelratio just scales textures without altering measures
(like qt pixelratio likes)
Change-Id: I304aa0d80abf76abafac239be185dd3b2ab741b7
REVIEW:122673
The active property is usualy set in response to a hover event.
Loading the new pixmap right away, starting the fade animation immediately, provides
a more responsive user experience.
REVIEW: 122857
I was getting the m_pixmapIcon cleared some times, instead of the
m_iconPixmap. This made it forget about my image.
m_iconPixmap should be renamed to something else.
Reviewed and done in collaboration with David Edmindson
This makes the IconItem load the icon immediately after component creation and not
wait 150ms there for no reason which prevents eg. flickering in the OSD when it shows up.
REVIEW: 121219
Making transition between two different size doesn't make much sense,
since repainting is usually happens at that time and it could take some
time to finish. And the animation need to be stopped if m_animValue is set
manually.
Change-Id: I240c19f46d4d13eb0e54b4e7b3fa3b6c31cfc6d8
REVIEW: 121411
* Adapt the existing controls to be generic enough to work on stock QtQuickControls
* Add missing styles needed for the set to be complete (and applications actually work)
The full list of controls styles is now:
ApplicationWindowStyle
BusyIndicatorStyle
ButtonStyle
CalendarStyle
CheckBoxStyle
ComboBoxStyle
MenuBarStyle
MenuStyle
ProgressBarStyle
RadioButtonStyle
ScrollViewStyle
SliderStyle
SpinBoxStyle
StatusBarStyle
SwitchStyle
TabViewStyle
TableViewStyle
TextAreaStyle
TextFieldStyle
ToolBarStyle
ToolButtonStyle
GroupBoxStyle
Change-Id: Ic5d33bc20c7456d1478c07aca33bda63378d5c05
* trigger an update after the animation finished as the IconItem needs to
switch to SVGTextureNode again
* Don't connect needlessly to a lambda slot
* FadingMaterialShader had the texture bind swapped
* Fix virtual method hidden warning in FadingMaterialShader
* Use dynamic_cast instead of static_cast to convert to SVGTextureNode
or FadingNode.
REVIEW: 118251
experiment in dynamic repacement of Text and Background
colors, in order to be able to generate icons of different colors
based on where they are (for instance if the normal background
is dark and the button background is light
at the moment supported an option to invert colors, one
to use the "highlight" color (if we want colored icons
on mouse over)
Port IconItem to native QSGTexture including the animation.
This will save constantly uploading a new texture to OpenGL throughout the animation.
REVIEW: 116024
All cpp code moves into the src/ subdirectory, as the Frameworks policy
suggests.
Directory structure should now be in line with other, future frameworks.