37 Commits

Author SHA1 Message Date
Alex Wilson
2fab0e4804 Remove dead code in NotificationView.cpp 2012-04-01 11:54:23 +12:00
Alex Wilson
ac93328eb9 Have NotificationWindow enforce the window size setting. 2012-04-01 11:54:22 +12:00
Alex Wilson
d19e651f97 Expand click rects when checking for close/collapse clicks. 2012-04-01 11:54:21 +12:00
Alex Wilson
710eb7410f Clean up use of SetPosition().
This fixes a bug where an empty white window would appear when changing
workspaces if there were no notifications.
2012-04-01 11:54:20 +12:00
Alex Wilson
259ffc0252 Style cleanup in notification_server: #includes 2012-04-01 11:54:19 +12:00
Alex Wilson
617ee9eef6 be_control_look is never NULL, so we don't need backup drawing code. 2012-04-01 11:54:18 +12:00
Alex Wilson
fd3e582189 Fix bug in NotificationWindow where the window would be double hidden.
Also simplify and rename _ResizeAll(), now that AppGroupViews remove
themselves.
2012-04-01 11:54:17 +12:00
Alex Wilson
002fd626d6 Fix NotificationWindow's collapsing bug. (#8288)
When a BTwoDimensionalLayout has no visible elements, it has a max size
of B_SIZE_UNLIMITED in both dimensions. In this case, we want it to
shrink down to just the insets.
2012-04-01 11:54:16 +12:00
Alex Wilson
8090bd4a30 Add a TODO about a possible use after free bug. 2012-04-01 11:54:15 +12:00
Alex Wilson
80f96f761c In NotificationWindow, have AppGroupViews get deleted upon expiry.
I.e. once there are no more notifications in the AppGroupView, we get
the NotificationWindow to delete it. As a result of this change, we no
longer need the AppGroupView.cpp _ResizeViews() method.
2012-04-01 11:54:14 +12:00
Alex Wilson
cbdd108a09 In NotificationWindow, delete AppGroupViews when closed.
This is preferable to having them kick around for as long as the server
is running. They don't yet close when all of the notifications for the
view time out, that's coming next.
2012-04-01 11:54:13 +12:00
Jerome Duval
5c6b9eb00d Some fixes for GCC 4.6 warning: variable set but not used 2012-02-23 20:32:13 +01:00
Sergei Reznikov
6da19b0993 Fix Notification Group header text drawing
* This fixes the drawing issues in the "font aliasing" area that are
  appeared as small white points on the gray background.

Signed-off-by: Siarzhuk Zharski <zharik@gmx.li>
2012-01-22 18:36:44 +01:00
Adrien Destugues
2966cc3497 Calling Show() in the constructor unlocks the Looper, so calling SetPosition after that doesn't work.
Tweak the code around as it doesn't really have to be done there :
  * Remove the Show() method override
  * Make sure the window is layouted and moved to the right place before showing it (which is what this early SetPosition call attempted to do)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 22:16:59 +00:00
Adrien Destugues
3b9ae74680 Remove unused code. Thanks to ummccoullough for noticing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 21:14:05 +00:00
Adrien Destugues
44c6e69bd1 Even more work on notification window:
* Use the layout kit. That makes the code simpler.
  * Group headers now look like deskbar team entries. I had the answer just under my eyes all the time.
  * Folding and closing a group are back. However, folding does not work yet.
  * We need to select a better default "failure" color, as red looks a bit aggressive.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 21:04:41 +00:00
Adrien Destugues
e9834f35e7 * revert '43157 as the files are actually needed. I still don't understand how I managed to build everything without them ...
* Move the files shared between server and preflet to the server folder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 12:49:18 +00:00
Adrien Destugues
e0890a26f4 Fix the layouting of notifications again.
I'm not sure about the ApGroupView being (and looking like) a BBox.
Thoughts about that ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 16:25:29 +00:00
Adrien Destugues
4ec6c3a042 Merge patch by plfiorini :
Some changes to the API for notifications.
	* Don't go through be_roster to send a notification, but use Notification->Send() instead.
	* Rename App to Group to make the purpose clearer

And some changes to the notification code itself:
	* Use the Notification class as the way to convey informations about a notification. Allows easier extension of this class
	* Code cleanup
	* Use of the layout kit for the notify window

Unfortunately, the latter part clashes quite a bit with the changes I already did to the notification window, so it's now quite broken. Working on that next, but I wanted to separate that work from the patch ...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 14:57:43 +00:00
Adrien Destugues
14ac1ee962 Tweak the notification window again :
* Spacing of the bprogressbar is now 8pixels on each size
  * Remove the useless window tab for now

Also fix DecoratorFrame() again as BORDERED_WINDOW didn't work with it either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43034 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 14:26:37 +00:00
Adrien Destugues
5414f4dceb More tweaking ofthe element positions in notification view :
* Progress bar is 8 pixels away fom bottom, right, and icon stripe
 * Icon is horizontally positionned like in BAlert
 * Move text a bit more to the right

Thanks to diver for the great suggestion mockups.

Note : some of the settings in Notification preflet are now ignored ("title above icon" comes to mind). I think they don't make much sense 
anyway, anyone cares if they get removed ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-05 20:20:36 +00:00
Adrien Destugues
0e07be0657 More fixes to the notification windows :
* Rewrite the positionning code properly. There's a remaining bug when deskbar is on the left, but I think it comes from DecoratorFrame()
Tweak the position of UI elements :
 * Shift the close cross a bit
 * Make the icon stripe the same as in alerts, and align the icon the same way
 * Adjust the text position, too
AppGroupView:
 * remove the remaining "lines" in collapsed mode (looked like artifacts)
 * Grey out the title in collapsed mode


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-04 21:34:34 +00:00
Adrien Destugues
f2fc3a86c2 Remove useless method call.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-03 15:13:05 +00:00
Adrien Destugues
beeda30637 More tweakings to the notification view :
* Use a BStatusBar for progress.
 * Smaller icon stripe on the left
 * Shift the message title aligned with the rest of the message
 * Fix drawing bugs at the right of the window
Thanks to diver for the suggestion mockups!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-03 14:26:32 +00:00
Adrien Destugues
ee298c8b81 * Fix DecoratorFrame() for kLeftTitledWindowLook windows
* Use it in notification window for better positionning.
Thanks augiedoggie for reporting the problem !


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-06 21:13:28 +00:00
Adrien Destugues
beb636036f Ensure the window is at the right position before showing it. Fixes #7011.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-06 10:41:45 +00:00
Adrien Destugues
9dcd41a8af Some tweakings to the notificationsystem to make it look more like a regular alert.
Feel free to improve on it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-06 09:05:55 +00:00
Stephan Aßmus
4153964a10 Moved IconUtils.h to Interface Kit and therefor made it an "official" header. Since the class has no
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 09:12:38 +00:00
Siarzhuk Zharski
70a1f34934 The "usage" field of property_info should not be localized.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-19 23:06:25 +00:00
Siarzhuk Zharski
720020e0b9 Applied yet another localization patch made by Jorma Karvonen.
Fixes #7005. Thanks.
Exclusions:
- localization of "usage" field of BPropertyInfo rejected - looks like
  it is not displayed to user;
- localization of Sound Event names discarded. The situation is at least
  questionable and should be discussed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-17 19:00:48 +00:00
Philippe Houdoin
7dd47a9be5 Fix off by one iconRect sizes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-21 10:12:34 +00:00
Philippe Houdoin
bdde2d307a Removed bilinear filter, as it was blurring all icons (and bitmap icons are
already rendered with a filter).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-20 17:31:27 +00:00
Philippe Houdoin
2115850c7e Fixed a typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39692 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-01 14:35:51 +00:00
Wim van der Meer
164fceb29a * Fix 'missing braces around initializer for 'property_info'' warning
* Style cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-03 04:34:45 +00:00
Jérôme Duval
31a3c4e885 gcc 2.95 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 18:55:28 +00:00
Stephan Aßmus
f33637d9a8 * Improved BNotification API.
- No more manual memory management.
   - Make it clear who keeps or releases ownership of arguments passed.
   - Copy icon, arguments and entry_refs.
   - Do not expose implementation details (What do the BLists contain?!).
   - BRoster takes const BNotification& and bigtime_t timeout.

 * BRoster::Notify():
   - Proper error handling.
   - Fixed documentation.

 * Adjusted notify:
   - Renamed fOk to fHasGoodArguments.
   - The "const char*" members were really "char*" members (self-managed).
   - free() is NULL-safe.
   - fRefs contains BEntries, so passing void* to delete does no good.
   - Adjustments to the changed API.
   - Coding style fixes.

 * notification_server:
   - Adjustment to the new type for timeout.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 17:50:12 +00:00
Stephan Aßmus
de9dcd41f8 Patch by plfiorini: Integration of InfoPopper as a system service. See ticket
#1245. There are some TODOs outlined in the ticket, but they will be much
easier to review as individual patches against trunk, versus as a new version
of the huge patch.

I've messed a lot with src/servers/notification/NotificationsView.cpp in order
to resolve a crash I was getting when testing this thing (rewrote line
wrapping). I've also replaced the icons with the one that zuMi did long ago.

Thanks, plfiorini, for working on this code as much as you did!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-27 14:48:27 +00:00