Commit Graph

16714 Commits

Author SHA1 Message Date
Axel Dörfler
fe19cff624 No longer invalidates the view when an overlay bitmap is updated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-04 11:21:36 +00:00
Axel Dörfler
f8915230d5 Removed check for fAddonImage in CanControlFrameBuffer() - according to Rudolf, this
method should return the correct value before the accelerant is cloned.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-04 11:12:40 +00:00
Axel Dörfler
fe01155b84 * Removed the (200, 200) inset.
* fOldMode is now set to the current display mode.
* Now checks semaphore creations and memory allocations for failure.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-04 10:55:01 +00:00
Axel Dörfler
7fa10e9922 Added intel_extreme driver to the image. Shouldn't do any harm, at least :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-04 10:24:31 +00:00
Axel Dörfler
6a3543db2a * Finally the overlay looks like an overlay. It took me almost a day to realize that
the Intel chip obviously cannot do overlays in B_RGB16 - even though it pretends
  to be able to do that.
* B_YCbCr422 seems to work, though, I haven't tested any other spaces for now, and
  I somewhat doubt they will work. It's all green, though, and the scaling doesn't
  seem to be correct - that we be solvable, though :)
* There aren't any bounds checks (so don't move the window out of the screen), and
  also the overlay_view offsets are ignored.
* Scaling and moving is now detected, and there is always as little work done as
  possible to reduce the workload on buffer switches (the most common case).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-04 09:08:26 +00:00
Michael Lotz
3279f3b055 Detect recursions of UpdateIfNeeded. This is necessary as we may call hook functions (FrameResized(), FrameMoved()) that in turn could call UpdateIfNeeded again. This is the case for DarkSite which uses GetMouse() inside FrameResized(). This fixes resizing DarkSite and probably fixes bug 539 too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 22:30:52 +00:00
Michael Lotz
035eafc5f3 We should never mess with fQueueLink as it's maintained by the BMessageQueue. Small simplification.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 22:23:09 +00:00
Philippe Houdoin
4bd2b6b203 We now support space in destination path Package argument.
Long overdue commit resting on my disk...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 21:16:44 +00:00
Stephan Aßmus
022cdecc8f simplified polygon and bezier drawing methods, made them more efficient
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 20:34:27 +00:00
Stephan Aßmus
d96389c199 fixed BView::Stroke/FillPolygon(), the bounds were not converted to screen and the clipping decision was based on it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 20:33:18 +00:00
Jérôme Duval
554bbb1f37 merging coreutils-5.94 into trunk
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 16:15:55 +00:00
Jérôme Duval
c3725117bd wctype_t is already defined in wchar.h which is included
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 13:39:23 +00:00
Stephan Aßmus
a9efee3047 * removed left over debug output, sorry about that
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 11:09:37 +00:00
Stephan Aßmus
6a8e3decde * compile fix for the test environment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 11:08:52 +00:00
Axel Dörfler
bb40a68547 * The mapping is now also removed from the area list in case creating the
area failed.
* "base" is no longer used uninitialized in combination with B_BASE_ADDRESS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 10:14:36 +00:00
Stephan Aßmus
d6aecd8934 should have fixed BView::StrokeBezier() and BView::FillBezier(), thanks to jan__64 for reporting
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 10:08:23 +00:00
Axel Dörfler
6736b21a2a This should fix the wrong handling of BView::ClearOverlay() - probably, I haven't
tested it :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 21:22:56 +00:00
Axel Dörfler
f4c4106a40 * Doh, I had done all bitfields in the wrong direction (msb to lsb, but it's actually
lsb to msb).
* The result is that there is now *something* to see when overlay is turned on. In
  fact the whole screen goes dark besides a few pixels on the top - now isn't that
  something? :-)
* The overlay is also turned off again correctly - which also revealed a bug in our
  app_server: B_CONFIGURE_OVERLAY is not always called with window=NULL/view=NULL
  to turn off overlay (might be an incorrect handling of BView::ClearOverlay()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 21:16:17 +00:00
Axel Dörfler
4f4035561f Hacked AccelerantHWInterface::GetDriverPath() to call the accelerants
B_GET_ACCELERANT_CLONE_INFO (as that's what the caller actually wants).
Unfortunately, it's currently hard-coded to path names, that is, if there
is a driver out there that doesn't follow this quasi standard, it will
break this mechanism.
We should either change the driver interface to explicetly use path
names, or change the mechanism we're using (in BWindowScreen upwards to
the app_server) to the one as thought by Be.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17299 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 20:17:45 +00:00
Axel Dörfler
6c858b7022 * Added the AGP bus manager module to the build.
* Made the graphics drivers/accelerants x86 only, as requested by Rudolf.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 19:10:10 +00:00
Rudolf Cornelissen
7e96e63a20 added (fixed for now) enabling colorkeying and hor.and ver. filtering. Temporary, until SetViewOverlay()'s 'options' gets feeded here. The setting now in use should be perfectly safe and fixes the clipping and cursor (aparant) problems while using overlay on most gfx drivers. Axel, please review and update as needed ;-). Hope you don't mind this workaround for now..
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 14:50:16 +00:00
Axel Dörfler
c923ce2ed2 Minor cleanup, and thanks for the fix, Rudolf! :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 14:17:47 +00:00
Rudolf Cornelissen
b034a8a36c added relaying updated bytes_per_row to BBitmap's properties in case a bitmap was created in the graphics memory (ie: overlay bitmaps). Now not only a bitmap's size is updated, but also the bytes_per_row property itself. Axel, please review and correct as needed. Thanks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 13:33:22 +00:00
Axel Dörfler
797de116a2 * Loading and saving the settings was completely broken. I've moved to a different
file and put the window position there; loading/saving of the translators settings
  looks broken in (or rather, missing from) the Translation Kit as well.
* Now uses the new watching mechanism of BTranslatorRoster to keep track of new
  translators.
* Installing translators now gives better error requests, it now no longer uses
  undocumented BTranslatorRoster functionality, but the new IsTranslator() method
  to check if a certain file is a translator.
* Copying translators is disabled for now, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 00:23:22 +00:00
Axel Dörfler
1826d5c8b2 * Node monitoring didn't work correctly, as the directories were not remembered
accidently.
* Additionally, B_ENTRY_MOVED worked not correctly, as the entry_ref for the
  new entry was built upon the wrong node_ref.
* The default translator now also makes sure that the default system paths
  exist. This helps node monitoring as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-02 00:14:54 +00:00
Stefano Ceccherini
927a84f8f6 mkindex wasnt' built, so install-haiku failed on systems different than beos. Now it fails because it doesn't know what BEOS:APP_SIG is. I have no idea how to fix that problem, please someone have a look.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 22:32:23 +00:00
Stefano Ceccherini
cc8ef734e9 Fixed BDragger popup again, was broken after latest changes to BMenu/BPopupMenu
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 21:45:48 +00:00
Axel Dörfler
3e54c13abc * Fixed BDirectory::SetTo(BDirectory*, path) constructor in case the target
directory was "this".
* Fixed storage_support.h header - didn't include all needed headers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 16:55:46 +00:00
Axel Dörfler
9991d2b1ac * Applied patch by G. Zachrisson to fix the endless loop in _FindNextNavigable().
* Rewrote broken _FindPreviousNavigable() - it now does the exact opposite of
  _FindNextNavigable().
* Both methods did not ignore hidden views - they now do.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 14:57:49 +00:00
Stephan Aßmus
e1fcb5e4b8 added Carwyn Jones to the list of contributors, he seems to have been involved in writing BDirectWindow
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:18:52 +00:00
Stephan Aßmus
114752ff21 In FFM mode, clicking a window will not bring it to front
immediately. Only if the mouse is released within a certain
time window (half a sec) and if it was not dragged (as on R5).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:17:34 +00:00
Stephan Aßmus
e647873a03 implemented TODOs from Desktop::ActivateWindow():
* If the window is on another workspace, the workspace will be
  activated or the window will come to the current workspace
  or nothing will happen depending on the windows flags. Tested
  with WonderBrush, but I just now realise that it will also
  fix activating a window in the Deskbar, which is on a different
  workspace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-01 10:14:51 +00:00
Stefano Ceccherini
5e9bdfc4d7 Chart doesn't hang on quit anymore (bug 431)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 21:26:16 +00:00
Stefano Ceccherini
4436b7269d Menuitems are layoutted better, fixing bug 526
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 20:24:30 +00:00
Axel Dörfler
29dfc8d391 The BTranslatorRoster now locks the looper before it adds/removes it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 18:18:06 +00:00
Axel Dörfler
573c4336a3 Implemented quite a hack to solve the lockless get_memory_map() problem (bug #349):
when called with interrupts turned off, get_memory_map() will now call the new
vm_translation_map_ops::query_interrupt() call.
Under PPC, this is trivial (at least right now), but on x86 we need to make sure
we have access to the page table entry, ie. we need to create an area that points
to its own page table entry, so that we can map in the page table entry containing
the address we're looking for. It's not really nice, feel free to come up with
a cleaner solution :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 17:45:33 +00:00
Axel Dörfler
26f4e1eba8 Reenabled interrupts in the radeon driver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 13:57:47 +00:00
Axel Dörfler
77a08c68e8 Changed the way handlers for edge triggered interrupt are called: now, we
always call all handlers in this case, but we still try to return the correct
return code (ie. B_HANDLED_INTERRUPT and B_INVOKE_SCHEDULER).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 13:56:21 +00:00
Axel Dörfler
f7a446f46f Oops, actually forgot to press "save" in the editor to include the real thing...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 13:44:24 +00:00
Axel Dörfler
99df69077c For level triggered interrupts, we now acknowledge the interrupt after having called
the interrupt handlers, not before (like we do for edge triggered ones).
This should prevent hardware from issuing a second interrupt when the software driver
is still busy handling the first.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 13:43:05 +00:00
Axel Dörfler
5886ae3213 Finally (!) fixed that stupid bug that prevented at least some Pentium-M laptops to
work correctly when on power supply (ie. when running at full speed). Turns out we
misdetected a spurious interrupt on line 15 - we now ignore them completely which
seems to fix that problem.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 13:35:53 +00:00
Stephan Aßmus
aaff012f00 Rudolf convinced me to enable WaitForRetrace() again, the ATI driver should be fixed instead (not to export the retrace semaphore when interrupts are disabled)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-30 10:48:02 +00:00
Michael Lotz
17fee3eab7 Removed the extra info struct in the cpu_ent union and made said union a struct instead. Same as r1137 in NewOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 22:38:19 +00:00
Michael Lotz
2a03240eb1 Reverted my last change as it turned out that the lazy FPU state handling was not SMP safe afterall and the performance gain is questionable. Maybe it'll be implemented correctly in the future. Sorry for any inconvenience this may have cost.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 22:10:04 +00:00
Stephan Aßmus
4da35ea940 * added IFS screen saver
* added Installer app
* added all Translators


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:14:26 +00:00
Stephan Aßmus
1224ddd152 whoops, accidentally had a broken makefile left there
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:10:51 +00:00
Stephan Aßmus
bc679b6077 added a cool looking xscreensaver port, featuring BDirectWindow usage - looks smoother than the original
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17269 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 20:08:44 +00:00
Stephan Aßmus
a075725845 another long overdue fix... CopyBits() is now taking
children of the view in question into account. Neither
are they included in the region being copied, nor are
views overdrawn by the copied contents. Also, the update
region is calculated from the region having been copied,
so that holes from children views are invalidated
correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 18:19:54 +00:00
Axel Dörfler
783f7f20bd * Implemented support for node monitoring - you can now be notified when new
translators are installed via BTranslatorRoster::StartWatching().
* Fixed GetTranslatorData() - some hooks are only optional (this puts the
  JPEG, GIF, and some other translators back into the game).
* Made BTranslatorRoster::Default() thread-safe.
* Improved documentation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 18:02:46 +00:00
Stephan Aßmus
5ec797a76f * improved getting the retrace semaphore, now the PrivateScreen
will not try to retrieve the retrace semaphore again and again
  if the graphics cards doesn't support it for some reason
* disabled BScreen::WaitForRetarce() for now, since it will just
  hang on ATI Radeon at least


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-29 16:46:21 +00:00