Commit Graph

321 Commits

Author SHA1 Message Date
Aaron J. Seigo
05d6ec6401 remove the args Applet injects to hide that impl detail from subclasses
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812568
2008-05-25 18:38:07 +00:00
Jason Stubbs
f478ae1ca4 geometry() isn't up to date at the time that an ItemPositionHasChanged
notification is received, so don't use it in calculating the correct
position. Also some other small WoC cleanups.

BUG: 161969

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812493
2008-05-25 15:40:29 +00:00
Marco Martin
8c285fdee5 don't allow to drag applets registered as drag handle when the
containment is locked
BUG: 162584

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812459
2008-05-25 14:10:47 +00:00
Kevin Ottens
8edc0b399f Remove the "ghost view" from public API. It's completely internal and
used nowhere.

"ervin, fighting feature creep in APIs since 1980."

(BTW, at this rate I'm less and less convinced that it'd be wise to not
have a second round of API review post 4.1)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812172
2008-05-24 18:33:40 +00:00
Marco Martin
fb80af2962 update applet margins when the theme changes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=812116
2008-05-24 15:58:40 +00:00
Aaron J. Seigo
bea0906806 finish yet another 4.1 feature gap: allow the user to select what to do on drop. the text is a bit lame for icon, it should be "link to file" or something similar but that string doesn't seem to be handy and we're in a string freeze =/ at least it works =)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811949
2008-05-24 07:47:20 +00:00
Rob Scheepmaker
e9989989c5 Check if containment() actually returns a containment, and if view() actually returns a
view. Should fix a crash reported by chani.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811785
2008-05-23 17:21:14 +00:00
Thiago Macieira
f6e555fdbc Initialise variable.
Valgrind rationale:
==18955== Conditional jump or move depends on uninitialised value(s)
==18955==    at 0x40E2295: Plasma::Applet::paint(QPainter*, QStyleOptionGraphicsItem const*, QWidget*) (applet.cpp:765)
==18955==    by 0x65259FF: _ZL12_q_paintItemP13QGraphicsItemP8QPainterPK24QStyleOptionGraphicsItemP7QWidgetb (qgraphicsscene.cpp:3766)
==18955==    by 0x6525AE3: QGraphicsScenePrivate::drawItemHelper(QGraphicsItem*, QPainter*, QStyleOptionGraphicsItem const*, QWidget*) (qgraphicsscene.cpp:3790)
==18955==    by 0x652B61E: QGraphicsScene::drawItems(QPainter*, int, QGraphicsItem**, QStyleOptionGraphicsItem const*, QWidget*) (qgraphicsscene.cpp:4015)
==18955==    by 0x6541637: QGraphicsView::drawItems(QPainter*, int, QGraphicsItem**, QStyleOptionGraphicsItem const*) (qgraphicsview.cpp:3294)
==18955==    by 0x6546C08: QGraphicsView::paintEvent(QPaintEvent*) (qgraphicsview.cpp:3042)
==18955==    by 0x5EDD149: QWidget::event(QEvent*) (qwidget.cpp:7082)
==18955==    by 0x62D12B1: QFrame::event(QEvent*) (qframe.cpp:627)
==18955==    by 0x63804C8: QAbstractScrollArea::viewportEvent(QEvent*) (qabstractscrollarea.cpp:914)
==18955==    by 0x6544410: QGraphicsView::viewportEvent(QEvent*) (qgraphicsview.cpp:2299)
==18955==    by 0x6383611: QAbstractScrollAreaPrivate::viewportEvent(QEvent*) (qabstractscrollarea_p.h:72)
==18955==    by 0x638363F: QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) (qabstractscrollarea_p.h:83)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811619
2008-05-23 14:41:55 +00:00
Aaron J. Seigo
1ff027988b be more lenient with the requirement for a service
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811335
2008-05-22 18:43:34 +00:00
Aaron J. Seigo
26f7e83a53 give proper control over saving/restoring to the containment
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811211
2008-05-22 15:53:48 +00:00
Marco Martin
73c4847a75 remove an unused variable
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=811184
2008-05-22 14:34:30 +00:00
Chani Armitage
30dd547919 SVN_SILENT: really minor style cleanup.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810602
2008-05-21 04:37:10 +00:00
Chani Armitage
ccde7ded20 replace Panel::remove() with Containment::destroy()
now I can remove some of the ten desktop containments I accumulated :)
oh, and the code is cleaner too, yay!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=810129
2008-05-20 04:02:36 +00:00
Marco Martin
812d870086 enforce square aspect ratio when aspectRatioMode() is square of applets
in the panel

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809947
2008-05-19 19:34:13 +00:00
Alexis Ménard
5f6b242127 This magic line seems to fix our crash with embeeded widget
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809939
2008-05-19 19:19:47 +00:00
Rob Scheepmaker
8b20aab3fb Couple of improvements to applet drag&drop:
* Only move applet to toplevel window when overlapping other plasma views, ignoring other windows and such.
* Drag & drop now works reasonably well when using multiple desktop containments ('activities'), both when
  zoomed in as when zoomed out. Only a couple of issues remaining.
* Containment's addApplet function now cleans up the pointer to the applethandle in the preview containment,
  Avoiding some nasty crashes when moving applets between containments.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809841
2008-05-19 16:20:27 +00:00
Aaron J. Seigo
d242cde2cf use Plasma::Label
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=809570
2008-05-19 05:25:16 +00:00
Aaron J. Seigo
f561b7f861 set the text color for the label.
another bug in QGraphicsProxyWidget? labels appear as innactive until you click on them!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808983
2008-05-18 01:26:29 +00:00
Chani Armitage
1d8eb91e89 keyboard shortcuts.
the defaults are kinda lame right now, but I'm planning to do a lot more with this.
applet focus and the shorcut hooks work properly, however.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808610
2008-05-17 03:39:24 +00:00
Dan Meltzer
26dc704a5a remove the FOCUS! FOCUS! FOCUS! debugspam
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808417
2008-05-16 15:03:39 +00:00
Rob Scheepmaker
9f6d033578 Couple of improvements to applet drag & drop:
* when dropping on another containment, the center of the applet is used to determine where 
to drop the applet, instead of the position of the mousepointer.
* movement now works correctly if multiple drag&drops are performed while not removing the 
mouse away from the applet handle.
* now works correctly on rotated applets.
* various code style fixes.


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=808379
2008-05-16 13:28:33 +00:00
Aaron J. Seigo
caa2fdc688 isValid
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=807410
2008-05-13 19:42:17 +00:00
Alexis Ménard
ff9832433d fix restaure of applet geometry
aaron can you check?

CCMAIL:aseigo@kde.org


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=807088
2008-05-12 21:49:55 +00:00
Rob Scheepmaker
df22556806 Improved drag&drop: now the toplevel window appears correctly when zoomed out.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806544
2008-05-11 17:21:55 +00:00
Rob Scheepmaker
1172ef79e9 Start of improved applet drag & drop. What works now is:
* dragging an applet creates a top level window so the applet won't appear behind the panel 
when dragging, as is the case now.
* dragging leaves a semi transparent version of the applet at the original location, so it's
clear to the user where the applet came from and where it will go when the drag is cancelled.

There are still some open issues, I'm working on those...


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=806484
2008-05-11 13:56:35 +00:00
Chani Armitage
61ae3df3fc *Applet::destroy() now handles everything needed for removing an applet prettily and safely.
*removed Containment::Private::destroyApplet in favour of just calling Applet::destroy() directly.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805666
2008-05-09 04:43:21 +00:00
Aaron J. Seigo
5de8aff8ce don't need this timer to keep running indefinitely
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805650
2008-05-09 02:35:29 +00:00
Aaron J. Seigo
1b437f7954 * make the layout removal general to all layout types, not just linear layouts
* call the ScriptEngine's config method if we fail on the automatic generation
* use an internal timer id to trigger flush updated constraints calls so that if it gets called manually we prevent a future unecessary signal from happening

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805631
2008-05-08 23:30:29 +00:00
Alexis Ménard
987ca211c7 put the remove of the layout if the applet is removed in destroy function, then if we call
it from other place we will be sure the applet will be remove from the layout

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805590
2008-05-08 20:26:56 +00:00
Richard Dale
61d69ba939 * Oops, the scripting method 'showConfigurationInterface()' was correctly named after all, so
revert the commit to change it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805532
2008-05-08 17:46:28 +00:00
Richard Dale
580df25f72 * Rename the applet scripting method showConfigurationInterface() as createConfigurationInterface()
to match the name of the equivalent C++ api method

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805387
2008-05-08 12:12:31 +00:00
Chani Armitage
2a6a5fa6db :%s/NotImmutable/Mutable/g
because double negatives hurt my brain.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=805296
2008-05-08 04:26:52 +00:00
Marco Martin
e8ebd60879 SVN_SILENT: make it compile with DYNAMIC_SHADOWS on
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803838
2008-05-04 10:17:03 +00:00
Sebastian Kügler
f3cf6a2167 Make the digiclock paint into contentsRect, not into geometry()
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803608
2008-05-03 13:21:16 +00:00
Aaron J. Seigo
a329771ad5 symmetry
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803323
2008-05-02 15:12:52 +00:00
Fredrik Höglund
4b05a1b05f Subtract the margins from the contents rect passed to paintInterface().
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=803098
2008-05-01 22:39:18 +00:00
Marco Martin
703b6c2ffa * adds a new convenience method getMargins(&qreal,&qreal,&qreal,&qreal)
to fetch all the four margins at a time
* now applet uses it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802928
2008-05-01 09:49:30 +00:00
Aaron J. Seigo
207968b217 resetConfigurationObject()->pimpl
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802892
2008-05-01 03:24:20 +00:00
Aaron J. Seigo
43e6bac986 Plasma::AspectRatioMode, just like Qt::AspectRatioMode. the setter/getter in Applet even used Mode.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802866
2008-04-30 22:13:27 +00:00
Aaron J. Seigo
b81b6ad8de split out the private applet classes into a _p.h
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802860
2008-04-30 21:50:43 +00:00
Davide Bettio
0916889c58 API REVIEW:
* watchForMouseMove() -> registerAsDragHandle() / unregisterDragHandle()
* Added isRegisteredAsDragHandle() (I'm not really sure If it's a good idea to add this method).

ping me if you find better names for registerAsDragHandle() / unregisterDragHandle().

CCMAIL: panel-devel@kde.org

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802774
2008-04-30 15:04:49 +00:00
Alexis Ménard
1eee210264 fix default layout and label when a label fail to load
FIXME : get the correct color for the label with the theme

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802598
2008-04-29 22:57:08 +00:00
Marco Martin
43066e49ce API review:
remainSquare(), aspectRatioMode() and their setters are merged in
aspectRatioMode() + setAspectRatioMode(Plasma::AspectRatio)
Plasma::AspectRatio has IgnoreAspectRatio, KeepAspectRatio and Square

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802561
2008-04-29 20:31:18 +00:00
Aaron J. Seigo
9165b11235 at tokamak i said i regretted using the term "Language" to describe what is really "API". i meant it.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802486
2008-04-29 16:24:14 +00:00
Aaron J. Seigo
daf3d7a4a2 API REVIEW: needsConfiguring() => configurationRequired
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802288
2008-04-29 02:34:21 +00:00
Aaron J. Seigo
0402391d17 we don't need our own shape() here anymore; it really hardly worked at the best of times and was we move to window decos it'll become irrelevant anyhow
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802287
2008-04-29 02:30:23 +00:00
Aaron J. Seigo
1847d60a1d API REVIEW: launchActivated -> releaseVisualFocus; more generic and a bit more obvious as to its purpose
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802286
2008-04-29 02:28:35 +00:00
Aaron J. Seigo
2dd5891029 with some intriguing grotesqueness internal to the library, we can simplify the API and remove location/formFactor from Containment and just use the ones in Applet; externally this is probably rather safer
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802277
2008-04-29 00:49:10 +00:00
Aaron J. Seigo
fa166c72ef SVN_SILENT: small ws fix that was laying around on disk here
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802253
2008-04-28 22:56:02 +00:00
Marco Martin
f06d25a00c API reviews:
globalName(), instanceName()->pimpl

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=802135
2008-04-28 16:22:01 +00:00