Commit Graph

3553 Commits

Author SHA1 Message Date
Philippe Saint-Pierre
0fa5c8f528 Constant expression result
Usage of | rather than & to check a binary mask.  CID 11031.
2011-12-27 23:27:20 -05:00
Urias McCullough
94624a8ad6 Fix warning in AutoMounter debug code
Signed-off-by: Matt Madia <mattmadia@gmail.com>
2011-12-27 22:57:44 -05:00
Axel Dörfler
3692fd58c5 Minor cleanup, no functional change. 2011-12-15 00:55:10 +01:00
John Scipione
0e35d5d2e5 Change instances of wether in comments to whether. No functional change intended. 2011-12-12 14:41:49 -05:00
Michael Lotz
bcc4a523b6 Fix invalid use of iterator after erase and lock corruption.
* The call to _TeamDied() causes the team that the iterator points to
  be removed from the map. Therefore the iterator becomes invalid and
  may not be accessed anymore (including incrementing it). As we've had
  to unlock, anything might have happened to to map, so take the safe
  route and just start over.
* For each dead team that was found the AppManager was unlocked, but
  there were no balancing lock calls, therefore causing the lock count
  to get corrupted.
2011-12-10 21:23:35 +01:00
Michael Lotz
6ba5fa4d64 Ensure 0 termination of the buffer being converted to a string.
The file content isn't normally 0 terminated, so making a string out of
it would usually result in reading beyond the allocated buffer to find
the string length, possibly leading to a crash.
2011-12-09 15:29:10 +01:00
Ingo Weinhold
a5c5479710 media addon server: Fix incorrect array offset for safe mode
Missed that when back porting 323b65468e.
2011-12-08 22:17:58 +01:00
Rene Gollent
9dd2d63b15 - We now build up the argument list in a BStringList and map argv to those.
The previous solution had various issues where argv pointed to stack-based
  objects that had potentially been destroyed/overwritten already. Fixes
  .

- Modify _SetupGDBArguments() to return an error code and check for it
  accordingly.
2011-12-06 20:07:06 -05:00
Michael Lotz
e791096b81 Fix unintentional change that broke input_server in safemode.
The change to this initial index for safemode was brought in with the
flat import of the package manager branch in 323b654 where presumably
more paths were used. With this value selecting either just safe mode
or disable user add-ons would lead to no input_server add-ons being
loaded at all, leading to a system without input.
2011-12-02 14:07:55 +01:00
czeidler
d240743e9b - The SATGroup has been deleted to early, that probably causes . Holding a reference on the WindowArea (which hold a ref to the group) extends the lifetime till we are done.
- Fix some stayBelowMouse flags.
2011-11-29 10:30:42 +13:00
Ingo Weinhold
d5df784299 Fixed input server start fallback
After failing to start the input server by signature, the fallback
didn't append the input server name to the servers directory returned by
find_directory().
2011-11-25 06:17:40 +01:00
Oliver Tappe
323b65468e Filtered flat import of Oliver's svn package management branch
Bring the changes that aren't package management related and the ones
that are but don't take effect as long as they are ignored by the build
system into the master.

Summary of changes:
* Introduce private header <directories.h> with constants for a good
  deal of paths that should usually be retrieved via find_directory().
* Replace hard-coded paths by using find_directory() or the
  <directories.h> constants (e.g. in drivers and the kernel).
* Add find_directory() constants needed for package management.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
  DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
  ~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.
2011-11-25 06:17:07 +01:00
John Scipione
912ab02b72 Remove some commented out code in WorkspacesView.cpp 2011-11-13 14:58:22 -05:00
John Scipione
eafed2f6d8 Make the window frame color settable by the decorator fixing a TODO. Although I don't think it is used by the Workspaces app anyway. 2011-11-13 14:58:22 -05:00
John Scipione
a18c2a6d9e Adjust the border color using tints so that it is just so, not too 3d. Get rid of all the extra contstants and just tint off of the base color. 2011-11-13 14:58:21 -05:00
John Scipione
30d17caa9d Added support for colored window tabs in the default decorator. 2011-11-13 14:58:21 -05:00
Rene Gollent
3e98fa97ed Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 15:40:29 +00:00
Adrien Destugues
75a431eb53 * Fix case in Notification window group to match the new message notification
* Try harder to report useful progress when both sending and receiving messages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 12:32:22 +00: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
244a545018 Mail daemon notifications, round 2:
* Use the proper identifier for each notification window : 2 per account for sending/receiving, and a global one to show the "n message received" message.
 * Use the mail daemon icon on the windows instead of the default ones
 * Shuffle the text in the windows a bit so it makes more sense
 * Use the settings from the mail preflet for showing or not the window.
The meaning of "always" changes a bit, since it is not possible to have a "forever" timeout with the notification server (and that would be rather annoying).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-01 19:25:40 +00:00
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 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 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 .
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 .
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 .
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 , .
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 .
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 .
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 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 .


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 .
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 . 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  and .

* 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