Commit Graph

223 Commits

Author SHA1 Message Date
Ivan Čukić
533799963e Added bool PopupApplet::isIconified() const method
See: http://reviewboard.kde.org/r/5666/


svn path=/trunk/KDE/kdelibs/; revision=1187560
2010-10-19 20:02:51 +00:00
Aaron J. Seigo
2f9828b966 allow popup applets to define the alignment of their popup
svn path=/trunk/KDE/kdelibs/; revision=1174612
2010-09-12 23:54:30 +00:00
Aaron J. Seigo
23ebeb3bf6 * appletActions -> addAppletActions
* containmentActions -> addContainmentActions
* make both take an event for positioning purposes
* make prepareContainmentActions a more generic so that one code path for handling setting up a ContainmentActions plugin is used everywhere; this also shrinks addContainmentActions down to just being a permissions checker
* make PopupApplet use ContainmentPrive::addAppletActions directly; fewer code paths to track, as it allows removal of ContainmentPrivate::showApplContextMenu

svn path=/trunk/KDE/kdelibs/; revision=1173567
2010-09-09 18:37:28 +00:00
Marco Martin
12a3da4aa4 if the applet parent of this popupapplet is -not- a containment, always collapse the popup
svn path=/trunk/KDE/kdelibs/; revision=1148414
2010-07-10 15:10:08 +00:00
Marco Martin
4d593f353c delay popup showin in the event queue after activation
fixes focus issues on popups
BUG:242173

svn path=/trunk/KDE/kdelibs/; revision=1140471
2010-06-20 19:45:29 +00:00
Marco Martin
fac1870bc2 is the dialog that we are sure i doesn't exist when the popupapplet is expanded, not the icon.
this unscrews size hints (and therefore unscrews the newspaper containment too)

svn path=/trunk/KDE/kdelibs/; revision=1132102
2010-05-29 18:20:01 +00:00
Aaron J. Seigo
b927523850 should only be for preferred size
svn path=/trunk/KDE/kdelibs/; revision=1130680
2010-05-26 01:15:35 +00:00
Aaron J. Seigo
376b6cbb88 PopupApplet now respects the configured size
svn path=/trunk/KDE/kdelibs/; revision=1130581
2010-05-25 18:21:04 +00:00
Marco Martin
df3259842c fallback here too if the element doesn't exist
svn path=/trunk/KDE/kdelibs/; revision=1129432
2010-05-22 11:40:22 +00:00
Marco Martin
1307855db1 this status hack is not needed anymore
svn path=/trunk/KDE/kdelibs/; revision=1128778
2010-05-20 08:45:05 +00:00
Marco Martin
f46ac96bb1 set the accepting input status only if it's unknown
svn path=/trunk/KDE/kdelibs/; revision=1126385
2010-05-13 21:28:55 +00:00
Marco Martin
e1c03d3ef8 by default, set expanded popupapplets to accept input, this covers most of the "panel must have focus" needs
BUG:177674

svn path=/trunk/KDE/kdelibs/; revision=1126373
2010-05-13 21:10:59 +00:00
Aaron J. Seigo
0b5d39a0db tidy-ups
svn path=/trunk/KDE/kdelibs/; revision=1124323
2010-05-08 20:47:42 +00:00
Aaron J. Seigo
3c80abf735 check to see which applet is under the event, defaulting to the host applet.
CCBUG:235252

svn path=/trunk/KDE/kdelibs/; revision=1124305
2010-05-08 19:10:07 +00:00
Marco Martin
d54fd38d3b hardcoded setMinimumSize is evil, evil, evil
now the actual sizehints are used, since qgraphicslayouts got slightly better we have more up to date hints

svn path=/trunk/KDE/kdelibs/; revision=1117260
2010-04-21 17:47:38 +00:00
Marco Martin
b6f75d6e46 if an svg is set for the icon switch to the full view on the desktop as well
svn path=/trunk/KDE/kdelibs/; revision=1115279
2010-04-15 20:30:14 +00:00
Marco Martin
fbe946ca4c don't toggle the popup on activate, but actually show it
also set the state on needsattention.

if the view of the applet is not the same for its containment, call popupposition with the parent of the applet rather than the applet itself.
this fixes the popup appearing at funny places for applets in systemtray, like devicenotifier

svn path=/trunk/KDE/kdelibs/; revision=1115260
2010-04-15 19:25:30 +00:00
Marco Martin
ec3d3774bc try to load a monocrome icon as popupicon, fallback to KIcon
svn path=/trunk/KDE/kdelibs/; revision=1115209
2010-04-15 16:14:37 +00:00
Aaron J. Seigo
434be1bfca save dialog sizes "immediately"
svn path=/trunk/KDE/kdelibs/; revision=1111109
2010-04-04 21:08:54 +00:00
Aaron J. Seigo
8b23c1a4ab only do the resizing when we actually need to
svn path=/trunk/KDE/kdelibs/; revision=1110789
2010-04-04 01:55:56 +00:00
Marco Martin
60d5462c3f don't hide the popup if it lost focus but ithe icon is pressed.
not too pretty solution to
BUG:230157

svn path=/trunk/KDE/kdelibs/; revision=1101663
2010-03-10 14:20:20 +00:00
Aaron J. Seigo
bb75767105 don't remove an item that isn't in the layout
svn path=/trunk/KDE/kdelibs/; revision=1100924
2010-03-09 00:12:31 +00:00
Aaron J. Seigo
b640c67b67 pass on popupEvent signals to the scriptengine
svn path=/trunk/KDE/kdelibs/; revision=1097159
2010-02-28 15:10:30 +00:00
Aaron J. Seigo
b335bdb1b6 we should only muck with the minimum sizes of the popup applet when iconified if it is actually using an icon; otherwise we leave it up to the applet itself to do this properly as it normally would have to
BUG:226391

svn path=/trunk/KDE/kdelibs/; revision=1088928
2010-02-11 22:52:16 +00:00
Aaron J. Seigo
45280bdda6 toggle the popup when activated
BUG:222418

svn path=/trunk/KDE/kdelibs/; revision=1073718
2010-01-12 18:35:03 +00:00
Aaron J. Seigo
9685752853 debug no longer needed, problem solved.
svn path=/trunk/KDE/kdelibs/; revision=1071845
2010-01-08 22:12:35 +00:00
Aaron J. Seigo
ae239eed3f it is possible to not be on the scene yet
svn path=/trunk/KDE/kdelibs/; revision=1071841
2010-01-08 21:58:04 +00:00
Aaron J. Seigo
e23b884920 some diagnostic debug for Jon
svn path=/trunk/KDE/kdelibs/; revision=1071451
2010-01-08 05:07:00 +00:00
Marco Martin
a0162ccdef even tough extender is private in Applet, applet has too many friends, so to be sure it's properly guarded, use a weak pointer
BUG:220482

svn path=/trunk/KDE/kdelibs/; revision=1067549
2009-12-29 19:38:37 +00:00
Aaron J. Seigo
9e73f45160 support setting the icon from the package
svn path=/trunk/KDE/kdelibs/; revision=1063021
2009-12-16 18:35:04 +00:00
Giulio Camuffo
d1a3aef87a the aspect ratio mode is already set in popupConstraintsEvent, avoid override of right aspect ratio mode
svn path=/trunk/KDE/kdelibs/; revision=1059508
2009-12-06 20:30:23 +00:00
Giulio Camuffo
a35e7394c3 adds aspect ratio modes to Dialog; PopupApplet sets the right one for its dialog
svn path=/trunk/KDE/kdelibs/; revision=1051074
2009-11-18 20:11:03 +00:00
Giulio Camuffo
997d6efed4 emit appletTransformedByUser() when the dialog is resized by the user
svn path=/trunk/KDE/kdelibs/; revision=1049811
2009-11-15 21:53:10 +00:00
Aaron J. Seigo
27a02128a5 * consolidate the popup config group name by putting a convenience method in PopupAppletPrivate to fetch it
* move the check for the view lower in updateDialogPosition so that even if we don't have a view, we at least do the sizing, if not the positioning (which is all the view is needed for)

svn path=/trunk/KDE/kdelibs/; revision=1047715
2009-11-11 21:47:56 +00:00
Aaron J. Seigo
b0c24dd7a2 a bit more readable
svn path=/trunk/KDE/kdelibs/; revision=1047696
2009-11-11 20:51:59 +00:00
Marco Martin
10a5e3e90c show, not toggle the popup when activate() is emitted
svn path=/trunk/KDE/kdelibs/; revision=1039702
2009-10-24 11:58:52 +00:00
Petri Damstén
042ed56b39 * Add support to load PopupApplet and Containment from path
* AppletScript::addStandardConfigurationPages adds also publish page
* AppletScript::standardConfigurationDialog does not add standard pages (there is addStandardConfigurationPages)

svn path=/trunk/KDE/kdelibs/; revision=1039471
2009-10-23 13:48:29 +00:00
Aaron J. Seigo
a84cf857e6 simplify this a bit for readability's sake
svn path=/trunk/KDE/kdelibs/; revision=1038116
2009-10-20 16:47:18 +00:00
Marco Martin
7fb7eefa8b use weakpointer, hopefully a crash less
svn path=/trunk/KDE/kdelibs/; revision=1035683
2009-10-15 16:42:41 +00:00
Aaron J. Seigo
c27ddab67e QPointer -> QWeakPointer
svn path=/trunk/KDE/kdelibs/; revision=1034904
2009-10-13 21:43:35 +00:00
Aaron J. Seigo
2b762d0581 fix the "figure out which layout to use" codepath
svn path=/trunk/KDE/kdelibs/; revision=1034850
2009-10-13 17:42:32 +00:00
Darío Andrés Rodríguez
59296fb520 - Fix several minor issues reported by Krazy2
(http://reviewboard.kde.org/r/1837/)


svn path=/trunk/KDE/kdelibs/; revision=1034756
2009-10-13 12:40:13 +00:00
Chani Armitage
cd65144478 rightclick on popupapplet's dialog behaves like
rightclick on the applet itself

svn path=/trunk/KDE/kdelibs/; revision=1029866
2009-09-30 23:07:42 +00:00
Marco Martin
9936c19eae when setting a new widget or graphicswidget, update the main layout or the
dialog, depending the status of the applet was collapsed or not

svn path=/trunk/KDE/kdelibs/; revision=1027670
2009-09-24 13:28:56 +00:00
Aaron J. Seigo
6297027cba harmonize this code a bit
svn path=/trunk/KDE/kdelibs/; revision=1022541
2009-09-12 00:18:57 +00:00
Aaron J. Seigo
1e6aaec27f extenders into a subdir
svn path=/trunk/KDE/kdelibs/; revision=1019570
2009-09-03 21:53:56 +00:00
Marco Martin
72df46a81d no view->no popup
BUG:194570

svn path=/trunk/KDE/kdelibs/; revision=1019493
2009-09-03 18:37:27 +00:00
Marco Martin
acfd2a83fa Add PopupConstraintEvent, tells popupapplets (and applets with popups)
that the position has to be changed

svn path=/trunk/KDE/kdelibs/; revision=1019486
2009-09-03 18:11:49 +00:00
Aaron J. Seigo
cbf532055d ensure popups are on all desktops
svn path=/trunk/KDE/kdelibs/; revision=1016274
2009-08-27 11:50:56 +00:00
Marco Martin
e2e97757ca check the parentlayoutitem too
svn path=/trunk/KDE/kdelibs/; revision=1013416
2009-08-19 20:06:47 +00:00
Marco Martin
32ac2f11fb when an applet is in another applet return a constrained formfactor if
the parent applet is too little
popupapplet uses the parent size insted of the containment to decide the
switch between full and popup, in all normal cases parent is the
containment, except for the ugly applet in applet cases

svn path=/trunk/KDE/kdelibs/; revision=1008775
2009-08-08 11:34:49 +00:00
Aaron J. Seigo
c7be859522 now that we actually have the effect, we don't need this useless bit of comment :)
svn path=/trunk/KDE/kdelibs/; revision=1002811
2009-07-27 02:40:38 +00:00
Richard Dale
695168a4bd Add getters and setters for PopupApplet::widget() and PopupApplet::graphicsWidget()
for use in scripting languages. Add a initScriptingExtenderItem() signal for script
engines to connect to and call their versions of Applet::initExtenderItem()


svn path=/trunk/KDE/kdelibs/; revision=998323
2009-07-17 12:31:08 +00:00
Marco Martin
a3c54b201c move the status stuff into Applet, constify and also put a bit of apidox
(forgotten from the previous commit:))

svn path=/trunk/KDE/kdelibs/; revision=993912
2009-07-09 17:19:00 +00:00
Marco Martin
1300eea396 api to show/hide plasmoids from the systray, like NotificationItems
this REALLY needs api review
CCMAIL:plasma-devel@kde.org

svn path=/trunk/KDE/kdelibs/; revision=993364
2009-07-08 14:55:59 +00:00
Marco Martin
ed562d82dd reposition the popup when the containment geometry changes
partially addresses 197522 (still have to manage cases where the view
just moves or the screen resizes without resizing the containment)
CCBUG:197522

svn path=/trunk/KDE/kdelibs/; revision=987082
2009-06-25 14:13:14 +00:00
Aaron J. Seigo
42de815ffb catch the case where the widget goes from a QWidget to a QGraphicsWidget
svn path=/trunk/KDE/kdelibs/; revision=979515
2009-06-10 02:05:31 +00:00
Aaron J. Seigo
921f3a436b don't reset the window flags right after setting them so carefull; don't activate the window if we're passive and bypassing window management
svn path=/trunk/KDE/kdelibs/; revision=979098
2009-06-08 22:15:48 +00:00
Aaron J. Seigo
fc3c550a85 SVN_SILENT: what is so difficult about following code style standards? gah.
svn path=/trunk/KDE/kdelibs/; revision=979040
2009-06-08 19:52:21 +00:00
Marco Martin
067892f5e9 emit sizehintchanged on popup constraint events
svn path=/trunk/KDE/kdelibs/; revision=977617
2009-06-04 20:17:24 +00:00
Björn Ruberg
784fb1229b This fix makes it possible to have a popup that does not steal window focus when opened or used.
Therefor you need to set Qt::X11BypassWindowManagerHint on the widget shown in the popup. This does 
NOT affect widgets that do not set the Flag. This fix is needed vor the virtual keyboard plasmoid "plasmaboard",
which can only work if the focus is untouched when being opened


svn path=/trunk/KDE/kdelibs/; revision=976221
2009-06-01 10:33:41 +00:00
Aaron J. Seigo
53476746bc activate the window; since we're half-managing it ourselves, we need to take this extra step otherwise it can end up minimized. not what we want.
BUG:191691

svn path=/trunk/KDE/kdelibs/; revision=964490
2009-05-06 18:40:44 +00:00
Aaron J. Seigo
43629ac0f6 remove some dead code
svn path=/trunk/KDE/kdelibs/; revision=964488
2009-05-06 18:38:50 +00:00
Aaron J. Seigo
91a65043c1 use isEmpty() to figure out if an extender is empty or not; prevents popping up empty dialogs just because there are groups in the extender even though they have no items
svn path=/trunk/KDE/kdelibs/; revision=964315
2009-05-06 14:22:15 +00:00
Aaron J. Seigo
7fc1a201ff i can't get work done with this noise
svn path=/trunk/KDE/kdelibs/; revision=959950
2009-04-27 16:04:28 +00:00
Aaron J. Seigo
2e1ca49249 * handle the activate()->setFocus() ourselves
* if we have a popup that is the extender and the extender is empty, don't show anything
BUG:190834

svn path=/trunk/KDE/kdelibs/; revision=959935
2009-04-27 15:25:02 +00:00
Gustavo P. Boiko
86c869be37 Make the QX11Info include conditional
svn path=/trunk/KDE/kdelibs/; revision=955379
2009-04-17 13:21:41 +00:00
Aurélien Gâteau
7ff77020cc Do not let plasma popup appear over screensaver.
BUG: 179924

svn path=/trunk/KDE/kdelibs/; revision=955241
2009-04-17 08:45:46 +00:00
Aaron J. Seigo
8cb32d8ff9 SVN_SILENT: a code sketch
svn path=/trunk/KDE/kdelibs/; revision=954622
2009-04-16 04:54:19 +00:00
Aaron J. Seigo
0523f17be2 SVN_SILENT: ocd strikes again
svn path=/trunk/KDE/kdelibs/; revision=954621
2009-04-16 04:47:48 +00:00
Aaron J. Seigo
81cc419de6 actually show when not animating; faster show when animating
svn path=/trunk/KDE/kdelibs/; revision=954620
2009-04-16 04:33:55 +00:00
Aaron J. Seigo
406a0fac5f animated shows as well
svn path=/trunk/KDE/kdelibs/; revision=954617
2009-04-16 04:19:03 +00:00
Aaron J. Seigo
2dab71aaa7 try using the animated hiding in edge docked cases.. let's see how this goes :)
svn path=/trunk/KDE/kdelibs/; revision=954612
2009-04-16 03:20:29 +00:00
Aaron J. Seigo
dd3aed2f3b revert commit#946749 as it causes way too many side effects including: widgets not getting focus (kickoff no longer puts focus on the line edit), popups not going away when clicking elsewhere ...
will need another fix for BR#179924
CCMAIL:aurelien.gateau@canonical.com
CCBUG:179924

svn path=/trunk/KDE/kdelibs/; revision=951366
2009-04-09 04:18:10 +00:00
Aurélien Gâteau
d10641c35d Use Qt::Tool window flags for popups to avoid having them shown over screensaver.
BUG:179924

I do not have a working copy of kdelibs 4.2 at the moment. Can someone backport
the fix?

svn path=/trunk/KDE/kdelibs/; revision=946749
2009-03-30 09:00:16 +00:00
Aaron J. Seigo
14869d0fb8 don't put the popup applet group in the widget's Configuration group; that's for the subclasses alone
svn path=/trunk/KDE/kdelibs/; revision=937998
2009-03-10 23:03:38 +00:00
Marco Martin
a409afab79 better syncing between dialog graphicswidget and the dialog
(popups shows up at a sane size now)

svn path=/trunk/KDE/kdelibs/; revision=935167
2009-03-04 15:47:59 +00:00
Rob Scheepmaker
5105554bc1 2nd fixed regression! You can now again drop into extenders when hovering over popupapplets.
svn path=/trunk/KDE/kdelibs/; revision=924031
2009-02-09 22:10:35 +00:00
Rob Scheepmaker
fe805eb338 Massive refactoring of extender drag&drop handling. This should avoid bugs with the old way of doing things (toplevel view on an offscreen widget can lose
mouse events while dragging), and is generally shorter and cleaner. There are still some regressions I'll be working on fixing, but it basically works, avoids 
crashes and is even faster.


svn path=/trunk/KDE/kdelibs/; revision=923915
2009-02-09 18:10:45 +00:00
Ambroz Bizjak
476fd1a6a3 Added signals appletTransformedByUsed and appletTransformedItself to
Plasma::Applet. This makes it easier for layouts to know when applets 
are transformed (moved/resized/rotated), and know whether the change
was by the user or the applet itself.

svn path=/trunk/KDE/kdelibs/; revision=923848
2009-02-09 15:09:28 +00:00
Ambroz Bizjak
5e46bcc2ef Don't wait for startup complete, it makes the applet obtain
proper geometry too late, which causes the desktop applet positioning
algorithm to calculate a wrong initial position.
CCBUG: 181854


svn path=/trunk/KDE/kdelibs/; revision=916941
2009-01-26 14:29:55 +00:00
Aaron J. Seigo
029154f2ff return whether the popup is shown as a popup, not whether the popup is at all visible at all
svn path=/trunk/KDE/kdelibs/; revision=916812
2009-01-26 03:15:50 +00:00
Aaron J. Seigo
14ac4a4271 a lot less popup flickering and repainting. if there are no sideeffects to this discovered, this needs to be backported to the 4.2 branch.
CCMAIL:plasma-devel@kde.org

svn path=/trunk/KDE/kdelibs/; revision=915488
2009-01-23 07:33:30 +00:00
Aaron J. Seigo
8620f483d8 always make a layout no matter what
svn path=/trunk/KDE/kdelibs/; revision=906713
2009-01-06 18:08:58 +00:00
Aaron J. Seigo
93a5168b01 allow popups to be shown in any form factor; it really only depends on whether or not there is a dialog
svn path=/trunk/KDE/kdelibs/; revision=903182
2008-12-30 05:35:18 +00:00
Aaron J. Seigo
f6ac5f6052 technically probably more accurate, since in the case of no dialog .... we are showing the popup!
svn path=/trunk/KDE/kdelibs/; revision=903161
2008-12-30 02:11:10 +00:00
Aaron J. Seigo
f58b012cee make it harder for popupapplets to get tooltips wrong by hiding it for them
svn path=/trunk/KDE/kdelibs/; revision=903160
2008-12-30 02:07:57 +00:00
Aaron J. Seigo
7c7218cf89 having two methods named the same thing was a bit insane.. WHICH togglePopup? =)
svn path=/trunk/KDE/kdelibs/; revision=903159
2008-12-30 02:06:06 +00:00
Aaron J. Seigo
52ad594971 allow checking if the applet has a popup showing associated with it. not BC, but we haven't released 4.2.0 yet and this is the least ucky way of doig it ;)
svn path=/trunk/KDE/kdelibs/; revision=902770
2008-12-29 06:03:43 +00:00
Marco Martin
996a1277bc better manage save and restore of popup size of popupapplets when the
content is a qgraphicswidget (i.e it works now), also ensure the default
size when it first pops up is the gwidget's preferred size

svn path=/trunk/KDE/kdelibs/; revision=902439
2008-12-28 12:54:48 +00:00
Marco Martin
548b02c948 adjust the dialog size right after showing, this makes the clock popup
to actually show when the popup is in the panel

svn path=/trunk/KDE/kdelibs/; revision=902184
2008-12-27 16:26:19 +00:00
Aaron J. Seigo
173a19d10d don't show the dialog until it's position is settled which fixes the "i'm seeing flashes of kickoff at the top of the screen when i first open it". this also happens to fix a bug where sometimes a popup would show in the taskbar
BUG:177675

svn path=/trunk/KDE/kdelibs/; revision=901338
2008-12-25 08:36:01 +00:00
Marco Martin
9598dc5982 remove the offscreenwidget before putting it on screen again. this fixes
the popupapplet crash  the second time it's dragged from desktop to
panel

svn path=/trunk/KDE/kdelibs/; revision=901241
2008-12-24 19:13:05 +00:00
Marco Martin
38ab27d842 applets without an icon can have their own aspect ratio (clocks :))
svn path=/trunk/KDE/kdelibs/; revision=900421
2008-12-22 20:32:37 +00:00
Marco Martin
3027146fc9 another sad qgraphicslayout workaround
CCBUG:178288

svn path=/trunk/KDE/kdelibs/; revision=899800
2008-12-21 16:19:47 +00:00
Aaron J. Seigo
ffead9de07 SVN_SILENT document why this is, as it's not immediately obvious why that would be needed there, and obviously got missed previously
svn path=/trunk/KDE/kdelibs/; revision=898229
2008-12-17 19:56:25 +00:00
Marco Martin
1ff5d76fca move the popup before its fist show, even if the show isn't triggered by
a click, this should fix the first random position in devicenotifier
popup

svn path=/trunk/KDE/kdelibs/; revision=898214
2008-12-17 18:37:21 +00:00
Marco Martin
78d7967cea set the layout hint in the popup considering the relative position of the popup icon
with the popup position, this makes for instance the favourites icon in
kickof to be always as near the mouse as possible

svn path=/trunk/KDE/kdelibs/; revision=897521
2008-12-16 11:43:21 +00:00
Marco Martin
06e7a940b0 don't try to reimplement popupPosition() but base on that, otherwise its
bugs would be just duplicated, like 
CCBUG:177621 and CCBUG:177580

svn path=/trunk/KDE/kdelibs/; revision=896192
2008-12-12 20:07:51 +00:00
Marco Martin
4b75b49f06 switch between popup and full on a startup complete constraint
svn path=/trunk/KDE/kdelibs/; revision=896126
2008-12-12 15:15:40 +00:00