Commit Graph

28728 Commits

Author SHA1 Message Date
Stephan Aßmus 039878c152 * Set forceDraw to false when we have already drawn the pose, not when
there is only some pending scrolling.
* Fixed my previous ScrollTo() change to actually scroll in the two directions
  in two steps...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 19:24:45 +00:00
Axel Dörfler 8734b81d23 * Made the NotificationManager.h header self contained.
* Changed some members to be part of the NotificationManager instead of
  allocated objects.
* Use BAutolock where appropriate.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 19:13:07 +00:00
Stephan Aßmus 78772ca58c Should fix the problems with dirty selection left-overs when editing and also
other situations. Basically, I made DeleteText() adjust the selection according
to the deleted range. Some places where DeleteText() was called forgot to
adopt the selection. Other places adopted the selection. Maybe some of those
could be removed now, but some also change fClickOffset, so I just left them
as they are.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 18:29:55 +00:00
Stephan Aßmus bedfcd63af Improve the word wrapping a bit. This should eventually use the LocalKit when
it's ready. For now, I just tried to fix stuff like breaking before
punctuations. I had trouble wrapping my mind around the wrapping code, so I
didn't include as much cases as I wanted. Basically, the wrapping code assumes
that a spot where CanEndLine() returns true must be a white space character,
which wouldn't be the case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:54:01 +00:00
Axel Dörfler e7cdf7f3f5 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30074 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:22:00 +00:00
Axel Dörfler 9cfc4c2ff8 * The slider now snaps to 0 dB when crossing that to ease finding the maximum
volume without distortion.
* Added about window.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30073 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:19:38 +00:00
Axel Dörfler cd7f1893eb * The slider position was actually computed incorrectly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 17:10:43 +00:00
Axel Dörfler b847381250 * Making it private doesn't help unless you have a const BSlider. Therefore,
removed it from the public namespace, and made it only visible when linking.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 15:50:03 +00:00
Axel Dörfler d9479a6951 * Added const version of GetLimits() (the non-const version is still around
for binary compatibility).
* Always round the bar thickness, or we get drawing artefacts.
* Cleaned up the header following our coding style.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 15:41:10 +00:00
Michael Lotz 7997389772 Implement DMA transfers in the new ATA bus_manager.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30069 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 15:24:40 +00:00
Stephan Aßmus c4005c4d29 * Some cleanup in the commented out debug code.
* Fixed a problem when scrolling. Basically, the region that could be copied
  should be removed from the pending dirty region. Before a region is copied,
  the dirty regions are removed from it. So the region at the target offset
  can always be considered clean. This fixes the problem in Tracker when
  enlarging windows that are already scrolled to the right or bottom. This then
  triggers the Tracker window to scroll the pose view in such a way that the
  bottom/right stays fixed, but would trigger this exact situation: The bottom
  is already pending dirty, but then the clean contents are copied on top of it.
Fixes ticket #1849 and perhaps also #2975.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 14:19:09 +00:00
Stephan Aßmus 72cd1c7726 Fixed some weird fallback code, I don't think it's used and added a TODO
for whoever stumbles there next...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30067 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 14:05:31 +00:00
Stephan Aßmus ffdb0ccf4f Also improve the BPicture version of drawing line arrays.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30066 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 13:51:16 +00:00
Stephan Aßmus ff4aa6dc03 Style cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30065 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 13:49:51 +00:00
Michael Lotz 3e907cd4a0 Make it buildable on BeOS again... The last time now, the next time BeOS support will simply be removed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30064 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 13:02:46 +00:00
Michael Lotz eb01fb72f6 * Add the kernel debugger extensions only for the haiku target.
* Acknowledge non-enabled interrupts in UHCI as done in EHCI as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 12:35:32 +00:00
Axel Dörfler 4e0b8ffdd6 * As Stephan pointed out, the roster will be NULL if the media server is not
running. Thanks! That's just another thing we should improve in R2.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:45:50 +00:00
Axel Dörfler bc608ebf93 * The volume now listens to parameter changes, and adapts itself automatically.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:26:19 +00:00
Axel Dörfler 3d2abd1bc8 * The mixer node is now exported.
* The node is no longer allocated separately.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 11:25:23 +00:00
Axel Dörfler 2ff47e1785 * Fixed bug I introduced when deleting parameters (no more crashing).
* Removed the BParameterWeb::{Start|Stop}Watching() methods again, as the same
  thing can be achieved using the BMediaRoster already (even though it doesn't
  seem to work yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:39:58 +00:00
Stephan Aßmus 080385d599 Fixed logic to detect and warn about changes in the system folder. Merged
the "system" folder and "system folder or it's contents" case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:30:33 +00:00
Stephan Aßmus 000f19e226 Small coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30056 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:29:33 +00:00
Stephan Aßmus 61d107c8a7 Fix hardcoded paths for this *test* component.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:29:07 +00:00
Michael Lotz 9611bddd7a Adding DMA detection and generally allow DMA. Not used yet though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 09:21:46 +00:00
Michael Lotz 6bb01f71bc * Adding/updating license headers.
* Add the standalone ata module to the Jamfile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 08:54:46 +00:00
Michael Lotz 44039cc605 Additional to the normal detection of device presence, use the trick previously
present in the IDE bus_manager when detecting devices to avoid long timeouts
when waiting for possible ATAPI devices.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 08:44:25 +00:00
Philippe Houdoin 0d81d79091 * Removed hardcoded system location, now use find_directory()
* Fixed a bug I've miss last time: everything under /boot/system was considered 
  a server team, including system apps and demos!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 02:48:02 +00:00
Philippe Houdoin c146f64a63 * Reworked Mesa's GL API dispatching/implementation separation:
Before, it was spread in libmesa.a *and* mesa_arch_$(TARGET_ARCH).o, 
  the later was broken for non-x86 targets.
  
  Now, GL API dispatching is entirely in glapi-dispatching.o, 
  while libmesa.a contains only the software GL implementation.
  
* This should fix PPC libGL.so build - UNTESTED
* Added SPARC assembly code introduced by Mesa 7.2 and sooner - UNTESTED
* Removed a non-longer need workaround in glthread.h.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 00:35:23 +00:00
Michael Lotz bf9a383524 * Work in progress commit of a reworked ATA bus_manager. It's now object based,
but doesn't really do anything more than before.
* It also replaces everything IDE with ATA counterparts and cleans up a lot
  of the definitions.
* Cleaning up the old ATA bus_manager as well as some license headers missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 23:54:52 +00:00
Stephan Aßmus b2a271d29f Changing the text selection region calculation was not such a good idea, it
needs more testing before I can do that, but in principle, I think the idea
was an ok one... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 22:50:35 +00:00
Axel Dörfler 9a4b02535e * Better defaults: the status window should be visible on all workspaces.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 22:18:29 +00:00
Stephan Aßmus 82d9f50841 Some BTextView fixes, most importantly the annoying up/down ping pong when
triggering auto-scrolling in BTextControls...
* _BTextInput_::MinSize() added 1 to the line height, but when aligning the
  text rect, at least one pixel is added at the top and bottom, which makes
  for at least two extra pixels.
* BTextView::_PerformAutoScrolling() had some code which was supposed to
  prevent from out-of-bounds scrolling, but the bottom maximum coordinate
  was not correctly calculated. This and the above item led to the ping-pong
  effect.
* Additionally, I prevented scrolling vertically for one-line text views
  completely.
* On mouse-up, reset the cursor. It may have to be the I-Beam cursor again,
  for example after de-selecting.
* While mouse tracking the selection, always use the I-Beam cursor.
* Also when mouse tracking, do not use the minimum/maximum text offset when
  the mouse is above/below the text rect. Do this only when it's also outside
  on left/right sides. This is less irritating and works like on other
  platforms. It means the first/last line can still be selected, without
  having to constrain the mouse to the inside of the text view.
* When calculating the selection region, don't make the bottom one pixel too
  far up. Lines which contain glyphs that extend below the base-line have
  one more pixel below the glyphs that is inverted now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 22:10:27 +00:00
Axel Dörfler 34c7214442 * BParameterWeb::StartWatching() now just calls BMediaRoster::StartWatching()
as on Dano - since the functionality is already there, those two functions
  aren't really needed, though, so we could remove them again.
* Cleaned up DataExchange.h, and added basic reply/request structs for anything
  that needs an area.
* BControllable now uses a helper class ReceiveTransfer to deal with requests
  with areas.
* Major style cleanup of MediaRoster.cpp, though one could still bury some
  hours there...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 21:17:03 +00:00
Axel Dörfler 5bb7f41847 * Fixed warning.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 21:10:08 +00:00
Jérôme Duval aa6bedf1fb updated mesa to 7.4. It was difficult to merge the glu part (svn conflicts on keywords deletion it seems), so it was copied.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 20:18:04 +00:00
Stephan Aßmus 54dceb1316 axeld+stippi, inspired on a patch by Maxime Simon:
* Renamed add_extensions() to merge_extensions(), since that is what it does.
* Improved some other variable names in that function for clarity.
* Fixed the duplicate extension detection code, also extended it to the list
  of extensions which are supposed to be added, just in case it already
  contains duplicates.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 18:23:16 +00:00
Ingo Weinhold e7f2fa91bc Don't use MakeLocate to make sure that the parent directory exists, since
that also sets LOCATE, which could cause jam to incorrectly place our
directory. Should fix the problems with the SSL build feature some people
have been seeing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 18:03:18 +00:00
Ingo Weinhold 90d46a5c43 * Fixed the "qOffsets" return value. At least how I understand the
documentation the segment offsets it shall return are relative to the
  address specified in the program header.
* Added "qSupported".
* Added the mandatory commands and some additional ones. Partially implemented
  only.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 16:54:57 +00:00
Ingo Weinhold 7be389053f Don't use exit() when compiling for the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 16:48:32 +00:00
Ingo Weinhold b36c8ba26a Added elf_get_kernel_image() returning the image for the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 16:47:45 +00:00
François Revol 037d4a2f46 Missing include for strcmp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 15:45:09 +00:00
François Revol 558916824d Fix gcc4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30034 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 15:35:45 +00:00
Stephan Aßmus 6a71afb0d1 Sorry for mixing some cleanups into this patch...
* When changing icon sizes, invalidate before scrolling. This causes silent
  scrolling in app_server and avoids a visual jerk. Everything needs to be
  re-drawn at the new icon size anyways.
* Removed the fUpdateRegion member from BPoseView. It was supposed to make
  drawing quicker, but it only made it slower. Checking for intersection with
  the update rect passed to Draw() should be much more straight forward and
  does not involve app_server communication...
* Refactored some misnamed methods, ScrollIntoView() would always draw and
  only sometimes scroll - I couldn't agree with that.
* There is a very confusing mix of "fullDraw" and "minimalRect" booleans which
  seem to be used with wrong semantics. The minimalRect flag passed to BPose::
  CalcRect() means to get the pose rect for the icon and the first column only,
  not all columns. Contrary to that, some pose rect calculation happens with
  minimalRect == fullDraw... I tried to fix some of that.
* The visible changes of this patch are when adding poses. The
  SynchronousUpate() wasn't working so well, I made it work reliably by invoking
  Invalidate() and Window()->UpdateIfNeeded(), which also takes care of any
  drawing that the app_server has to do for the background. And it's flicker
  free in double buffered mode...
  -> This fixes poses being drawn multiple times and the text getting darker.
* And there was another bug when adding poses. The extent (bottom of last item
  in list view for example) can be just above the current view bounds. When the
  next item is added above the view bounds, then the extent scrolls into view,
  but there is nothing to be scrolled in this case. srcRect is still invalid
  and so is dstRect. But destRect should be valid in this case.
  -> This fixes some poses being cut off at the bottom when opening Tracker
  windows.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30033 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 15:28:53 +00:00
Axel Dörfler 8aa910b94c * Added missing SO_TYPE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30032 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 15:24:45 +00:00
Axel Dörfler ab9873555a * Restructured the sources a bit, renamed SliderView to VolumeControl,
VolumeSlider to VolumeWindow.
* The VolumeControl is now a replicant, and be be dragged to the Tracker.
* Hence, moved all volume control stuff from VolumeWindow into the
  VolumeControl class directly.
* Changed menu a bit. Note that controlling the physical output currently
  does not work, but that's a problem of the media node in question (probably
  the multi audio add-on, I'll have a look).
* Added a small delay when clicking on the slider directly before the window
  is hidden, so that you'll get some feedback of your action.
* Added --add-volume, and --volume-control options to "desklink", the former
  adds the volume control icon to the deskbar, the latter opens the volume
  control window directly.
* Further cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:59:25 +00:00
Axel Dörfler db15cbbee1 * Added Dano-compatible BParameterWeb::StartWatching()/StopWatching() method
stubs.
* However, without a working Dano at hand, I can't really implement something
  compatible, so I'll postpone this to some later point.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:21:29 +00:00
Axel Dörfler eced4ba5a3 * Rewrote ParameterWeb.h.
* Adapted and cleaned up ParameterWeb.cpp.
* Fixed some copy&paste bugs in the BTextParameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:13:33 +00:00
Axel Dörfler fe6c05fdbe * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 14:12:45 +00:00
Ingo Weinhold 777ae2fbb5 More style fixes. Sorry, missed those before.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 13:15:16 +00:00
Ingo Weinhold c970c6e8f3 Converted C to C++ comments.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 13:13:08 +00:00