Commit Graph

3478 Commits

Author SHA1 Message Date
Stefano Ceccherini
cb6cd9af6f BMenu::_SelectNextItem() also opens the menu if we're inside a menubar.
That way menubars are navigable via keyboard. There are still glitches, 
but menu keyboard navigation works now.
Minor optimization: cache the value of CountItems() instead of calling 
it multiple times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 11:34:53 +00:00
Axel Dörfler
46c6a221a8 Files that were created in the future (time zone issues, or whatever)
shouldn't be regarded recent either.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23384 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 10:46:37 +00:00
Michael Lotz
f1b05aa545 Fix syntax error.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 02:21:47 +00:00
Axel Dörfler
978e434d72 * Finally nailed down and fixed #355: apparently, if the pose info attribute
couldn't be read from a file, Tracker would try 10 times with a 10 ms
  timeout - but only if the creation time equals the modification time!
  That was obviously supposed to be a check if the file was recent...
  Now that computers are faster (even when running Haiku), it may 
  actually take less than one second to copy a file, so most files on
  the Haiku image satisfied this thoughtful and future-proof check.
  (And no, even the original BFS does not automatically increase the 
  modified time on close.)
* Now, mmlr came up with a better check: we just check the file's 
  creation time against the current time to see if it's a recent file.
  That should work a bit more reliable :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-11 01:32:47 +00:00
Axel Dörfler
737ce1c03c * The keyboard target was always the first menu in the window list - no matter if that was hidden or not.
This fixes the bug described by Stefano in r23343.
* Therefore, I enabled cached menu windows again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 21:26:55 +00:00
Stefano Ceccherini
0625889c61 IsModal() now includes also the kMenuWindowLook. Fixes bug #1269. Please
review.
Added a compile time option to switch off the use of the cached menu 
windows. Looks like there is a problem with the focus system, if I keep 
the cached menu window around, it "steals" keyboard events from the main 
app window after the menu has been opened and closed once.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 16:04:57 +00:00
Stefano Ceccherini
85e661dbf0 Merged (parts of, for now) patches from Rene Gollent and
Christof Lutteroth, which improve menu keyboard navigation. Sorry for 
the delay, I had these patches sitting on my hard drive for a while. At 
least now you can open a menu with ALT + ESC, navigate it with the arrow keys,
and invoke an item.
Various issues still exist, including: menubars don't get the keydown 
messages, and if you keep the mouse over the menu while navigating
with the keyboard, nothing will happen. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23339 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 14:06:11 +00:00
Stephan Aßmus
67abb56fcd patch by aldeck:
* fixes the content inside the tabview in the Media preflet spanning over
  the wrong area (wrong insets)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-10 13:46:35 +00:00
Stephan Aßmus
2787214419 * VisitEachPartition() was not working correctly, terminatedEarly was not
maintained


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-08 23:35:51 +00:00
Stephan Aßmus
7b94dab18f * fix some invalidation problems with the triangle thumb which are caused by
non-traight lines extending past the thumb frame because of anti-aliasing
  effects


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23286 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-08 18:56:04 +00:00
Stephan Aßmus
01c2f44ee8 * fix keyboard handling to trigger the correct invokation message
* add support for B_HOME and B_END key (jump to min/max value)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-08 16:39:00 +00:00
Stefano Ceccherini
20817b7706 Double sorry...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 22:55:36 +00:00
Stefano Ceccherini
598ea11c81 Sorry, this wasn't meant to be here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 22:42:28 +00:00
Stefano Ceccherini
3e06c4fae2 Improved the code still a little bit. Menus seems to be somewhat more
responsive.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 22:21:25 +00:00
Stefano Ceccherini
8d44324fda Same thing as previous commit, only for BMenuBar. Added some other
comment


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 16:13:14 +00:00
Stefano Ceccherini
14e826c4ba Some changes in menu tracking:
- in the code path, now it's clear if the looper is locked or not
- if menus are quitting, now we don't call snooze() anymore, and avoid 
the extra GetMouse() call.
- some other cleanups


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 15:46:28 +00:00
Stefano Ceccherini
7957219ebb Removed a check which was always false.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 13:54:55 +00:00
Stefano Ceccherini
d19c9634d4 Added comments which clarify why we are doing things like this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-07 13:43:29 +00:00
Jérôme Duval
0f928a18d2 updated mesa to 7.0.2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-05 16:12:28 +00:00
Axel Dörfler
37d8f330f4 * ResolveSpecifier() used the window's handler name instead of its title for the "Window"
B_NAME_SPECIFIER. This should fix bug #1681.
* Improved ResolveSpecifier() code.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-04 13:03:37 +00:00
Axel Dörfler
7d61af89af h_name must be set, or else libnetwork.so will crash when trying to resolve a name...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-03 19:39:35 +00:00
Stefano Ceccherini
d2580802d6 Somehow r23154 reverted r22930...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23233 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-03 16:09:32 +00:00
Stefano Ceccherini
c129260a24 There was a reason for this after all: Sometimes hovering from the
submenu to the parent didn't trigger tracking from it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23232 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-03 10:43:45 +00:00
Stefano Ceccherini
9e64a7ed1b Fixed problem with some popup menus (check ticket #1679)
Moved GetMouse() calls near the check for exit conditions.
Reorganized a bit the code, and hopefully simplified it in some places.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-03 07:30:05 +00:00
Axel Dörfler
68af0a3fff If there is no /etc/hosts file, we now add a "localhost 127.0.0.1" definition
internally. This fixes #1688.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-02 16:16:28 +00:00
Stefano Ceccherini
921eba6e4d BPrintJob: PrintableRect(), PaperRect() and GetResolution() now call
_LoadDefaultSettings() if no settings were loaded already, in order to 
return valid values. Renamed private methods to fit our guidelines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-01 15:54:28 +00:00
Stefano Ceccherini
2c2176ceba Removed SetViewCursor() from BTextView::_Deactivate(), as suggested by
cl21.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-01 15:50:37 +00:00
Stefano Ceccherini
4b812f294e Set sticky mode to the correct value before calling BMenu::_Track().
Fixes bug #1679


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-01 14:37:19 +00:00
Axel Dörfler
4d85dcbce8 Removed the experimental BColumnListView class from libbe.so, and moved it
into its own archive (libcolumnlistview.a). Only DriveSetup is using it at the
moment, anyway.
IMO we should reimplement and completely redesign a class with this
functionality before considering making it public.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-30 13:31:45 +00:00
Axel Dörfler
33d3580bdc Fixed copy&paste bug, thanks Stefano!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-30 13:02:13 +00:00
Axel Dörfler
deb58f165b * DispatchMessage()'s B_WINDOW_ACTIVATED now checks if there are any pending
activation messages, and always retrieves the information from the latest.
* Reverted r23062, as the above should fix bug #613 as well.
* This should also fix bug #1674.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-30 12:46:30 +00:00
Stefano Ceccherini
bf41a1c034 Patch by cl21 (I really hope this isn't your real name :P ) which fixes
the BColorControl flickering reported in bug #503. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-29 15:26:37 +00:00
Stefano Ceccherini
9834e99c64 AddChild() was called too early for the replicant and the dragger, in
BShelf::_AddReplicant(). Now it's called near the end of the function. 
This way we don't have to call RemoveSelf() in case 
BShelf::CanAcceptReplicantView() return false. This also fixes a glitch 
in BSnow, which calls MoveTo() in AttachedToWindow(). Simplified the 
code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-28 15:37:51 +00:00
Stefano Ceccherini
eb885e0680 removed useless OffsetTo()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-28 11:48:35 +00:00
Stefano Ceccherini
d73c4e9fb1 Put the code to Extract a replicant into its own function.
BShelf::_AddReplicant() is finally getting acceptable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-28 11:07:28 +00:00
Stefano Ceccherini
898edb5ba7 Split BShelf::_AddReplicant() functionality into smaller methods. Not
yet done, but I hope it's getting better


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-28 10:49:04 +00:00
Stefano Ceccherini
0a9d19b17f Added a comment about the bug in BSnow
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-28 08:20:39 +00:00
Stefano Ceccherini
1d4722b73a After some testing on beos, I fixed bug #952. Please check but I think
it's correct now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-25 23:09:22 +00:00
Stefano Ceccherini
cf42e48ef1 call Draw() between PushState/PopState. Added some Todo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23157 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-25 22:47:19 +00:00
Stephan Aßmus
c9198a4cce * I am pretty sure this was a bug... spotted by pure chance, should have
caused messed up undo/redo when removing multibyte UTF8 glyphs via forward
  backspace


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23156 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-25 21:56:14 +00:00
Stephan Aßmus
099fb2d3be * removed declarations for methods which are not used/implemented in View.h
* improved naming of some private BView functions and used our underscore
  prefix
* added a _DrawAfterChildren method to BView which does the necessary setup
  and calls the DrawAfterChildren hook
* call the new _DrawAfterChildren method in the BWindow implementation, this
  was easy since the view tokens are already hierachically sorted
* implement support for B_DRAW_ON_CHILDREN in the app_server's ViewLayer, it
  simply means that children are ignored for the views clipping region, any
  drawing methods will paint over children (therefor the B_DRAW_ON_CHILDREN
  flag is even properly named)

With these changes, support for B_DRAW_ON_CHILDREN and the DrawAfterChildren()
hook are implemented and behave exactly as on R5 as far as I can tell, also
for the view background painting.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-25 14:47:06 +00:00
Marcus Overhagen
b571493666 drop into debugger when things go wrong
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-10 22:04:34 +00:00
Jérôme Duval
477d25de35 don't add backgroundTexture.tga as default folder image
fix bug #1649


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-08 12:45:03 +00:00
Stefano Ceccherini
ebe41f1a76 added a TODO item
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-05 12:13:43 +00:00
Stefano Ceccherini
d7c343d92c Dispatch also the B_WINDOW_ACTIVATED messages. This fixes bug #613, but
we need to check which other messages are handled by beos here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-05 12:12:48 +00:00
Axel Dörfler
fc8ffb64ec Applied a slightly changed patch by cl21: changed how the BListItem layouts
its text contents. This fixes bug #619. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-01 19:51:56 +00:00
Stefano Ceccherini
423e822abe Only enlarge the menus if there's a submenu symbol (regression). Fixes
bug #1647.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 22:19:24 +00:00
Stefano Ceccherini
cb752f1822 xdiff -> xDiff, useHorz -> useHorizontal...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 10:56:27 +00:00
Stefano Ceccherini
c9dcf7979b BTextView::_ScrollToOffset() just didn't work correctly most of the
times, since xdiff and ydiff didn't take the point returned by 
PointAt() into account. Thanks to Andrea Anzani for noticing this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 10:53:53 +00:00
Stefano Ceccherini
ee70f30ea0 cleanups
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-20 12:59:59 +00:00