Commit Graph

27885 Commits

Author SHA1 Message Date
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
Michael Lotz
a079780e8a * Add the iso9660 filesystem to the floppy image.
* Allow iso9660 partitions to be boot partitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:11:15 +00:00
Oliver Ruiz Dorantes
96455f01e8 Code for current bluetooth preferences, non ready/standard/polished code (meant to be backup)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:07:45 +00:00
Michael Lotz
3f31053904 Skip our attribute directory when reading directories.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:06:28 +00:00
Jérôme Duval
71ed64b71b * Icon label outline is by default true. We take this into account on PoseView creation in Tracker, and when no image is selected in Backgrounds.
* This flag is still only settable when an image is selected.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-13 21:39:52 +00:00
Jérôme Duval
10047d2e3d added codec reset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-13 20:21:18 +00:00
Jérôme Duval
24283c487c * use macros when possible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-12 23:55:58 +00:00
Michael Lotz
576cd2495d * Compacted some of the code and inlined the DumpRoster implementation into the
class as it's so little code.
* No need to allocate the roster on the heap.
* Add /dev/bus/usb to the device location to make it more clear.
* Add the device location to the non-verbose output as well.
* Put the manufacturer and product strings into quotes to make it clearer that
  those are just strings. Avoids just blank output when a device doesn't provide
  those strings.
* Remove trailing whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-12 23:05:57 +00:00
Michael Lotz
f7de06baf3 The device object is supposed to be deleted after the removed hook returns.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-12 21:09:00 +00:00
Rene Gollent
1e5a02e76f Renamed usb_dev_info to listusb and made it more useful:
By default it now presents a relatively concise list of USB
devices found on the bus, with an optional -v flag to dump
exhaustive detail. It still also takes an optional device 
parameter in case you only want information for a particular 
device.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-12 00:41:05 +00:00
Jérôme Duval
8f7c075428 * add set volume knob control
* display subsystem vendor and device id


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-11 20:43:40 +00:00
Joachim Seemer
e7d577748b * Added the Tracker preference panel which points to the Tracker chapter,
which in turn mentions the new Tracker preferences. Thanks aldeck for
  reminding me.
* Added Tracker icons.
* Added Tracker on the Preferences contents page.
* Small tweaks and corrections here and there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-11 16:29:31 +00:00
Jérôme Duval
ac53f5c1f1 * place the Encoding before the To. this fixes bug #1206
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-10 23:36:56 +00:00
Jérôme Duval
bc34203252 added a tar optional package
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-10 22:18:06 +00:00
Jérôme Duval
91f10b0a36 * it seems we can skip _HandleKeyDown() when not active (keyboard navigation, shortcuts and screenshots).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 23:58:36 +00:00
Jérôme Duval
a13e53fe4f * Handles shortcuts only when the window is active. This fixes bug #3414 (and hopefully is the R5 behavior).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 23:48:25 +00:00
Jérôme Duval
9d7d4a74b5 reverted r29176. it's not OK with shutdown and it could also be a bug in interface kit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 23:27:02 +00:00
Michael Lotz
00405f2286 * Add an additional argument to get_vnode() that gets the fs_vnode_ops of the
node. That is needed for a layered filesystem to be able to construct a full
  fs_vnode out of a volume/inode pair.
* Adapt places where get_vnode is used. Sadly this is a C API and we can't just
  use a default NULL for that argument.
* Introduce a flag B_VNODE_WANTS_OVERLAY_SUB_NODE that can be returned in the
  flags field of a fs get_vnode call. A filesystem can use this flag to indicate
  that it doesn't support the full set of fs features (attributes, write support)
  and it'd like to have unsupported calls emulated by an overlay sub node.
* Add a perliminary overlay filesystem that emulates file attributes using files
  on a filesystem where attributes aren't supported. It does currently only
  support reading attributes/attribute directories though. All other calls are
  just passed through to the super filesystem.
* Adjust places where a HAS_FS_CALL() is taken as a guarantee that the operation
  is supported. For the overlay filesystem we may later return a B_UNSUPPORTED,
  so make sure that in that case proper fallback options are taken.
* Make the iso9660 filesystem request overlay sub nodes. This can be fine tuned
  later to only trigger where there are features on a CD that need emulation
  at all.

If you happened to know the attribute file format and location you could build
an iso with read-only attribute support now. Note that this won't be enough to
get a bootable iso-only image as the query and index support is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 23:06:31 +00:00
Jérôme Duval
c8530759dd fix #3414. Quits when the window is active.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 22:33:01 +00:00
Jérôme Duval
fa9ec9b16b fix beeper widget on more codecs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 22:31:10 +00:00
Jérôme Duval
9aa5a49e97 * actually allocates and frees geode_multi struct
* also detect NS version of the chip


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 21:03:31 +00:00
Jérôme Duval
620d41514f add spinlock initializer constant for BeOS
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 19:06:44 +00:00