The white arrow on the edge is the expander: click on it and hidden icons show up. If you have no hidden system tray icons then the expander isn't shown.
You can see a progress meter for a file copy in there as well. Application jobs stack up there, as do system notifications. They automatically hide within reasonable times, are fully themable, support user interaction (such as pause, stop, resume, open, etc. buttons) and, since they are Extenders, can be detached and put elsewhere. This isn't limited to file operations, however: any application job can use this and in fact gets support for this for free when using KJob from libkdecore. Yes, that means even apps without a GUI can show their job progress in the system tray area! Possible uses? How about print progress, or K3B's burning status, or..?
The last icon on the right is pretty interesting as well. It means "you have some application jobs on the go or some system notifications available". Clicking on it hides or shows the list of jobs and notifications. We're using a generic computer or laptop icon (depending on whether it's a laptop or not) but still, we ought to have some more specific art done up for this use case. So it's a useful bit there: you can click it to hide long-running jobs so they don't endlessly bug you on the screen, and click it to get them back easily. But that's not the really interesting part. That icon is doing two pretty neat things in particular:
First, it's saying "put me at the end of the list, because I'm a special kind of entry". This marks the start of us starting to make the system tray experience richer, and we will eventually extend this kind of expressiveness to all KDE 4 system tray using applications.
Second, it's not "really" a system tray icon. At least not in the freedesktop.org sense. The system tray Plasmoid doesn't care though. It just sees it as another entry to manage like all the rest. Well, it can do a slightly better job with it because it's a native QGraphicsWidget, but it doesn't really know that either. It's more of a nice side effect of not using XEmbed in this case, but a set of D-Bus protocols instead: one for jobs and one for notifications. And yes, we've talked on the XDG list about both these systems for adoption as freedesktop.org specifications; the notifications one is based on the galago spec minus some "curiosities".
Now imagine if all the system tray icons were done similarly: not with XEmbed but over D-Bus. We wouldn't have to rewrite any part of the new system tray Plasmoid for that to work, we'd just add another SystemTray::Protocol to it and away it would go, happy as a clam. That is, in fact, precisely what we intend to do after KDE 4.2 is out.
This shows one of the strengths of Plasma that is born out of the purposeful design rules the entire team keeps in mind when we work on things: we write things to not be rewritten again in the future. We don't write really complicated stuff (that's how we can achieve such rapid growth in the number of components while not simultaneously exploding with instability), we just write things that are reasonably flexible. This prevents the "just tack on another room to the side of house" syndrome. We could have done something pretty similar with the D-Bus transition with the KDE3 system tray, but it would have been adding something to it that it wasn't written in mind for from the start. That way leads to head-meets-table-at-rapid-speed events, and having had enough of those already in my life, I try to help make sure we avoid more of them in the future.
What's really impressive is that the rest of the team Gets It(tm). As with many things in Plasma, the system tray was truly a team effort. Rob worked on the jobs integration, Dmitry worked on the notifications integration, Jason worked on the core design for the Plasmoid and took care of the X11 magic, I did the show/hide of hidden icons and lot of polishing work and Marco touched it with his usual graceful polishing wand here and there. I'm probably missing someone, too, as usual. =P
It is one of the bigger widgets, though, in terms of code. The Plasmoid itself is a little over 3,700 LOC and two DataEngines (reusable by others, of course =) were written for it: applicationjobs (336 LOC) and notifications (200 LOC). The freedesktop.org protocol implementation accounts for 1,105 lines of the widget. That's nearly twice the amount of code for the other three protocols combined (jobs, notifications and Plasmoids) and far, far more than twice as complex. The UI parts are are also pretty complex, though, given what it has to do and what it's meant to do in the future and currently weighs in at a hefty 1,294 lines. The core classes representing the concepts of Tasks and Protocols is the other 700 or so lines.
And there, in a nutshell, is more than you ever wanted to know about the new system tray Plasmoid.