Commit Graph

28306 Commits

Author SHA1 Message Date
Niels Sascha Reedijk
25630ec983 Removing the file system interface documentation for now. This needs to be replaced with a completely new version that accounts for all the new features (including the overlay modules)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29243 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-18 11:04:27 +00:00
Michael Lotz
81915026c1 Make use of the new private B_NO_HANDLED_INFO in the FreeBSD compatibility layer
for now. This is a workaround and should be removed once we have proper
interrupt return values from FreeBSD drivers. Should work around interrupt
storms for shared interrupts with some network cards that use a FreeBSD driver.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-17 21:49:34 +00:00
Michael Lotz
3684e40bb8 * Introduce a (private) flag B_NO_HANDLED_INFO for install_io_interrupt_handler.
It causes the interrupt handler to be inserted at the very end of the list
  instead of at the top. It is intended to be used as a workaround when a
  interrupt handler cannot know if it actually handled the interrupt. This
  should never be used by native drivers. Also if we know that the result is
  not valid because of this flag we won't disable the vector in case we count
  many unhandled interrupts as those numbers are then unreliable.
* Moved B_NO_LOCK_VECTOR to be a private flag as well.
* Made the interrupt handler list a simple manually maintaned singly linked list
  instead of the doubly linked one used with insque and remque as it greatly
  simplifies things for such an easy use case and is more compact.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-17 21:41:51 +00:00
Philippe Houdoin
83aff015eb Fixed BTabs focus underline offset.
Fixed a typo in method name.

Please forgive me Stephan if I just screw your next commit...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-17 10:36:58 +00:00
Michael Lotz
3b5507a987 * Added create/write/remove/rename support for attributes to the overlay fs.
* Implemented writing attributes back to attribute files. Not tested or enabled.
* Fix reading attribute dirs, they need a separate cookie that links attribute
  files to the dir index as multiple read-dirs could happen at the same time.
* Fix some obvious bugs in size calculations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-17 02:05:58 +00:00
Jérôme Duval
5076aaf050 * some style improvements again (ie lower case variables as pointed by Axel)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 23:05:54 +00:00
Jérôme Duval
79d4b99e40 * fix get_mix()
* style improvements


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 19:09:34 +00:00
Michael Lotz
65cae88fb5 Fix the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29236 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 16:44:51 +00:00
Stephan Aßmus
13cd46dfa3 * Stronger BMenuField popup indicator.
* Softer recessed frame for BMenuField to distinguish more from BButton
  and make it slightly more similar to BTextControl.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 13:57:31 +00:00
Stephan Aßmus
12ea5a2cfb * Give the inactive tabs a slight separation.
* Removed some dead WIP code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 13:05:31 +00:00
Stephan Aßmus
2387efafa3 Resolved a couple minor TODOs to use layout friendly constructors, which have
become available meanwhile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 12:19:04 +00:00
Axel Dörfler
3c13a5f5b3 * Renamed net_device_interface::rx_lock to receive_lock.
* Cleanup, improved comments, removed useless ones.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 11:13:28 +00:00
Axel Dörfler
86a0cf15e4 * You can now use SIOCGIFFLAGS on the AF_LINK level as well.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 11:05:25 +00:00
Axel Dörfler
1a905a762a * The auto-config looper now correctly sets the IFF_CONFIGURING flag - it
cannot be set in the AF_LINK level.
* It now also checks for this flag, so that the fallback configuration won't
  overwrite a manually configured interface anymore.
* When an interface is configured, the IFF_CONFIGURING flag is now cleared as
  it should.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29230 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 11:03:13 +00:00
Alexandre Deckner
4712bc807c * Revert one the changes done in r29198 has it happen to be wrong. See #3450 and #3011
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 10:39:26 +00:00
Philippe Houdoin
532a47a9f0 Fixed broken style I've introduced.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 21:56:27 +00:00
Michael Lotz
b962e48498 _kern_open_parent_dir has different semantics for the supplied name argument.
It's supposed to be filled with the entry name of the directory and not as in
all the other cases used as a leaf name to be appended to the dir. This would
lead to some errors with operations based on directory fds in the build libroot
and build libbe and in the end make generate_attribute_stores fail on platforms
that don't have an 0 initialized stack (since the supplied name buffer would
contain garbage later attached to the directory path).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 21:10:02 +00:00
Jérôme Duval
8881ad6503 * fix spacing between scope and vu views
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 19:43:38 +00:00
Philippe Houdoin
4c0255d795 Refactor the code, computing next entry earlier and use continue as suggested by Jerome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 19:27:36 +00:00
Philippe Houdoin
7f0b01654d Fixed the patch: on disabled processor entry, next entry pointer wasn't computed,
leading to an infinite loop...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:43:02 +00:00
Oliver Ruiz Dorantes
3fcbf7dc22 - Implement ADD button for remote devices list
- Shape a bit more the skeleton panel for scanning devices


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:32:23 +00:00
Philippe Houdoin
63c851a15d Applied patch supplied by jkeeping in #3445: smp_do_mp_config wasn't checking
MPS table CPU entries for the enabled flag.
This caused Haiku to fail to boot under KVM on Linux.

Thanks you, jkeeping.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:26:13 +00:00
Stephan Aßmus
2f86ba4557 Implemented a new look for the Haiku interface controls. It was
overheard that they looked too ninety-ish.
TODO: The code behind this is work in progress. The basic idea
is to extract all drawing code into a new class BControlLook,
of which there is a global instance be_control_look, instantiated
in InterfaceDefs.cpp. At the moment, all the old drawing code is
still there, and the usage of be_control_look is inside if-bodies
checking the instance against NULL. In another words, by not
instanitating be_control_look, you can revert back to the old look.
BControlLook's job is to provide reusable methods for drawing
certain types of frames, backgrounds and labels, so that application
developers can make controls that re-use the same drawing code
as built-in controls and adopt to changes made there. I have added
the notion of "borders". Each of the frame drawing methods can be
made to draw certain borders only, which is supposed to help when
controls shall visually attach. This feature is not fully explored
at all ATM.
TODO: Update BColumnListView header view and BStringItem text
spacing. Update other apps where it makes sense to use BControlLook.
For the moment, only Tracker and LaunchBox are updated. More...
NOTE: The new look is not very radically different, so that existing
apps do not immediately look too ugly or out of place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:23:19 +00:00
Stephan Aßmus
700ab492a9 Finished the optimization for vertical gradients. This code is about
8.3 times faster than using the AGG pipeline, but about 3 times slower
than drawing a solid color square. It can probably still be improved.
The second version of _MakeGradient() is more powerful than the old one
and should replace it. It handles some corner cases, which the other
one does not.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:14:35 +00:00
François Revol
3176cdc759 Partially revert r28610 as this is the correct way. Added a default case.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 18:11:56 +00:00
Axel Dörfler
e333f75144 * Removed left-over debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 17:28:49 +00:00
Michael Lotz
4b08e1b9e3 Add the host libsupc++ to generate_attribute_stores.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 17:08:05 +00:00
Jérôme Duval
2a8ffa8805 * Break parsing loop if PkgA is encountered. This helps with QEmu pkg.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 17:05:36 +00:00
Stephan Aßmus
a0b1d631cc Added layout friendly constructor to this base class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 15:41:35 +00:00
Stephan Aßmus
64eb49fd24 * Cleanup in the Gradient department. No fuctional change.
Renamed BGradient::color_step to BGradient::ColorStop
  as it's called everywhere else. Also renamed BGradient::gradient_type
  to just BGradient::Type. Renamed BGradient::Type() to GetType().
* Simplification of method names in Painter.cpp. Some not yet
  complete and yet inactive code to accelerate vertical gradients
  (bypassing AGG for this special case).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 15:15:49 +00:00
Stephan Aßmus
c88313977f * Added test for more menu situations.
* Refactored hard-coded group insets.
* Geve second tab BView the standard gray background.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 15:06:06 +00:00
Stephan Aßmus
a21cfee7f4 Do not let layout the resize rect for borderless windows or
one pixel border windows. This would influence the window
size constraints for no reason and would for example affect
menu windows (one item menus or empty menus would be forced
to be too tall because of this bug).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 15:02:37 +00:00
Michael Lotz
f96525f73f The GCC4 built boot floppy archive is too large, it doesn't fit on a 1.44 image.
Therefore we switch to building a 2.88 floppy image in that case so it's at
least usable to build a bootable CD.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 14:54:05 +00:00
Axel Dörfler
f964cf0772 * No longer leaks the EndpointManagers at unload.
* Now uses an array instead of a doubly linked list to find the endpoint
  manager for a domain.
* No longer locks the endpoint managers during TCP processing, which actually
  made all TCP input serialized.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 14:33:41 +00:00
Michael Lotz
b435702774 * Simplify the build of the CD a bit, just reuse the image scripts as those hold
what we want.
* Remove some more temporary files/directories after the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 13:30:42 +00:00
Axel Dörfler
f6874c7b31 * When there was no link, the wrong route was chosen as a candidate when trying
to get a local connection (the first candidate must be used, not the last).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:59:34 +00:00
Alexandre Deckner
a1056d5fa3 * Key font size now also takes the window width into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:58:09 +00:00
Michael Lotz
816f925d39 Add generate_attribute_stores to the tools using the Be API so it builds on other platforms as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:31:33 +00:00
Michael Lotz
66a8699255 Fix build for GCC4 also.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:27:45 +00:00
Michael Lotz
1ba7617834 Fix build. The header is not needed at all.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:12:45 +00:00
Michael Lotz
e2c3dec923 Preliminary support for building ISO only Haiku CDs. Not working completely
clean yet. Provides a haiku-cd target and creates a bootable image using mkisofs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 02:34:32 +00:00
Michael Lotz
bea22f6240 * Add overlay filesystem to the boot floppy and normal image.
* When booting from an iso, mount the boot volume with the overlay layer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 22:51:50 +00:00
Michael Lotz
a413108c54 Make the overlay filesystem a standalone module. It can now be mounted as an
additional layer by supplying "-t <actualFileSystem>:overlay" to a mount command.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 20:57:15 +00:00
Michael Lotz
3c1b330b3b Add volume ops to the overlay filesystem and prepare it to be a standalone module.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 20:32:10 +00:00
Michael Lotz
a26c243920 * Adding volume ops to the overlay filesystem.
* Remove the previous method of applying the overlay by flags. In the future the
  overlay can just be mounted as a filesystem layer. This is probably how layers
  were intended to work in the first place.
* Move the filesystem module info and filesystem name from the fs_mount to the
  fs_volume structure. Filesystem layering is done by having multiple layered
  volumes and we want to be able to have a different fs per layer.
* Adapt VFS code to this move.
* Implement mounting layered filesystems. Specifying multiple filesystems
  separated by a colon on mount will cause the layers to be set up and the
  corresponding filesystems to be mounted at that layer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 20:30:49 +00:00
Rene Gollent
95da064570 Some pose performance improvements by aldeck and myself:
1) We don't need to call FindPose() on every pose as we're freshly adding it,
and a duplicate should never happen in this circumstance (the FindPose() is still there if
Tracker is compiled in debug mode however.
2) Adjust the FSClipboard calls such that the locking is optional. This allows us to lock
once per CreatePoses group rather than once per pose.

Together these changes make for a significant performance improvement when it comes to
populating a large folder.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 19:54:47 +00:00
Michael Lotz
3e01561729 Request an overlay for the root vnode as well so attributes are available on the fs root as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 12:49:41 +00:00
Michael Lotz
6e5f12279d Handle the overlay request flag in publish_vnode() as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 12:48:44 +00:00
Jérôme Duval
58bda9983c * alert when the destination volume is read only. Fixes bug #3422.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:58:01 +00:00
Michael Lotz
cbaec88839 Add a generate_attribute_stores build tool. It can be used to recursively
generate attribute stores for attribute overlay. This can be used to generate
ISO only Haiku CDs with attribute support in the future. Note that while they
are mostly bootable they aren't really usable yet because of the missing query
support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:28:35 +00:00