Commit Graph

90 Commits

Author SHA1 Message Date
Aaron J. Seigo
ed8c50e03f completely change how we save and load containments and panels.
it all happens from one file now using nested groups. this has two major effects:

 - one file to rule them all for any given corona; this makes things even nicer for use in other apps, btw.
 - the ability to easily save, send/share and restore corona configuration layouts; something i've wanted from the start


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=741158
2007-11-24 23:38:37 +00:00
Aaron J. Seigo
92ba2c1b0b move all the layouts to their own directory; much more logical and makes it easier to not miss layouts that need changes
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738898
2007-11-19 22:42:56 +00:00
Aaron J. Seigo
07e9e1d3e3 stub in the code for restoring the transform; however it doesn't work as the FIXME explains. but i'm too tired to do anymore on this tonight
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738595
2007-11-19 09:21:57 +00:00
Aaron J. Seigo
b0789ebe14 here, have your containments back. type() was pretty widely used and rather important apparently ;)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=738514
2007-11-19 02:14:18 +00:00
Aaron J. Seigo
47130fbba5 * initConstraints -> loadConstraints, since that's actually what it does
* turn off the background right away in containments to avoid getting size hints with the boundaries!

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737709
2007-11-17 03:31:25 +00:00
Andre Duffeck
174096635e Add signals that incicate an application launch. DashBoardView can
connect and hide itself then, for example.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737051
2007-11-15 11:06:33 +00:00
Aaron J. Seigo
6aa793e6a8 * fix the case of empty pluginName properly
* mark containments as containments; we need to do this here because a containment may also be used as a regular applet; only the corona knows which is when

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=737028
2007-11-15 09:41:55 +00:00
Kevin Ottens
bf77e378a6 Add support for applet handles in plasma containments.
Still a couple of issues to flesh out, but that's usable already.

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735845
2007-11-12 19:27:21 +00:00
Aaron J. Seigo
131fb643b6 KRUSH:
* endsWith, since it must end with; prevent possible clash with an applet with the name containment ;)
* don't add containments multiple times to the scene; no harm, but it spits out warnings to the konsole

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=735125
2007-11-10 23:20:48 +00:00
Aaron J. Seigo
de2dba69a9 * listen and respond to xrandr changes
* convenience accessor to the corona for containments
* some debug to track down the context menu in the upper left corner problem

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=734486
2007-11-09 00:44:35 +00:00
Aaron J. Seigo
709136813b ensure even the "null" containment gets a layout
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=732190
2007-11-03 01:36:53 +00:00
Aaron J. Seigo
045ca46537 i suppose we do want the bottom most left screen ....
is it possible to have a 2x2 grid where screen at (0,0) has an x() > 0?

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731847
2007-11-02 02:31:58 +00:00
Aaron J. Seigo
f330f504d7 try to figure out what the top left screen is for the default panel
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731846
2007-11-02 02:21:13 +00:00
Aaron J. Seigo
43ea2d708f workspace -> kworkspace to mirror the library name and install path
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=731519
2007-10-31 22:06:41 +00:00
Aaron J. Seigo
d71b8d5a5a some useful debug output, which helped me realize just how badly we need PanelLayout ... and perhaps just how broken BoxLayout is? hm.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730535
2007-10-29 05:01:35 +00:00
Aaron J. Seigo
d5dc647850 allow creating a plain Containment object by passing in "null" for the plugin name. this still allows us to protect better against broken configurations where the plugin value is no longer readable while getting us back the ability to request a plain Containment on purpose.
CCMAIL:frerich@hex.athame.co.uk

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=730445
2007-10-28 20:04:38 +00:00
Aaron J. Seigo
0a73264688 * take advantage of constraint flushing
* return the _desktop_ constraint from constraintForScreen
* don't use the arg list to set the location of the panel, use the setLocation method as per usual

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729445
2007-10-26 01:08:19 +00:00
Aaron J. Seigo
576798dd52 set panels properly in setScreen. this will need to be augmented with screen edge stuff eventually as well, but for now this might work better on multiple screens.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729421
2007-10-25 23:09:02 +00:00
Aaron J. Seigo
b93fb635a2 comment out lots of debug that i don't need right now (and hopefully anymore =) so other output is easier to find
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=729227
2007-10-25 11:18:04 +00:00
Aaron J. Seigo
96712a50a8 --warnings; --deprecations;
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=728720
2007-10-24 02:04:02 +00:00
Aaron J. Seigo
4f23175112 * remove a now-unused variable
* add the kickoff menu

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=727585
2007-10-21 05:17:31 +00:00
Alexander Wiedenbruch
ea4a368a42 The integration of SuperKaramba into Plasma is now done
by the SuperKaramba Plasma Applet alone that comes with SuperKaramba itself.

- Remove all previous functions to load SuperKaramba themes
- Add special code into applet browser to handle the theme loading

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724563
2007-10-12 17:30:30 +00:00
Aaron J. Seigo
599f014cff add the containment after init, inc on delayed init
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724312
2007-10-11 23:18:33 +00:00
Aaron J. Seigo
6747103c38 now that we do this in Containment, we don't need to do it here as well
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724226
2007-10-11 19:17:26 +00:00
Aaron J. Seigo
22de66fdc0 * fix order of constraints init so that geometry is done before screen affinity
* only adjust the size of the containment to the screen size if it is a DesktopContainMent

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724225
2007-10-11 19:16:01 +00:00
Chani Armitage
7d2771e8f3 move applet->setDrawStandardBackground(false) to within Containment::addApplet()
this appears to fix all the bugs with applets not showing up on the panel :)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=724060
2007-10-11 08:41:10 +00:00
Aaron J. Seigo
3e90dfe02b move all the init to loadDefaultSetup if we are loading a default setup; as an extra bonus this prevents Containment::init() being called twice
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=723422
2007-10-09 16:32:34 +00:00
Chani Armitage
fe0c9c5272 renamed a potentially confusing var and added some debug output
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=722749
2007-10-08 02:22:29 +00:00
Aaron J. Seigo
42b02fbfa5 let's try defaulting to the desktop containment if we end up without one (e.g. a config file mess up)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=722678
2007-10-07 21:53:47 +00:00
Andreas Pakulat
70f0a9f9be Merge the KConfig branch. This are the 3 main modules (+kdeadmin), which are
needed now because friday is the last BC day. The rest of the modules will
follow as fast as my laptop allows.

svn path=/trunk/KDE/kdelibs/; revision=721704
2007-10-05 22:21:25 +00:00
Aaron J. Seigo
0cfd584408 the Containment plugin for the default desktop will be simply called "desktop"
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=720730
2007-10-03 15:45:31 +00:00
Alex Merry
42e49a2b06 Bring back the panel. It's not perfect, but it gives basic functionality.
You may need to delete ~/.kde4/share/config/plasma-appletrc to get the panel

Reloading from the config file is a bit dodgy - waiting on a commit from aseigo
which changes background painting of applets depending on their form factor.

CCMAIL: aseigo@kde.org


svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=719254
2007-09-30 18:06:08 +00:00
Alex Merry
d29805caef Make drag-n-drop applets work again.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=716003
2007-09-23 18:03:37 +00:00
Aaron J. Seigo
f0cb7e662c - add Contaiment to the build
- put applets in the center of the screen not the top left (i really wish people wouldn't commit obvious regressions like that? the code was ifdef 0'd out!)
- create a Containment per-screen (in the xinerama sense)
- new loading/saving code; not overly comfortable with it yet but it works and maintains the single-pass semantics as well as the option for us to delay calling init() if we decide to do so in the future
- misc fixes here and there

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=714175
2007-09-18 21:25:15 +00:00
Aaron J. Seigo
e0f831373c SVN_SILENT: add "or later" clause. cleared with copyright holders, except for rich moore's ui loader which i need to ask him for permission for first.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712549
2007-09-14 19:06:18 +00:00
Aaron J. Seigo
0fc83b6e76 prevent crashing on exit; layout must not be deleted before the applets which are managed by it.
this is a brittleness in the layout system that really needs to be addressed (and i added a comment and some debug output about this in LayoutItem)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712164
2007-09-13 19:47:14 +00:00
Aaron J. Seigo
45fe956407 --warnings
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712135
2007-09-13 18:50:15 +00:00
Aaron J. Seigo
fc4b474f5c call init() on the applets after they are added to the scene ... do it all at once in the case of loading applets en mass
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712120
2007-09-13 17:03:13 +00:00
Robert Knight
26d4a28aad Use FreeLayout as the Corona's layout in the Planar form factor (vs. BoxLayout in the Horizontal or Vertical form factors)
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=712086
2007-09-13 14:59:29 +00:00
Robert Knight
a29ae57a7d This breaks the existing Plasma applet API, see the contentSize()
comments below.

* New Flow Layout.  This provides simple icon view-esque layout of items.
  Useful for icons for documents , applications or other tasks on the desktop
  for example.  Supports non-equally sized items.

  Works well when used with the LayoutAnimator class to animate insertions
  and removals.

* Re-wrote BoxLayout and removed old HBoxLayout,VBoxLayout classes which had
  a lot of code duplication.  BoxLayout class now takes a direction argument
  in the constructor, ala. QBoxLayout.  New BoxLayout class actually takes
  minimumSize() , maximumSize() of items into account.  The Qt layout code
  for box and grid layouts is surprisingly sophisticated, so the results
  from BoxLayout probably will not be as good in certain situations but
  it should do for the panel.  New BoxLayout also has support for LayoutAnimator

* Fix Plasma::HBoxLayout and Plasma::VBoxLayout to use margin() 
  rather than spacing() for the distance from the top and left
  margins respectively.

* Fix Plasma::Applet::contentSize() to return the actual content size
  rather than a size hint.  Added a new method contentSizeHint() which
  applets use to provide a hint about suitable content size.  

  Existing implementations of contentSize() in applets need to be renamed
  to contentSizeHint().  The arguments and return type are the same as before.

* Install the LayoutAnimator header so that applets can use it

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=707275
2007-09-01 12:34:22 +00:00
Aaron J. Seigo
243f835253 a micropatch i had sitting on the laptop
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=706359
2007-08-30 04:33:12 +00:00
Aaron J. Seigo
559647f5cc make Applet use the newer plugin loading mechanisms
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=705972
2007-08-29 02:33:22 +00:00
Friedrich W. H. Kossebau
cee77d79d9 help plasmoids getting all their events
* until dragLeaveEvent gets special treatment do the default
* drop events over items should(?) only be handled by those



svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=700652
2007-08-16 05:32:54 +00:00
Leo Franchi
c89bd8f0bf add clearApplets() method to Corona, as discussed on panel-devel.
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=698001
2007-08-08 17:32:32 +00:00
Aaron J. Seigo
db4a7ebe61 copyright cleanups:
* Copyright (C) -> Copyright
* add "or later" clause to files that i have the sole copyright on
* add current year (2007) to my copyrights where it was missing

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696946
2007-08-06 11:20:02 +00:00
Aaron J. Seigo
61b1dccc3d don't load from plasma-appletsrc by default, provide a convenience
method for that however (e.g. mirror the saveApplets methods)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696806
2007-08-05 22:44:07 +00:00
Aaron J. Seigo
05d103abfa * position applets due to drops properly
* if we get a matching mimetype, create that applet (not that applet + a
  button too ;)

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696783
2007-08-05 22:04:26 +00:00
Aaron J. Seigo
b41bd5f532 * loading and saving of applets; allows one to define which config file,
which keeps us on the path to being able to snapshot and share layouts
* extend addApplet with optional params for applet id and starting geometry

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696631
2007-08-05 13:03:54 +00:00
Aaron J. Seigo
21c804908e * add an updateConstraints to be used to do things globally that need to
prefix or suffix constraintsUpdated, e.g. manage the shadow
* add experimental support for dynamic shadow, based on a patch by
  zrusin; still issues to be addressed but it gives us the start of a
  layer-based means to do effects

svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=696561
2007-08-05 08:41:55 +00:00
Laurent Montel
e6988faf49 Adapt to new KWarning/kFatal/kDebug api
svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=695877
2007-08-03 06:59:24 +00:00