Commit Graph

3578 Commits

Author SHA1 Message Date
Adrien Destugues
701d92850e Mail daemon now uses standard notification windows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 08:13:02 +00:00
François Revol
77697df4cf Remove leftover debug code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 20:14:16 +00:00
François Revol
0fa3181d95 Implemented the patch on #7963 in a different way.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 18:09:24 +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
Rene Gollent
89a1a98bca Delete the application object from the correct thread. The previous
version attempted to Quit() and then immediately delete the app object
from another thread. This triggered a debug assert since in the latter
case we push a quit message onto the looper's message queue and let that
handle terminating the message loop. As a consequence, it was possible for
said looper thread to not have finished shutting down properly before we
called delete, leading to a debug assert with respect to calling delete on a
still running looper. Should correctly fix the crash on terminating the 
test app_server.




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 13:13:30 +00:00
Michael Lotz
988cfaca32 Don't delete the be_app, it is destoried by the Quit() call. Fixes the crash
when closing the app_server test environment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 10:04:32 +00:00
François Revol
8215661bb2 Apply patch by 'mt' from ticket #7622 to localize the debug_server alert. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 21:00:07 +00:00
François Revol
e9e53773c9 Erase the removed account from the accounts map. This avoids a crash when an account was removed when we shutdown the daemon, due to double free().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 18:47:21 +00:00
François Revol
e039afe87e Define B_MAIL_DAEMON_SIGNATURE and use it instead of hardcoding the signature everywhere.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42966 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 16:21:17 +00:00
Rene Gollent
cd32d81c40 Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 12:59:10 +00:00
Axel Dörfler
d396412d0b * Ordered methods in the order of their declaration.
* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 11:32:55 +00:00
Axel Dörfler
cdffe7e544 * Removed the license file as well, since it's just MIT.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 09:01:43 +00:00
Axel Dörfler
89cecb5a2a * Removed files that aren't really make any sense to have in our repository.
* Removed duplicated headers that we already have in our repository elsewhere.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 09:01:00 +00:00
François Revol
0fa0204f7c Use the new private roster API to shutdown.
Maybe we should have a confirmation alert the first time ?
Btw, the power_button driver should really implement select() or some other non-polling mechanism, it sux having to waste cpu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-28 21:55:14 +00:00
Michael Lotz
e09045d41f * Fix debug build of the registrar.
* Make the macros use varargs so we avoid multiple invokations of the print
  function (to properly use with debug_printf for example).
* Minor cleanup to the macros.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-14 11:57:39 +00:00
Michael Lotz
7d7b963225 * Remove the BNetworkDevice::AddPersistentNetwork() again and instead introduce
BNetworkRoster::{Count|GetNext|Add|Remove}PersistentNetwork() as it fits
  better (thanks Philippe for the heads up).
* Implement the backend for these functions in the net_server and also move
  conversion of the wireless_network based format into the settings based format
  there.
* Implement removal of a network from the settings and make adding a new network
  with the same name replace the old one instead of just adding multiple ones.
  Might need to change this in the future depending on how we want to handle
  multiple networks with the same name (i.e. distinguish based on BSSID or
  similar).
* Fix apparent oversight that caused configured networks _not_ to be used in the
  auto join attempt.
* Remove auto joining open networks. I've been bitten by that more than once now
  because we happen to have an open network in the neighbourhood that I now
  accidentally used to transfer quite a bit of (unencrypted) stuff before
  noticing... In the future, one will instead have to explicitly join an open
  network once and store that config. Note that the driver will actually still
  auto-associate with open networks due to how things are set up currently.
  Note also that the auto join will fire join requests whenever there's a
  disassociation event, so you might see spurious join dialogs when the
  wpa_supplicant actually just re-establishes the connection.
* Make join requests async again. Instead of waiting for a synchronous reply of
  the wpa_supplicant we instead return success when the request has been sent.
  While the API call might still be made synchronous again in the future, the
  net_server should really not block on an external application. In the case of
  the wpa_supplicant we would otherwise deadlock when using the new
  *PersistentNetwork() API after a successful join, and in other cases we might
  just unacceptably delay other calls.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 19:56:19 +00:00
Michael Lotz
8fecaf03e3 Add message handling for adding persistent network configurations (as in
wireless_network).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42806 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-07 10:18:21 +00:00
Michael Lotz
4890c4a265 * Add functions for constructing a settings file from messages and settings
templates.
* Prepare saving of such generated config files. Actually writing them out isn't
  yet done however.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42805 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-07 10:15:57 +00:00
Michael Lotz
2348de0bbc Small cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-03 18:36:00 +00:00
Axel Dörfler
1144475973 * Fixed build for non-x86 platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 20:24:39 +00:00
Axel Dörfler
b6284c7f8a * Moved the SIMD code from AppServer.cpp to Painter.cpp where it is actually
needed. It might be best to put it into its own file, though.
* This is required in order to let our test environment work with the stricter
  runtime_loader we have now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-29 23:58:34 +00:00
Michael Lotz
dd9a0d1d4b * Fill out the wireless network join request as detailed as possible, but don't
fail when encountering missing information (like the password). This gives the
  supplicant an opportunity to ask for the required information as needed.
* Remove (currently broken) WEP support from the net_server. It will be
  delegated to the supplicant as well, as that one already handles all the
  key/password conversion.

In the absence of a supplicant the net_server can therefore only join open
networks now. It will also only attempt that if it is sure that the network in
question is actually an open network (by means of scan results or explicit
configuration) and will otherwise delegate the join request.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-28 00:21:32 +00:00
Clemens Zeidler
2ccad1f632 * Fix decorator reloading of windows in a stack. When reloading the decorator all tabs have to be added to the decorator, the focus and the top layer tab must be set. The decorator does not know about the window and the window stack, thus the window has to do it itself.
* Add Joseph Groover to the author list. 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-25 23:04:43 +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
Clemens Zeidler
c732cb560d Reset the tab region when switching to a tab less look. At least partially fixes #7919.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-15 23:29:38 +00:00
Clemens Zeidler
f33cf3fd44 Activating all windows in a stack caused flickering. The reason to activate all windows was to get all windows form a stack into the upper window layers, otherwise it was possible that the top layer stack window is activated but another window in the stack is at the bottommost layer position. Sending this window to the back does not triggered sending the complete stack to the back. The send behind call is now redirected to the top most stack window to ensure the stack is send behind.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-13 22:59:47 +00:00
Clemens Zeidler
fcde9a3249 When stacking windows, move the new window to the parent position and size. Simplify the part in S&T that took care of it before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 01:49:00 +00:00
Clemens Zeidler
cd67c205ff Only remove a window from the S&T group when the hide event is not triggered by a minimize call.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 00:03:25 +00:00
Clemens Zeidler
e0bc3d9e2b * Remove the bad designed GroupCookie class and move its functionality into the WindowArea. As an result each WindowArea only has one set of tabs and constraints.
* Fix group splitting.
* Style: win -> parentWindow



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42610 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-09 22:55:20 +00:00
Axel Dörfler
98e30c67df * Fixed style violation (tab before '{' that Jérôme already mentioned), and
merged the two ifs.
* Automatic white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-08 21:11:03 +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
Clemens Zeidler
cdb351d4a4 When activating a window also bring all windows in the stack to the front layer. I used the ActivateWindow method because there is some magic involved when changing the layer position, utilising this method seems to be a safe way to do it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42577 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 22:35:27 +00:00
Clemens Zeidler
ac4853b49f When removing a window from the stack keep the mouse at the same tab position.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42576 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 22:31:42 +00:00
Clemens Zeidler
747d2bb6dc Ok, ok if we redrawn the complete visible region anyway we don't have to calculate any dirt.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 05:57:56 +00:00
Clemens Zeidler
38a8938d9f Only redraw visible region.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 05:53:26 +00:00
Clemens Zeidler
57e0263ceb Don't remove the window if there is only one window in the group. Fixes #7884.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-04 05:33:00 +00:00
Clemens Zeidler
01d68c9728 Disable S&T debug output and fix typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 23:51:30 +00:00
Clemens Zeidler
1c1415732d Move flags and look into the tab too. The flags are needed to determine e.g. whether or not the zoom button should be drawn.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-03 01:36:50 +00:00
Clemens Zeidler
c70bf97cfc Set the top most window look when switching between windows in a stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 22:42:57 +00:00
Clemens Zeidler
55fbf11fd7 If a window is hidden remove it from the S&T group. This happens when MediaPlayer goes fullscreen. Maybe not optimal but at least consistent with terminal which also left the S&T group in fullscreen mode. This is because the terminal has no decorator in fullscreen mode and thus can't be stacked any more (maybe this should be solved in the future...). Fixes #7895, #7896.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 22:27:12 +00:00
Clemens Zeidler
1c44bb2157 Check if the dirty region is valid. Part of #7896.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 22:20:12 +00:00
Clemens Zeidler
817f7d8003 Check if there is still a decorator. Fixes #7894.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 10:56:39 +00:00
Clemens Zeidler
27f5d57924 Fix coding style pointed out by Axel. Thanks for the array trick haven't known this one :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 06:46:11 +00:00
Clemens Zeidler
555ff46538 Check size limit of all stacked windows when resizing. Fixes #7893 thanks to diver (again).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-02 05:00:22 +00:00
Adrien Destugues
3eb02f08d9 Style fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 17:19:54 +00:00
Clemens Zeidler
7286c86c39 Disable group keyboard navigation for now. Don't start a S&T operation if the right button is down.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 10:50:37 +00:00
Clemens Zeidler
e089170a15 Fix the check for the max tab offset when there is only one tab.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 01:30:47 +00:00
Clemens Zeidler
bd545a2af2 Set the top layer tab when detaching a window from the stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 01:03:06 +00:00
Clemens Zeidler
2dae355ecb Fix window stack api and Desktop::WindowForClientLooperPort lock assert.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-01 00:56:23 +00:00
Adrien Destugues
e1ac525ddf * Don't eat alt+space if there is only one input method available (the shortcut is meant to switch input methods)
Makes it useable in applications and less confusing. Fixes #6468.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-31 14:45:55 +00:00
Clemens Zeidler
e4228c3760 Also make the right option key working as a S&T key.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42506 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-27 03:24:53 +00:00
Clemens Zeidler
6ce29ffc97 Remove some debug left over.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42503 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 23:38:42 +00:00
Clemens Zeidler
8313747b53 As done in move, resize only the top layer window. The top layer window resizes the lower windows separately.
Use auto locker.
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42502 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 23:18:28 +00:00
Clemens Zeidler
6a0ed7da53 Move S&T back into the app server.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42501 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 22:18:55 +00:00
Clemens Zeidler
b9bedde479 Assert the right lock, thanks Axel. Some clean up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:49:16 +00:00
Clemens Zeidler
4154a161ed Set the top tab every time when adding a new tab. This draws newly stacked tabs correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:34:34 +00:00
Clemens Zeidler
b7b6df07b8 When closing a window the window can't redraw the dirty region anymore. Mark the region of the remaining window dirty.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 06:15:41 +00:00
Clemens Zeidler
86b010824c * Draw the complete decorator off screen and copy it to the front when finished. Stippi please take a look. This fixes some flickering when drawing shifted tabs in stack mode. In stack mode the different tabs sometime repaint each other, thus the decorator has to been drawn double buffered to avoid artefacts.
* Add an option to draw the button directly, i.e. when they are clicked.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 05:53:35 +00:00
Clemens Zeidler
7c5525e834 Only allow windows with a normal thick border to S&T. Fixes #6647.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 04:37:27 +00:00
Clemens Zeidler
16aa61c46a Fix changing of the window feel and borderless windows.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-26 02:41:56 +00:00
Clemens Zeidler
898878314d Fix todo and only unload listener from the last add-on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 05:07:26 +00:00
Clemens Zeidler
f4f30311aa Cleanup app server directory a bit by creating a font and a decorator sub folder.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 04:31:54 +00:00
Clemens Zeidler
418f391fb1 Fixes #7796. The decorator add-on is unloaded when not needed anymore. Avoid assigning offscreen windows a window behaviour (which lives in an add-on). When loading another add-on the offscreen window was still pointing to an invalid window behaviour.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 03:32:14 +00:00
Clemens Zeidler
bb2e9b06ac Add multi tab support to the default decorator as discussed on the mailing list. Windows can be stacked on top of one another. All windows using the same decorator instance. This makes it easier to draw the stacked tabs and makes it possible to design more fancy looks for stacked windows. This also helps to fix some issues in S&T, e.g. when activating one window in a stacked group all windows have to be activated to ensure that all tabs are on top. This causes some flickering in tracker.
* Each Window has a reference counted WindowStack class which can be shared between stacked Windows. To keep the Decorator separated from Window there is another tab list in the Decorator now. The index of the stacked Window in the window stack is the same as the index of the tab in the Decorator. Properties like title or window focus are managed on a per tab basis now. This mean when you set the title in the Decorator you also have to specify the tab id which is equal to the window position in the stack.

* When drawing the decorator its important that only the top window is doing the drawing. Also the top window drawing engine should be used.
Actually that is only a problem directly after a window is stacked and the other window has still a none empty dirty region. In this case we clear the dirty region of this window and stop the drawing (the top window will draw everything).

* Track if shifting of a tab is still ongoing, i.e. mouse still down.

* The key event filter called the DesktopListener without holding the window write lock. This probably caused #7801 and #7796.

* Commented out assert's in Window::SetScreen and Window::Screen. Add TODO because I'm not sure about the screen access.

This breaks all existing decorators again, sorry guys! Haven't looked into any other then the default decorator (and the SAT decorator). Will not fix the others in the near future so go for it! Since applications should be able to rely on S&T features the other decorator must be able to handle multiple tabs as well. A simple solution would be to draw all title bars in multiple rows. That probably looks quit poorly. Think the better solution would be to draw a tab interface in the title bar, e.g. like in KDE.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42478 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 01:09:26 +00:00
Clemens Zeidler
5b1742af27 Remove another assert that fails. In this case the access from ServerApp is fine.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42477 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-25 00:11:33 +00:00
Clemens Zeidler
d5314ec095 * It helps a lot to find thread problems when the multi locker assert macros actually doing something useful. Took me forever to finally realise that and to find a threading bug.
* Remove a superfluously assert which sends the app server into the debugger. More fixes following.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-24 10:50:33 +00:00
Rene Gollent
9918b71672 - Factor out setting up the arguments for gdb handover.
- When using the graphical debugger by default, fall back
  to setting up gdb handover if the GUI is unavailable.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-17 16:55:28 +00:00
Rene Gollent
de6f745cde Add support for conditionally compiling the debug_server to hand off crashed
teams to the native debugger instead. This assumes the latter is installed
in /boot/system/apps.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-17 15:26:56 +00:00
Clemens Zeidler
f9b2ba2b84 Patch by taos. Adds missing localization to Mail status window + cosmetic changes in Mail
preflet. Replacing B_TRANSLATE with B_TRANSLATE_COMMENT to better discern "never" and 
"Never".



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-14 20:31:12 +00:00
Clemens Zeidler
b91ddd8116 * Make the magnetic border code more accessible by moving the code into a separate class and use it in a new protected WindowBehaviour method.
* Simplify the algorithm a bit, no functional changes are intended.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42377 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-04 21:04:55 +00:00
Clemens Zeidler
83c3aba207 More localization support by taos, thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-29 22:37:44 +00:00
Clemens Zeidler
c30f4641fa Be more clean and use a auto lock, thanks Axel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-29 22:00:00 +00:00
Clemens Zeidler
2483cfd8b7 Patch by taos. Fix mail daemon signature. Thanks! This probably break the HTA entry... Is there a special reason why the signature is x-vnd.Be-POST? x-vnd.Haiku-mail_daemon sounds better to me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-28 23:48:00 +00:00
Clemens Zeidler
ccc37bbb77 Don't forget to unlock when there is no desktop listener for the message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-25 02:46:15 +00:00
Clemens Zeidler
8a26696cbf Patch by mt who also puts the Japanese mail translation into HTA. Thanks! Closes #7689.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-23 19:59:00 +00:00
Michael Lotz
b617e8daff A blast from the past: r15048 from way back removed the wrong boolean parameter
causing the message to be sent with a timeout of "true" (getting converted to 1)
instead of the intended 0 meaning no/infinite timeout. This caused the message
sending to be aborted due to the timeout if it was blocking on a full port for
example. Since the return value is never checked noone noticed.
It's possible that this was the cause of some lost input messages (mouse,
keyboard) when the system was under heavy enough load for either the port heap
to be exhausted (unlikely) or the input_server <-> app_server port to run full
(quite possible).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 22:24:36 +00:00
Clemens Zeidler
c26c18e489 Apply a nice patch from Taos, thanks!
Localize the mail server and preferences. Get rid of MDRLanguage.h.
The Japanese translation is attached to #7689. Please give a notice when it is in the translation system and the ticket can be closed.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-20 21:15:27 +00:00
Jérôme Duval
e53da92708 Part of patch from #6840:
* GCC 4.5 complains about switchs with cases not part of the window_look enum (see WindowPrivate.h).
* To keep them private, cast the enum to int before use in switchs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-19 18:13:21 +00:00
Stephan Aßmus
b46615c55a Applied patch by Joseph "looncraz" Groover from ticket #7445.
This changes how Decorators are managed and applied. The app_server
no longer scans and maintains the available ones himself, but is
simply asked to load a Decorator add-on from a provided path.
The Decorator scanning is moved into DecorInfo and DecorInfoUtil,
private classes in the InterfaceKit. The bin command 'setdecor'
uses those.
I cleaned up all the coding style violations that I could find,
removed chunks of code which didn't make sense (if you never put
a NULL pointer into a list, you don't need to check for this and
so on) and also cleaned up other passages for improved clarity
and simplicity.
I also tested the functionality and it works fine. Would even be
Ok to include in Alpha 3, IMHO. Thanks for the patch!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-19 15:25:54 +00:00
Philippe Houdoin
b6ba1daaac There is no point trying to request back from DHCP a link-local
auto-configured address...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-16 16:00:18 +00:00
Axel Dörfler
10dfe8970c * Really, there is absolutely no need to pass the default argument to an
optional parameter...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-06 20:03:15 +00:00
Rene Gollent
8a9d5e34fe Patch by Atis Elsts from GSoC 2010 that was overlooked.
- Adds IPv6 fragmentation support and some partial work to enable configuration of IPv6 in net_server. Not currently in the build.
 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-28 22:07:39 +00:00
Philippe Houdoin
0892800f69 Implemented INIT-REBOOT DHCP state: as required per DHCP specs,
we now request the last address we got from DHCP server, and only on failure
we fallback on the whole INIT state (discover, collect offer, etc).
This should fix people losing their IP address at each renewal, or far worse,
after the link goes up again.
Closed #7346.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-27 15:04:55 +00:00
Philippe Houdoin
e65843e8c9 Revert files that were commit by mistake in previous commit. Sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:56:02 +00:00
Philippe Houdoin
9ff5266f3a Avoid deadlock.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:52:16 +00:00
Philippe Houdoin
302a7082ba Quit AutoconfigLooper when switching to static configuration.
Before, DHCP will still run after a link down & up event, which could 
leads to break the user-defined static configuration.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 01:02:02 +00:00
Philippe Houdoin
84fdf2c3ca Made _AddressToString() static methods.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-23 00:48:11 +00:00
Philippe Houdoin
03f6ab7fd1 Add dhcp_message::FindOption(), to retrieve a specific option.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 21:52:15 +00:00
Philippe Houdoin
6d5ad15714 Check node monitoring messages to handle them only when it make sense.
Before, the "interfaces" settings file creation/removal notification was 
leading to a attempt to configure/remove an interface named 
"/boot/common/settings/network/interfaces"!
Could help fixing issue #7475.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 21:33:43 +00:00
Philippe Houdoin
d09c1f8e8d Made message retransmission delay +1/-1 randomized as required per RFC2131
spec (see paragraph 4.1)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-22 20:45:34 +00:00
Axel Dörfler
18ebc7918d * Temporary commit to be able to test new focus behaviour, see #7280.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41264 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-18 20:15:46 +00:00
Jonas Sundström
1c09002cbe Set the exclusive launch flag on servers, daemons, Tracker and Deskbar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-11 12:23:51 +00:00
Jonas Sundström
3252a2a09d Remove old debugging output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-04-07 12:09:57 +00:00
Clemens Zeidler
08606d49da Add settings to enable and disable in and outgoing mail accounts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-22 10:28:22 +00:00
Clemens Zeidler
a1f765fb1a Create an index for MAIL:account_id. If you using POP3 update to this revision! POP3 queries for this attribute and if no mails are found with this id it will delete the missing mails on the server (if the option is ticked).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-21 20:02:48 +00:00
Clemens Zeidler
a64bd5649d Write MAIL:name, MAIL:thread and MAIL:account attribute. The account id is now stored in MAIL:account_id. This requires to re-download all mails to write the correct attribute (sorry).
Fixes #7375.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-21 09:13:12 +00:00
Clemens Zeidler
37f85698cf - Fix race condition when start watching a mailbox and directly afterwards stop watching it. A BLooper was not suitable to synchronise start and stop watching. Wait till the IDLE command is send before returning the SyncAndStartWatchingMailbox method now. That ensures that a later StopWatchingMailbox call find the maibox in an expected watching state.
There is one thread (BLooper) to handle new commands and one watcher thread which is just listening at the server port for updates. The race condition occurred for example when a sync/watching and a fetch body message are send to the looper. The sync message just triggered the IDLE command in the watcher thread. In the meantime the fetch body command send a DONE command, because the IDLE command has not be send at this time the watcher keeps watching. 

- fix int32 -> ssize_t thanks Axel and Stippi
- clean up



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-11 20:13:54 +00:00
Stephan Aßmus
1d1031cf27 Duh, of course fStyle can be NULL in SetStyle(), which is for example
called from the constructors...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:47:57 +00:00
Stephan Aßmus
663738e98e The whole file assumes fStyle cannot be NULL, and it can't be NULL unless there is
no default font at all, in which case we have more serious worries. CID 1559.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:36:35 +00:00
Stephan Aßmus
87911f6c6e fClippingRegion cannot be NULL at this point (or at least is not supposed to be). CID 3167.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 21:26:17 +00:00
Stephan Aßmus
de68adf69b Secure coding, sprintf->snprintf. CID 6321.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:59:00 +00:00
Stephan Aßmus
f1aceeca70 Initialize hash_link. I don't think it could be used uninitialized, but it never hurts...
CID 9468.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:55:01 +00:00
Stephan Aßmus
54fff0c456 Fixed resource leak in error code path. CID 5888.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-08 20:48:09 +00:00
Jonas Sundström
82e7ef6709 Add app filename localization catalog entry support to BAppFileInfo, registrar and mimeset. Need help to understand why the build-version of UpdateMimeInfoThread.cpp does not compile with the added code, currently commented out. Sorry about the arbitrary B_MIME_TYPE_LENGTH*3. Advice and review welcome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-07 15:14:46 +00:00
Clemens Zeidler
b0acdd1578 Remove some code that pretty much looks like some legacy code to add additional attributes to a running system.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40797 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-03 21:42:29 +00:00
Clemens Zeidler
b8d2bbd616 - Partial downloaded messages are now opened by Mail and not by the mail daemon. Mail request the body fetch and get notified when the daemon is done. During this time the Mail window title is showing "Downloading: subject". This fixes #7256.
- Some cleanup in Mail.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-03 09:05:04 +00:00
Clemens Zeidler
c38ff3e36c Remove unused files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-28 21:26:23 +00:00
Siarzhuk Zharski
c4489236c7 Additional and hopefully final fix for #7281 "Shutdown is not localized".
PS: Yes, I'm not brave enough to change the character case in the signature for 
one of the most significant servers in the system ;-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-27 22:38:02 +00:00
Jonas Sundström
9f0f6fcd99 Fix mixed up button labels.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-26 05:57:46 +00:00
Philippe Houdoin
ea56573776 Localized Shutdown process.
Closes #7281.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40682 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-25 13:16:04 +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
Stephan Aßmus
581144ea46 fLastSnapTime was never initialized, which may have prevented
snapping to work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40640 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 11:36:26 +00:00
Stephan Aßmus
cbaa4d3143 Initialize all members. They don't seem to be used, but this can avoid future
use in derived classes without enforced code paths... (CID 10252).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 11:29:26 +00:00
Jonas Sundström
46f4e9db27 Useless type qualifier on return type. CID 5666.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 04:38:57 +00:00
Jonas Sundström
93e53019bf Missing InitCheck. Error checking stale status variable. CID 2962.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-23 04:35:37 +00:00
Clemens Zeidler
7398688a5e IMAP commands are serialized using the BLooper message queue. MarkMessageAsRead used the direct way to access the protocol and so interfered with ongoing requests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40606 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-22 00:42:02 +00:00
Clemens Zeidler
f191a57149 - Change the new mail query to search for the MAIL:read attribute.
- The deskbar status query is looking for MAIL:read values equal to B_UNREAD now. This has the effect that in manual mark as read mode also unseen messages are counted as read messages. In this way the deskbar shows the full mailbox icon only for really new messages.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40596 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 10:01:39 +00:00
Clemens Zeidler
9967dfd924 - Extend MarkMailAsRead to take a flag not only a bool value. Write an additional MAIL:read attribute.
- Remove some hard coded paths.
- Catch failure of FindMessage correctly. Thanks Axel.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 07:24:29 +00:00
Clemens Zeidler
0e657c0b6c Remember tracker message when downloading a partial message and open it with Mail. This is needed to get the next/previous message after downloading the body.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40575 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 07:55:47 +00:00
Clemens Zeidler
df317863c8 Fix regression spotted by Humdinger. Try to open the entry in settings/Mail/mailbox first.
Add some more info to the self made query, not perfect yet.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 06:08:26 +00:00
Clemens Zeidler
20a1f87af2 Open the new query window when clicking the deskbar mail icon. The mails/in folder is not a valid folder in any case and if you have a lot of mails it takes for ever to display all mail in tracker.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 04:14:48 +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
Axel Dörfler
ddf57b6cf6 * Reverted back to the original version of BNetworkAddress::SetAddress();
in_addr_t is now in network endian again. Thanks, Philippe!
* Made SetToLoopback(), and SetToLocal() a bit more useful (although the latter
  isn't implemented yet).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-18 21:09:21 +00:00
Siarzhuk Zharski
7729a8c8f7 Applied yet another localization patch made by Jorma Karvonen.
Fixes #7151. Thanks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-17 20:01:28 +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
cefe2a40f7 * Revert the revert: my local BNetworkAddress::SetAddress(in_addr_t)
was not up-to-date, which leads to a broken fix. Sorry about that.
* Move the details logs to LOG_DEBUG to keep LOG_INFO small.
* Rollback to OPTION_SERVER_ADDRESS, too. Either all options should be
renamed after RFC option names or, as said by axel,
they're named to be understandable, which it was already.

Now, a coffee, please.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40519 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 19:58:00 +00:00
Philippe Houdoin
69b5cacbad * BNetworkAddress::SetAddress(in_addr_t) expect a network order value:
revert r40492.
* For semantic sake, use ntoh*() macros to convert data coming from network,
not the hton*() variants, even if the end result is the same.
* Clean and add more details to DHCP syslog messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 18:29:58 +00:00
Clemens Zeidler
df0ad9c12a Fix account name in mail.
Work in progress: fetch next partial downloaded message.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40504 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 02:19:49 +00:00
Axel Dörfler
669afb5012 * This should make DHCP work again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-14 17:36:44 +00:00
Philippe Houdoin
3db9c51d0f Adds support for read or write-only midi devices entries.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 13:19:22 +00:00
Clemens Zeidler
1af4fa4ba6 Major restructuring of the mail server:
Accounts are now stored in a separate file. Previously they where somehow magically assembled from the chain ids. Now its possible to remove a account temporary by removing the account file form the account folder.

Each account could have an inbound protocol, an outbound protocol and some filters.

Mails are now associated with an account and not with a chain. This required to replace the chain id attribute by an account attribute.

Replace BMailFilter and BMailChain by a less general approach. Basically the chain had a list of filters and call the ProcessMailMessage for each filter. This made it sometime difficult to understand what is going on, e.g. sometimes a filter used information gathered by another filters. The new MailProtocol and MailFilter classes are calling more dedicated hook functions, e.g. HeaderFetched or MessageReadyToSend.

As before all MailProtocol's (plus their filters) are running in their own thread.

Cleaned up the error and status window a bit. Abstracted the interface to these windows. Should be easy to write a BNotification api back-end now.

Parsing of mail headers is much faster now. Fetching the headers of a large mailbox takes ~min and not ~hour now! Initial checkout time is in the same order like Opera. The problem was the massive use of fgets in parse_header (mail_util.cpp) now the complete header is read in one go. Furthermore, only interesting fields are extracted.

Remove some unused files, BeOS relicts... Feel free to translate the mail server and remove the own language system (headers/private/mail/MDRLanguage.h).

Sorry for the remaining old (and new) coding style issues, sometime just ignore them, to many :(



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:49:01 +00:00
Stephan Aßmus
17925a3529 * The app_server leaked the BGradient objects on each drawing operation
related to gradients. This was for example very noticeable when running
   MediaPlayer which redraws the slider a lot. With three movies running,
   app_server would leak at about 100KiB per second.
Might be related to #7071 or even fix it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-06 10:25:06 +00:00
Jérôme Duval
c9f72f4333 Applied patch from stimut (#6353), thanks!
In ServerWindow::_DispatchViewDrawingMessage(), for AS_DRAW_STRING_WITH_OFFSETS,
the string length rather than the number of UTF8 glyphs is used, thus leading
to an app_server crash.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-28 19:34:37 +00:00
Oliver Tappe
915a7b8c24 Make BObjectList<> publically available:
* cleaned up ObjectList.h
* switched several uses of new() to new(std::nothrow)
* moved ugly AsBList() hack into BObjectList<>::Private class and
  adjusted all callers accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-20 12:09:16 +00:00
Philippe Houdoin
26119abd20 Port value in servent struct is in network byte order.
This was making net_server listening wrong service port. Telnet & FTP
works again in non stand-alone mode.
This close #7108.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-17 17:50:31 +00:00
Alex Wilson
6420e23bca Patch by Hamish Morrison in bluetooth server: simplify code in the bluetooth console 'Output' class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-15 06:36:18 +00:00
Alex Wilson
983dbb974b Patch by Hamish Morrison as part of GCI. Refactor Bluetooth server output window gui code to use the Layout API. One small change by me as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-11 18:09:19 +00:00
Oliver Tappe
afd785cf43 * fix build of app-server in debug mode - thanks to Timothy Brown
(stimut) for the hint that it was broken

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-10 13:37:45 +00:00
Michael Lotz
427427bc82 Create uncached glyphs on demand instead of checking glyph availability upfront.
This safes a HasGlyphs() call which would convert the whole string to glyph
codes and look each of the glyphs up in the cache entry, just to do the same
again during the loop where they are actually used. Instead we now simply switch
to the write lock and look up the fallback entry when hitting the first uncached
glyph. This benefits the normal case of having all glyphs cached without any
drawbacks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 21:24:09 +00:00
Michael Lotz
5c89315772 Implement missing glyph handling, making the glyph retrieval the following:
1. If the glyph is cached, return it, as before.
2. Try to find a glyph in the fallback font, as before.
3. Check for ignorable characters as per Unicode and cache and return a zero
   width glyph (rendering as completely invisible).
4. Reset to the original font.
5. Check for whitespace as per Unicode and cache and return the normal space
   glyph.
6. If there still is no valid glyphIndex, continue with index 0 which caches
   and returns the usual "missing glyph box".

This implements the Unicode suggestions on how to handle missing glyphs and
closes #7077.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 04:10:13 +00:00
Michael Lotz
2004d8c100 LayoutGlyphs() was broken in various ways when encountering missing glyphs:
* The code used continue to restart the loop when encountering a missing glyph,
  but in that case the index wouldn't be incremented, meaning the consumers
  would received the same index for ConsumeEmptyGlphy() and ConsumeGlyph() and
  at the end there was not necessarily a call for every index, resulting in
  uninitialized array elements for GetHasGlyphs, GetEdges, GetEscapements and
  GetBoundingBoxes.
* Since the advance values were not reset in case of a missing glyph but still
  added for the next char, the coordinates the consumers would get were advanced
  by the advance values of the glyph preceeding the missing glyph(s). This made
  StringWidth return wrong widths.
* The loop end condition was skipped by the continue as well, which would have
  resulted in overruns when there were problematic chars at the end of a string.

Fixes #7075 where the uninitialized array elements caused random truncation
errors. The problematic character in this case is a tab, that has no glyph as
it is a dynamic spacer. Previously this was resolved to the "missing glyph"
(the box) which had a width.

I find it highly problematic not to fall back to such a glyph, because there is
no real way to see that you're using a font that has missing glyphs. Instead
those are simply collapsed to nothing with this change (instead of being
random). This whole problem is only brought up by not guaranteeing that there
always is a glyph as was the case before where a missing glyph was replaced by
the box.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 23:17:18 +00:00
Rene Gollent
5c9b247667 The cmd+` shortcut wasn't taking into account if the user was currently holding a
window with the mouse, and as such didn't take it along to the new workspace
as the cmd+F# shortcuts do. Fixes #7057.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-02 16:04:15 +00:00
Ingo Weinhold
7e36984164 Removed Humdinger's resize mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-02 00:29:17 +00:00
Michael Lotz
c3dab48ba4 Add a way to cancel a started message.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-29 08:30:25 +00:00
Michael Lotz
49e57f098a Add support for the screen offset and scale to remote shape drawing. This brings
back scrollbar icons and menu markers for example after they got broken when
the offset was introduced.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-29 08:19:59 +00:00