Commit Graph

16541 Commits

Author SHA1 Message Date
Axel Dörfler
b506c53f0a Changed useconds_t and suseconds_t to be "long" types instead of "long long".
This has a negative effect on ualarm(), but is somewhat required by the POSIX
specs ("[...] the implementation should support one or more programming environments
in which [...], and useconds_t are no greater than the width of type long."
Indeed, it also changed the size of our struct timeval which broken binary
compatibility with R5 (ie. used in gettimeofday()).
This fixes bug #490 and therefore bug #428 (firefox crashing on load) as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 15:16:50 +00:00
Axel Dörfler
604c8038ff Since the keyboard filter compared targets by their pointers, it could happen
that it didn't reset the EventDispatcher's focus target even though the object
underneath that same pointer had change, which caused the EventDispatcher to
drop the event.
This fixes bug #416, and should fix bug #409, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 14:16:31 +00:00
Axel Dörfler
6e69baffb1 Desktop::SendBehindWindow() now checks if the window is on the current
workspace, and do nothing if not. This fixes bug #442.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 13:49:41 +00:00
Axel Dörfler
6aa4743b51 Added TODO comments about some race conditions in the code because of unlocking
the desktop.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 13:18:35 +00:00
Axel Dörfler
b2536cb5d6 Fixed bug #483:
* vfs_get_fs_node_from_path() now also work for absolute paths again (but
  still for relative ones from the volume root) - it just tests if the
  mount IDs fit, so it only returns successful if the path really is on
  the desired mount.
* the Disk Device Manager publish functions now call devfs_publish_*()
  correctly (by omitting the "/dev/" mount point).
* devfs_publish_partition() now accepts absolute device paths but relative
  partition paths.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 11:44:54 +00:00
Michael Lotz
b026647574 Changed the temporary buffer to be static to avoid using that much stack. Replaced wrong maximum buffer length (oops).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 10:56:00 +00:00
Stefano Ceccherini
415c63bee2 PopUpMenus didn't respect the openanyway setting (sticky mode), they always set it. And even in that case, they weren't working correctly. This should fix bugs 463 and 476. This might not work if click to open isn't selected in the menu prefs, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-15 16:57:51 +00:00
Stefano Ceccherini
ce1efe4ce6 forgot to commit this changed header, sorry
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-15 12:55:39 +00:00
Stefano Ceccherini
36aa2198b7 Some more changes, fixed bug 487, added a small hysteresis so menus could be more nice to navigate, some corrections in popupmenu
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-15 12:42:34 +00:00
Rudolf Cornelissen
cdc79923d0 updated docs. Bumped version to 0.81.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-15 08:47:20 +00:00
Rudolf Cornelissen
c02dfedfc1 fixed driver assuming enabling AGP succeeded if it did not block it itself. This was a problem if AGP was disabled totally via the busmanager settings file. Driver now only notes down AGP is running if the busmanager 'reported' this succeeded. This fixes the long standing trouble (ever since DMA is in the driver, so since version 0.53) that user kraton was having. He stumbled on this problem since on his system 'default' AGP mode seems to result in trouble, so he tried blocking it via agp.settings..
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-15 08:38:32 +00:00
Michael Lotz
1df23ecc52 Should finally fix the eaten up messages. We obviously must not use the output buffer to write the repeat count as the output buffer already contains the new message...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-14 12:38:31 +00:00
Jérôme Duval
68b599fbcc reusing the old settings message is a good idea (thanks Axel!)
we simply remove color data before storing the workspace color


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-14 10:50:47 +00:00
Jérôme Duval
8be3635fcf don't reuse old workspace settings, store method expects an empty message
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-14 09:55:00 +00:00
Jérôme Duval
8a9866347d added checks for locking
also assigning the window field to null when quitting the window


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 20:26:45 +00:00
Axel Dörfler
9a11448fbd vfs_get_fs_node_from_path() didn't work correctly and ignored the mount_id
(ie. it only worked for absolute paths, but it shouldn't work for those at
all).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 18:06:30 +00:00
Axel Dörfler
cbb7d5038a * The screen saver window is now a kWindowScreenFeel, and thus should always be
in front of all other windows.
* Added TODO items where the code is strange or messy.
* Big cleanup (renamed files and variables like "fPww" to something more
  meaningful).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 15:46:06 +00:00
Jérôme Duval
20ad5fdfba now better place comboboxes taking font size into account
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 15:45:41 +00:00
Axel Dörfler
b660dafd67 * More cleanup of Frontmost().
* Added support for kWindowScreenFeel (those are now on top of everything,
  even menus can't disturb them).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 15:18:16 +00:00
Marcus Overhagen
45d3c4ec14 Implemented hotplug support conforming to the active multiplexing specification.
Works with my notebook, but kernel support for unpublishing devices is broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 14:57:16 +00:00
Axel Dörfler
fb072d3724 * When changing a window's feel, it's now also moved to the front if
necessary.
* Also, newly exposed window areas are now refreshed when a change
  of feel also changed the window order.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 14:44:00 +00:00
Axel Dörfler
cc4612fe3f * Modal windows are now correctly taken into account: no click go through to a
window with a modal window. This also completes the fix for bug #439.
* Made some methods const that should have been const in the first place.
* Note, there is now a Desktop::_WindowHasModal() and WindowLayer::HasModal() -
  the latter only works in the current workspace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 13:56:01 +00:00
Stephan Aßmus
b57f2b537e * added handy BBitmap::Flags() method
* added NOTE to BBitmap::LockBits(), has anybody some insight into this?
  Otherwise we need to write a test app to discover its secrets... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 13:15:00 +00:00
Axel Dörfler
b527dedcdd * Changed window hierarchy: menu windows are now always on top, then come modal
all windows, and after them floating all windows. This is different from BeOS
  (where floating all windows are on top of modal all windows), but the way its
  now seems to be more logical. This fixes bug #453 - there remains a problem
  with open menus, though, but that has to be solved differently by introducing
  a new feel.
* Also, modal app windows are now blocking floating app windows.
* Simplified WindowLayer::Frontmost() and Backmost() a bit, moving more stuff
  into HasInSubset().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 11:49:42 +00:00
Jérôme Duval
a0b6c232be replace hard value with the constant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-13 08:50:04 +00:00
Stephan Aßmus
b6a33e1d41 * removed the special font renderer which was actually
the same as the normal one (one less renderer to update
  the color of)
* added a special B_OP_COPY implementation for text, which
  is in fact what the implementation was until now, so
  just like on R5, you have to specify the correct low color
  or you will see artifacts for the anti-aliased pixels
* implemented B_OP_COPY just like B_OP_OVER (only it draws
  the low color too like it should). So all apps that
  used B_OP_COPY to draw anything can continue to do so
  without having to worry about the low color, it will
  be anti-aliased against the actual background instead of
  the low color (which made especially no sense when drawing
  with the low color). Although this change makes it a bit
  slower to use B_OP_COPY, Haiku is now much more compatible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 21:02:59 +00:00
Jérôme Duval
82081c70ea improved version
though the first workspace color isn't kept between boots


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 20:55:36 +00:00
Michael Lotz
34ff238b88 Implemented the BRect version of DragMessage(). This just creates a drag bitmap with the rect. We may want to switch to a less heavy implementation later on though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 20:26:56 +00:00
Jérôme Duval
7008829b0f fixed some uninited members and locks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 19:35:54 +00:00
Jérôme Duval
190b4fa4ef hopefully implemented makedefault in Workspace::SetColor()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 16:52:41 +00:00
Stephan Aßmus
196144a56c the dark border is now drawn without holes at the edges, as on R5, also fixed the BBox being used as separator, like NetPositive does
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 16:51:40 +00:00
Jérôme Duval
84b53ca7a0 clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 15:45:52 +00:00
Jérôme Duval
7840510e4f unlock when lock succeeded
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 15:38:18 +00:00
Jérôme Duval
f7f614034d better place the button Restart
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 14:20:39 +00:00
Axel Dörfler
97e069713b Added a "reenter" parameter to the {read|write}_pages() functions to give file
systems a chance to know if they have locked already.
This fixes a locking problem in BFS where one thread tried to acquire two read
locks (where someone else trying to acquire a write lock would have caused a
dead lock).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 13:34:04 +00:00
Jérôme Duval
4d89d3e7e1 replaced B_HANDLED_INTERRUPT with B_INVOKE_SCHEDULER, as we want the multiaudio addon to be scheduled
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 13:14:51 +00:00
Jérôme Duval
43d649d23f package symlinks are now hmulti
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 13:03:31 +00:00
Jérôme Duval
16155f88ca added driver settings, untested
package symlink is now hmulti


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 12:51:45 +00:00
Stefano Ceccherini
0e0b8fd554 more fixes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 11:25:59 +00:00
Axel Dörfler
71960e33b9 Fixed the "Volume XXX is already mounted" warning with the -all{bfs|hfs|dos} options.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 11:16:39 +00:00
Jérôme Duval
f88e467c8a should better now :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-12 08:43:16 +00:00
Michael Lotz
eef8149582 Fixed wrong length calculation for memmove. This should at least fix bug #314 and probably more yet unknown problems with ReplaceData(). Also optimized removing data from the end of the buffer.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 23:01:32 +00:00
Stephan Aßmus
f775a1fea7 forgot to remove debug output
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 21:15:41 +00:00
Michael Lotz
2f5143505b Another try at removing the "Last message repeated 1 times.", this time with locking.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 21:11:50 +00:00
Stephan Aßmus
a5a38476ea fixed a couple of issues, but lots of work remains, doesn't crash with up side down BMPs in Windows format anymore... could someone provide me with a BMP that actually uses the alpha channel? I could not make one in Windows with Adobe Photoshop Elements.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 21:11:44 +00:00
Marcus Overhagen
f9ff1193f7 Removed mouse polling, there seem to exist way too many broken mice for this to work relyable.
Reworked interrupt handler calling, and added a data history.
Hotplug support will later be implemented using interrupt data.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 21:02:24 +00:00
Stefano Ceccherini
7d550b53a0 and there, the usual forgotten stuff
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 20:53:11 +00:00
Stefano Ceccherini
2191a09a93 big improvements for menus. The tracking is in many ways on par with r5, except for a few things, like diagonal movement and that grandparent bug
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 20:20:41 +00:00
Michael Lotz
6ac6b512a0 Reverted my last change as it causes a segfault with syslog output enabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17094 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 19:40:49 +00:00
Axel Dörfler
2f09691580 Fixed build...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-11 19:03:44 +00:00