Commit Graph

38211 Commits

Author SHA1 Message Date
Jérôme Duval
4359b74501 * finding marked or unmarked bit in the last double word didn't work, we need to take start pos into account. Should fix #7079.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 18:51:00 +00:00
Ryan Leavengood
6c314bd590 Fix some style violations and silliness (returning something in a void method.)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 17:49:05 +00:00
Ryan Leavengood
7d9b44517b Add an auto-adjusting image navigator which can switch to a folder navigator
when the Tracker window is closed. Tested with normal navigation and
slideshows.

Axel's excellent navigation classes code made this pretty easy.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 17:43:41 +00:00
Ryan Leavengood
80589ff3d4 Remove hack introduced in r36806 to offset the context menu due to our
previously bad menu handling.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 16:30:59 +00:00
Axel Dörfler
4aa636331f * Removed the slide show code from ShowImageView, and reimplemented them in
ShowImageWindow using a BMessageRunner.
* Note, this is completely untested, as it turns out my Haiku installation on
  this box is too old to run it. It compiles, at least, and shouldn't break
  anything else.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 14:58:48 +00:00
Axel Dörfler
0e193080f0 * Followed suggestion by Michael Pfeiffer, and always set the original BIOS
drive number before reset.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 13:33:09 +00:00
Siarzhuk Zharski
3ff3d896b2 GCI task results: "Add translations for newly internationalized apps - part 2 - Belarusian"
Completed by Michael Bulosh. Thank you.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 11:58:59 +00:00
Jérôme Duval
847a2179d0 data[maxIndex] can only be accessed safely when maxBit is non zero. I missed this in r40143.
This bug only happens for bitmaps with unusual lengths (often the last blockgroup block bitmap) and which happen to be full.
Should fix #7074.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-09 10:24:32 +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
Axel Dörfler
ea4b7aebf3 * Reselect the previously chosen disk, if any, otherwise, as before, the boot
drive.
* Do not change the wizard buttons after they have been updated already due to
  the selection when building the UI.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 23:37:54 +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
Axel Dörfler
89f0e174b0 * We can't access stage1 data in stage2, as we don't know the offset to use
(where the BIOS loads the stage1 part to).
* Therefore, I moved the BIOS drive to the stack, and now the boot menu finally
  actually works.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40167 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 21:24:54 +00:00
Axel Dörfler
ac53d7af3c * Use MakeLocateDebug as suggested by Ingo.
* Added TODO about merging AssembleNasm with AssembleYasmBin rules.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40159 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 17:28:14 +00:00
Axel Dörfler
1a60caf375 * We don't do R5 testing anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 17:26:26 +00:00
Axel Dörfler
364de37ea7 * Added Ingo's explanations as comments to the MakeLocate variants.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 17:26:08 +00:00
François Revol
6fc59c0f33 Haiku defines S_IRUSR in sys/stat.h as per OpenGroup...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 16:39:22 +00:00
Axel Dörfler
4d0c990ef1 * Forgot to change the data retrieval due to the layout changes; now works
again, and will also drop into debugger if broken again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 16:15:54 +00:00
Axel Dörfler
24a77ea0be * Added ItemAt() method that accepts column and row.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 16:14:13 +00:00
Axel Dörfler
f6d3241dac * Changed the Windows NT string to something understandable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40153 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 15:03:58 +00:00
Axel Dörfler
410ec88303 * Forgot to set the location of the bootman.bin file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40152 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 13:57:57 +00:00
Axel Dörfler
d3dd01a500 * Removed no longer used TestBootDrive.* files.
* Added a comment to LegacyBootMenu.cpp on how to conveniently test the boot
  manager, and its menu.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 13:55:11 +00:00
Axel Dörfler
34bebc2df0 * BootManager now only builds on x86 because it needs yasm to assemble the
boot loader.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 13:48:52 +00:00
Axel Dörfler
49c044ab9f * Changed bootman.S to use the BIOS provided drive to stage load itself, as well
as when the boot menu entry has a 0 BIOS drive. This allows the boot loader to
  be installed on any drive.
* Implemented BootDrive class, and changed LegacyBootMenu the way it should
  work now. Installing the boot menu should now work again, and the first time
  while installing Haiku.
* Removed MakeArray.cpp - we already have such a tool in our repository.
* Build BootLoader.h automatically during the build process - the only
  disadvantage is that you can only build it on x86 now (but other systems
  don't use this boot loader, anyway).
* In general, the BootManager is prepared to handle different kinds of boot
  menus; one only needs to write a class BootMenu implementation for this to
  work - and have the possibility to choose between different menus, if there
  are more than one per platform/partitioning system.
* Renamed quite a few methods.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 13:47:22 +00:00
Axel Dörfler
9f609ed7c6 * Fixed wrong indentation of the if-clause introduced in r40144.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 12:38:13 +00:00
Jérôme Duval
40e0165b13 extent max length is 0x8000, not 0xffff (we only support initialized extents).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-08 11:03:29 +00:00
Ryan Leavengood
3daa92ef31 Update WebPositive optional package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 22:05:56 +00:00
Jérôme Duval
523ce58a8f Applied patch from engleek with fix hints from devheart (bug #4720):
Scale to fit now keeps the aspect ratio by cutting horizontally or vertically.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 20:44:27 +00:00
Jérôme Duval
79de91c19b * manages blockgroups unused_inodes when the feature is available.
* BitmapBlock::FindMarked/FindUnmarked() tried to find a free bit
  at the end of a full bitmap. This fixes #7069.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 19:00:23 +00:00
Ryan Leavengood
77b7e18ab7 Revert my hack from r40132 and just go ahead and fix our pop-up menu behavior
by forcing openAnyway and creating a clickToOpen rect if there is not one.
Should fix #7022 and maybe others. Partially based on the patch from #7022 and
Travis Reed's patch from the mailing list discussion in December.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 16:39:48 +00:00
Scott McCreary
cb7becc01d Removing VLC from OptionalPackages, as we have no .bep file for it and no automated way to rebuild it. We can add it back in if someone puts together a working bep file or build script for it that can build it from sources and provides any required patches.
Warning you may need to update your UserBuildScript.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 16:37:17 +00:00
Alex Wilson
d3e72a992d In fixing CID #5841, I found that not only does the code in BAbstractLayout::AllUnarchived() leak, it is also mostly unnecessary! (mea culpa) This fixes both problems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 05:47:39 +00:00
Alex Wilson
0ee86c8d2f In Media preflet, use BAlert to inform users that real-time audio/video is not supported (as per MediaRoster.cpp:3061). This fixes ticket #6012.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-07 02:02:44 +00:00
Alex Wilson
d0d510a7d1 Fix BTabView bug which caused {Min,Max,Preferred}Size() to be at least 3 pixels too tall, depending on the border in use. Also a very small style fix. This fixes ticket #6544.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 23:35:04 +00:00
Jérôme Duval
bee827e203 changed dirfd() to its POSIX signature, without const (see #4947).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 21:34:06 +00:00
Ryan Leavengood
d83f8472ad Remove redundant listing of source files for the translation cataloguing.
Similar changes should be made in other applications. I may try doing so
with a script (and manual review of course.)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 20:03:41 +00:00
Philippe Houdoin
60ccc73044 Fixed image build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 18:10:41 +00:00
Philippe Houdoin
f8e5c0d433 Fixed what was probably axeld's expected behavior which the previous
fix had changed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 16:02:28 +00:00
Philippe Houdoin
24cc9c135e Fixed gcc4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 15:44:28 +00:00
Ryan Leavengood
f8f64f9a2e Make pop-up menu behavior more like BeOS (though this still is not ideal):
If the menu opens right under the mouse cursor, do not select or invoke an item
until the mouse is moved. Since this seems to break normal menu bars, I added
the check for fSuper. As a (bad?) side effect BMenuField menus also need mouse
movement before something is selected. If anything else is broken, let me know.

I'm committing this because it does remove some bad behavior in pop up menus
(unintentionally selecting items.)

We may also want to force the openAnyway behavior as discussed on the mailing
list in December.

In general though the menu handling code really should be redesigned/refactored.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 07:14:47 +00:00
Ryan Leavengood
2b70c8f3e4 Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 03:57:58 +00:00
Axel Dörfler
5675f44e84 * Work in progress of being able to choose the drive to install the menu to.
Note, the BootManager might not work right now, anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 23:36:35 +00:00
Jérôme Duval
d482c34e49 * added flex group, dirnlink and gdtchecksum features for ext4.
* I reused crc_table.cpp from the UDF filesystem and switched it to have the reversed algorithm,
  then generated the table in CRCTable.cpp
* added a binary search for extent tree leaves.
* fixed a check in InodeAllocator::New().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 21:56:12 +00:00
Siarzhuk Zharski
970c0ac244 GCI task results: "Add translations for newly internationalized apps - part1 - Belarusian"
Completed by Michael Bulosh. Thank you.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 21:06:57 +00:00
Alex Wilson
7afc775630 In Media preflet:
* Modify MediaListItem to use the visitor pattern
* Use the visitor pattern for comparison of MediaListItem subclassed objects
* Use the visitor pattern in MediaWindow to propagate changes to NodeListItems.
* Rename and/or remove some message constants
* Rename SettingsItem class to NodeMenuItem 
* Rename Settings2Item class to ChannelMenuItem
* Derive SettingsView from BGridView, and make it an abstract base class for two new classes, AudioSettingsView and VideoSettingsView.
* Have the SettingsView subclasses handle messages originating from their children (for the most part).
* Use a BCardLayout to hold our Audio/Video SettingsViews and our instantiated node view (when applicable).
* small changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 20:47:17 +00:00
Axel Dörfler
197f59b07d * Another work in progress of converting the BootManager to use the layout API;
most pages do now, albeit it's not perfect yet due to issues with BTextView,
  and BScrollView that make them very inconvenient to use with the layout API.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 20:05:09 +00:00
Jérôme Duval
23281fb2c1 Moved Easter holidays methods to a Holiday class, an hopefully better place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 18:00:31 +00:00
Joachim Seemer
89c389ebcb Added more translators, mostly GCI students, to Haiku's About window.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 17:36:33 +00:00
Axel Dörfler
411a3062f4 * Reverted accidental part of r40114. Thanks Philippe!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 17:17:27 +00:00
Axel Dörfler
c9f3b43e9f * Work in progress of using the layout API.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-04 22:42:19 +00:00
Ingo Weinhold
44b9a93e46 Added intermediate (addr_t) casts before the cast of the parse_expression()
result (uint64) to pointer (CID 4723-4726).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-04 21:28:46 +00:00