Commit Graph
100 Commits
Author SHA1 Message Date
Rene Gollent a663e90506 Fix #8640.
- Automatic whitespace cleanup.
- Remove no longer exposed show/hide time setting. The methodology for
  saving it on exit was broken anyways, since it relied on the current
  show/hide state of the time view, which would be hidden if the deskbar
  was currently in Autohide mode.
2012-06-16 16:45:28 -04:00
Rene Gollent 983f0b53d9 Add Gerald Zajac's Intel 810 driver to the image. 2012-06-01 17:24:27 -04:00
Rene Gollent f4ee2d048e Slight and cleanup and fix potential section leak. 2012-05-28 15:48:00 -04:00
Rene Gollent dbf07c84a2 Fix problems unwinding call frames.
Our more recent build of gcc4 appears to have switched to using
.eh_frame for almost all useful call frame information when built
with debugging. Use a somewhat crude heuristic (size) to determine
if the .debug_frame section we've been given might actually be of use
or not (assuming it exists at all, this was inconsistent in my tests.
Sometimes apps had no .debug_frame at all, other times it was present
but was only roundabouts 100 bytes).

Fixes ticket #8508.
2012-05-28 15:39:38 -04:00
Rene Gollent e0a6e07bb3 Minor cleanup, no functional change. 2012-05-28 14:51:58 -04:00
Rene Gollent c2d1fc4ffa Fix updating of source path.
Factor out updating of the source path view into a dedicated function,
and fix some errors that would sometimes result in the text not updating
properly when switching stack frames, particularly if the target frame
didn't have source code available.
2012-05-27 21:46:50 -04:00
Rene Gollent 95aae4ae1e Style fixes. 2012-05-06 16:12:16 -04:00
Rene Gollent ec3fd1713a Fix regressions introduced by previous commit.
- Conditionally enable and disable event masks as needed when we detect
  the mouse entering/exiting the deskbar area. This is necessary because
  otherwise the app_server appears to eat mouse messages due to the ctrl+cmd+
  resize shortcut. Also change some conditionals slightly to better deal with
  differing combinations of autohide and/or autoraise.
2012-05-05 15:32:59 -04:00
Rene Gollent 22812ba24f Fix ticket #8497.
- Rework Deskbar's handling for the autoraise/autohide cases to not
  need event masks. This prevents various problems that would occur
  if one happened to be working in another window that overlapped part
  of Deskbar, as reported in #8497. Instead, we now use a message filter
  to redirect the messages as needed.
2012-05-05 14:45:28 -04:00
Rene Gollent aa19448875 Make memory menu items 64-bit safe.
Redo the precision levels of various calculations in the memory bar items
so they don't overflow on systems with > 4GB of RAM. Previously one could
see fun results like the kernel using negative amounts of memory on such
systems.
2012-04-30 21:56:30 -04:00
Rene Gollent 119c90fc35 Fix remaining part of #8094.
Set an explicit minimum size on the source path view, in order to prevent it
from unduly influencing the initial size constraints of the window. (Belatedly)
fixes the remaining part of #8094.
2012-04-30 19:08:25 -04:00
Rene Gollent 03b82a629d Fix decorator reload crash.
- SetTopTap() -> SetTopTab().
- When reloading the decor, if the window in question is borderless,
  short circuit. Previously, we wouldn't allocate a decorator for such
  a window, but would then go through the remaining steps of attempting
  to set the focus/top tab, which would obviously crash. Fixes #8500 and
  possibly others.
- Add error check that adding tabs to the decorator actually succeeded.
2012-04-28 16:21:19 -04:00
Rene Gollent 96493c29bc Handle gcc2 quirks with paths.
When asked to build via a relative path (i.e. from within a generated subdir),
gcc2 was generating a compilation directory attribute pointing to the generated
subdirectory, as well as entering the actual filename attribute as the full
absolute path to the file. This wasn't checked for, leading to the issue
described in ticket #8498. gcc4 does not appear to have the same behavior,
it generates a relative path + filename in all cases.
2012-04-28 15:42:53 -04:00
Rene Gollent 937ca113b0 Reorder names alphabetically. 2012-04-15 08:22:58 -04:00
Rene Gollent 5c46b17139 Rework NetworkStatus's status tracking a bit.
NetworkStatus now tracks the status of each interface separately, and
uses that information to make correct comparisons for notifications.
Previously, it would only send notifications using whatever interface
was last in the enumeration list, and if an earlier interface had a higher
configuration level than that, the notification would incorrectly be sent
as occurring on the last interface. We now send notifications for each
interface separately. The status shown by the deskbar icon remains that
of the most highly configured detected interface. Fixes #8468.
2012-04-14 08:46:48 -04:00
Rene Gollent 3c5763274a Implement DW_LNE_set_discriminator from DWARF 4. 2012-04-11 19:28:59 -04:00
Rene Gollent 56981da008 Fix slight oversight in previous commit.
Only trigger autoconfiguration if the link status changed from down
to up.
2012-04-11 18:31:44 -04:00
Rene Gollent 9cac658a9f Keep more accurate track of media status changes.
AutoConfigLooper now remembers the last media state it received from the device,
and compares both to see if the active state actually changed. Should help with
quality changes where the link didn't actually drop. May also help on ethernet
if the chipset sends spurious link status change notifications.
2012-04-11 18:27:20 -04:00
Rene Gollent 3da13b8038 Fix typeahead cancellation in file panels.
- Add accessor to PoseView that reports whether the view is currently
  typeahead filtering.
- Use said accessor in the file panel's filter in order to detect whether
  to tell the latter to cancel filtering vs closing the panel.

Fixes #8140.
2012-04-07 20:20:39 -04:00
Rene Gollent ec495b30ce Fix incorrect error check.
The case where GetRefreshLimits() failed wasn't being detected and
handled correctly.
2012-04-02 18:04:16 -04:00
Rene Gollent cf0769649e Fix crashing corner case in screen prefs.
If the refresh limits only allowed a single refresh, the menu item constructed
had no BMessage. This caused _UpdateRefreshControls() to crash when attempting
to match the current refresh rate to the item. For simplicity, give it a message
containing the fixed refresh rate just as in all other cases. Should finally
fix #8431.
2012-03-31 17:31:21 -04:00
Rene Gollent 484afd3a08 Updated Web+ package.
Fixes an oversight in yesterday's bug fix.
2012-03-31 14:21:04 -04:00
Rene Gollent ab2948538e Update Web+ optional package.
- Fixes a problem in Web+'s autocompletion handler that would
  result in it eating things like workspace switching shortcuts
  if Web+'s URL input had focus.
2012-03-30 22:23:58 -04:00
Rene Gollent 294a85aa68 Fix build. 2012-03-30 20:58:18 -04:00
Rene Gollent 7e44de362f Fix several issues in Screen preflet.
- Always initialize other menu item data member.
- Always use refresh_rate_to_string() to generate item labels.
- When searching for the item matching the selected refresh rate,
  look for it by the actual refresh rate stored in the item's message
  rather than by string comparisons of the label.
- Don't assume the Other menu item exists, since it doesn't in cases
  where the refresh rate constraints only allow a single rate.
- Update copyright year.

Fixes #8431.
2012-03-30 18:17:01 -04:00
Rene Gollent e766bb9e26 Fix iso9660 add-on.
hrev43777 introduced a regression that resulted in the symlink flag byte
no longer getting skipped in non-trace builds. Fixes #8369.
2012-03-18 10:05:04 -04:00
Rene Gollent 8f5079af02 When changing the tab height, also update the layout insets if needed.
Fixes #8374.
2012-03-03 08:32:05 -05:00
Rene Gollent 4183675895 Move black/white color constant definitions to header.
Previously, there were two instances of the actual variables, named in
ControlLook.cpp and Utilities.cpp. This caused clashes on gcc4 builds, leading
to various crashes during initialization. Instead we now declare them as
static constants in the header itself as is done for various other interface
color constants elsewhere. Fixes ticket #8358.
2012-03-02 20:39:12 -05:00
Rene Gollent 3d4db3d64e Update Vision packages to account for BControlLook changes.
Fixes #8355.
2012-02-26 14:26:18 -05:00
Rene Gollent ab992e7851 Adjust Jamfile to fix dependencies.
3DRendering wasn't depending on the mesa headers as needed, so its
build would break in a multi-job jam if mesa hadn't already been
downloaded.
2012-02-02 21:48:25 -05:00
Rene Gollent 612e834851 Update package again due to a few stray attributes that were missed.
Should really fix #8290.
2012-01-23 15:52:14 -05:00
Rene Gollent 8154b8ae5e Updated Web+ optional package to remove stray Tracker attributes.
Fixes #8290.
2012-01-23 09:59:36 -05:00
Rene Gollent f6c8d24294 Use the correct perform invocation for these functions. 2011-12-19 08:49:58 -05:00
Rene Gollent 730714fea5 Update Pe gcc4 optional package. 2011-12-18 16:09:29 -05:00
Rene Gollent c8df0c9b27 BePDF needed this one to be added as well. 2011-12-18 15:54:01 -05:00
Rene Gollent 466f2b8f99 Add compatibility symbols for removed LayoutChanged() calls. 2011-12-18 15:34:44 -05:00
Rene Gollent f7d5d48f98 Updated Vision packages. 2011-12-17 16:15:35 -05:00
Rene Gollent 86b8d5d95a Fix build. 2011-12-17 00:04:46 -05:00
Rene Gollent bae0f6db21 Updated Web+ package due to layout API changes. 2011-12-17 00:03:23 -05:00
Rene Gollent 8a6af348bb Add Git to nightlies rather than Subversion. 2011-12-16 11:08:00 -05:00
Rene Gollent 973ec3b1ac Fix naming. 2011-12-16 08:38:09 -05:00
Rene Gollent 26334a8a66 Fix unwinding of partial stack traces.
- Architecture::CreateStackTrace() now uses the last frame's
  PreviousCpuState() as the basis to continue unwinding when passed
  a partial trace to continue from, rather than the (incorrect) actual
  cpu state of that frame, which would have resulted in the last frame
  being duplicated in the trace.

- Renamed variables to be more clear.
2011-12-15 22:43:38 -05:00
Rene Gollent a9bec97e47 Add previous CPU state member and associated accessors.
Used to store the unwound state of the CPU from this frame,
which will form the actual state of the following frame. Needed
in order to properly support continuation of unwinding from a
partial stack trace.
2011-12-15 22:40:32 -05:00
Rene Gollent 118ddee0fd Adjust ThreadHandler's usage of CreateStackTrace().
- Limit invocations of CreateStackTrace() in ThreadHandler to
  only unwind the topmost frame since that's all it actually
  cares about anyways. Also adjust Step Over to use this
  functionality in order to work with the correct frame addresses,
  since the CPU frame pointer register isn't entirely what we want
  here.
2011-12-14 22:30:09 -05:00
Rene Gollent 16875b8c58 Make CreateStackTrace() more flexible.
CreateStackTrace() can now optionally be asked to limit the maximum
number of frames it tries to unwind. In conjunction, it can also be
passed an already existing partial stack trace, and be asked to
unwind more frames from it.
2011-12-14 22:30:07 -05:00
Rene Gollent aeb2d34b0e Fix comment. 2011-12-13 22:54:00 -05:00
Rene Gollent c3946ba021 Properly handle recursive case for Step Over.
When stepping over, check to ensure that we're in the same call
frame that we started in. If not, reinstate the temporary breakpoint
and continue running.
2011-12-13 22:50:16 -05:00
Rene Gollent b57be6adc9 Fix accidentally introduced whitespace from previous commit. 2011-12-13 16:07:23 -05:00
Rene Gollent 6b5a76158f Add TODO note. 2011-12-13 15:52:05 -05:00
Rene Gollent adaf4b3db1 Implement parsing of DW_AT_calling_convention.
Will be used later in order to determine if a given call obeys the
standard calling convention, in order to determine if we can safely
attempt to retrieve its return value.
2011-12-12 22:16:17 -05:00
Rene Gollent f67acc2c72 Use architecture to determine correct frame pointer comparison. 2011-12-12 08:41:45 -05:00
Rene Gollent 4b64cd3de3 Add architecture function for retrieving the stack growth direction.
Also add corresponding implementation for x86.
2011-12-12 08:40:49 -05:00
Rene Gollent 673c1e4d07 Fix step out for recursive functions.
When asked to step out, we now store the frame pointer of the current
stack frame. Upon hitting our temporary breakpoint, we then verify that
the current frame pointer is in fact in the previous frame. If not, we
reinstate the breakpoint and continue running.
2011-12-11 22:32:42 -05:00
Rene Gollent 12b1aa817a Expose the stack pointer and frame pointer via CPUState. 2011-12-11 22:32:40 -05:00
Rene Gollent ebc0d47cc6 Add Debugger to Development package. 2011-12-11 20:59:43 -05:00
Rene Gollent cfb5f18de4 Correct signature mismatch that prevented this symbol from winding up
in the library properly. Fixes DEBUG build.
2011-12-11 19:33:27 -05:00
Rene Gollent 1394478206 This file had CR/LF line endings for some reason. 2011-12-11 19:31:17 -05:00
Rene Gollent d68053959e Flesh out DIESubprogram a bit more.
- Add accessor for return type.
- Implement DW_AT_artificial parsing.
- Store the subprogram's template parameters and provide accessors
  for them as well. Not used yet but will be handy later if/when we
  want to expose the instantiated types somewhere in the user
  interface when stepping into such a function.
2011-12-11 11:20:41 -05:00
Rene Gollent 2a8373704a Add missing initialization. 2011-12-10 22:53:19 -05:00
Rene Gollent 828294f3df Fix broken handling of nested namespaces.
- If multiple nested namespaces were involved in a name,
  GetFullyQualifiedDIEName() would erroneously wipe out each one
  as it walked up, leaving you with only the top level namespace.

- Don't touch the output parameter unless we're certain we succeeded.
2011-12-10 16:57:05 -05:00
Rene Gollent 216a2c7c89 Fix several broken instances of function name generation.
- Use the artificial attribute to more intelligently determine when to omit
parameters. Fixes the first parameter on static class functions being
skipped incorrectly.

- Correctly handle varargs functions.
2011-12-10 16:50:17 -05:00
Rene Gollent 03da60709c Implement handling of DW_AT_artificial for DIEFormalParameter. 2011-12-10 16:50:15 -05:00
Rene Gollent 9147ed0fd6 Remove obsolete TODO.
At least as far as I can tell, the template parameters are actually exported
as part of the DIESubprogram name itself, and don't need to be separately
retrieved.
2011-12-09 20:22:12 -05:00
Rene Gollent 11d60eaa36 Fix handling of modifiers.
When retrieving modifiers, we're actually pulling them off the type
in reverse order. Consequently we need to build the type's modifier string
similarly.

If the first modifier is a const, prepend it to type name instead.
2011-12-09 11:35:33 -05:00
Rene Gollent 309993503f Additional sanity checking.
Also ensure that the return parameter isn't touched unless we
definitely succeeded.
2011-12-08 17:10:10 -05:00
Rene Gollent 5f1b3713c0 Add support for parameters when building function names.
When asked for a fully qualified DIE name, we now add the parameters
of functions as well. This allows them to show up in, e.g. the function
list view. Still needs some work but basically functional.
2011-12-08 17:05:15 -05:00
Rene Gollent 6066a80794 Fix handling of variable specifications.
In the case of variables that refer to static members of compound types,
the specification will be a reference to a DIEMember rather than a
DIEVariable in DWARF3. Relax our restrictions accordingly.
2011-12-08 16:31:04 -05:00
Rene Gollent be63c91230 Fix incomplete/incorrect type lookup.
- Add accesor to CompoundType to expose the particular compound kind.

- Implement aforementioned accessor in DwarfCompoundType, and ensure
  DwarfTypeFactory populates it appropriately.

- Modify GlobalTypeLookup to make use of the address and compound
  subtype kinds when trying to match a type.

Due to the lack of matching against the subtype, we would previously wind
up matching anonymous compound types against those of their parents, resulting
in the wrong type getting assigned to their value nodes.

Fixes #8190.
2011-12-07 21:54:44 -05:00
Rene Gollent 4cc7fee152 Fix broken debug output. 2011-12-06 21:32:09 -05:00
Rene Gollent e0031e05f9 Merge branch 'master' of ssh://git.haiku-os.org/haiku 2011-12-06 21:27:45 -05:00
Rene Gollent 9dd2d63b15 - We now build up the argument list in a BStringList and map argv to those.
The previous solution had various issues where argv pointed to stack-based
  objects that had potentially been destroyed/overwritten already. Fixes
  #8173.

- Modify _SetupGDBArguments() to return an error code and check for it
  accordingly.
2011-12-06 20:07:06 -05:00
Rene Gollent c0954dc661 - We now build up the argument list in a BStringList and map argv to those.
The previous solution had various issues where argv pointed to stack-based
  objects that had potentially been destroyed/overwritten already. Fixes
  #8173.

- Modify _SetupGDBArguments() to return an error code and check for it
  accordingly.
2011-12-06 19:56:04 -05:00
Rene Gollent 82d09e800f Style fix, no functional change. 2011-11-30 16:16:42 -05:00
Rene Gollent 3f383c8ad7 Fix DebugAnalyzer build. 2011-11-30 11:56:36 -05:00
Rene Gollent fd651d785a Fix issues with child creation in BMessage nodes.
BMessageValueNode and BMessageFieldNode weren't correctly setting
the children created flag. This would result in duplicates of
some of the nodes showing up, especially in the case of nested messages.
2011-11-20 23:25:31 -05:00
Rene Gollent b07517d9ed Style fix. 2011-11-20 08:50:18 -05:00
Rene Gollent 11102e3848 Reworked GUI settings storage.
- Simplified things so each window simply records all its settings into
  a BMessage, which is what ultimately goes into the actual UI settings.

- Added settings storage/retrieval to the various sub views of the
  team window. This means that the column widths/positioning on all
  views hosting a column list view are now also preserved and restored.
2011-11-19 18:17:40 -05:00
Rene Gollent 79dbafbc66 Add GUI archiving utility functions to build. 2011-11-19 18:17:39 -05:00
Rene Gollent 1483288fe1 Simplify archiving functions. 2011-11-19 18:17:37 -05:00
Rene Gollent 258d8821ea Simplify GUITeamUISettings to be simply message-based. 2011-11-19 18:17:36 -05:00
Rene Gollent 29ca41d541 Add utility functions for saving/restoring the state of a Table.
For the time being, these are simple wrappers around BColumnListView's
{Save,Load}State() functions.
2011-11-19 18:17:34 -05:00
Rene Gollent 0c07f01eb6 Modify TeamWindow to use factored out archiving functions. 2011-11-19 18:17:33 -05:00
Rene Gollent 8314c36b58 Add GUISettingsUtils class to house settings utility functions. 2011-11-19 18:17:31 -05:00
Rene Gollent 23829e4e74 Adjust SaveSettings() to take into account split view method naming changes.
Remove unnecessary saving of collapsible property.
2011-11-17 09:12:49 -05:00
Rene Gollent 7b27c8fc41 Adjust method naming. 2011-11-17 09:12:47 -05:00
Rene Gollent 7449551dab Save/restore the collapsible and visible properties on the splitters as well. 2011-11-16 22:20:26 -05:00
Rene Gollent 6beb27d4a1 Add {Get,Set}ItemVisible() accessors and setters. 2011-11-16 22:19:02 -05:00
Rene Gollent 6d16dcfa0c Add GetCollapsible() accessor to BSplitView/Layout. 2011-11-16 21:43:35 -05:00
Rene Gollent 4c43e5395e Fix incorrect storage of breakpoints.
When a breakpoint is asked to archive itself to a message, ensure that
the message is empty before writing. Fixes breakpoints past the first one
being broken on restore due to each breakpoint archive containing
the combined settings of all previous breakpoints.
2011-11-14 18:49:53 -05:00
Rene Gollent 56f0b3baa9 Merge branch 'debugger' 2011-11-13 20:23:53 -05:00
Rene Gollent 72d140460d Remember the last source location path chosen by the user.
- When the user chooses the location of a source file via the file panel,
  we now preserve the file panel so it can remember its previous location
  when invoked again.

Resolves the other part of #8095.
2011-11-13 20:19:10 -05:00
Rene Gollent f7337f78ee Fixed intelligent file location services in Debugger.
- When adding files/directories into the file manager, we now also take care
  to add them to their respective parent entry lists as well. This allows the
  intelligent location functions to actually traverse directories to update
  all sibling/parent locations properly as needed.

- Slight changes to ensure that the implicit/explicit status of the location
  can be passed around throughout the process. Needed for the above to work.

Resolves the intelligent location portion of #8095.
2011-11-13 20:13:56 -05:00
Rene Gollent 221f5018b9 Revert part of r43166 that was included accidentally. This resulted in
incorrect behavior while processing certain kinds of messages, and
consequently deadlocks in some apps. Fixes #8101.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-11 23:39:02 +00:00
Rene Gollent 3e98fa97ed Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 15:40:29 +00:00
Rene Gollent ef319d7fc7 TeamDebugger's destructor must not assume that any of its heap allocations
have succeeded, since Init() can terminate early in a number of instances.
Resolves #8096.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 02:26:10 +00:00
Rene Gollent a2db8c5653 Truncate the message to locate the source path if it currently wouldn't fit within
the string view's bounds. Partially resolves #8094.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 02:10:35 +00:00
Rene Gollent 58f5b04b3b - Ensure that team and inspector window are locked when save/restoring settings.
- Don't allow QuitRequested() to terminate the TeamWindow directly. GraphicalUserInterface
  will (and must) do so in order to ensure that the window object is still around
  when calling SaveSettings() on it.

Should resolve #8091.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-07 01:47:20 +00:00
Rene Gollent 3b8c2d3aad Fix typo that was preventing the splitter between the thread list and stack trace view from being saved/restored properly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-06 18:20:21 +00:00
Rene Gollent 58ce0a2c12 When calculating the number of used pages for a get_system_info() request,
also include inactive pages. Fixes #7714.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 20:51:17 +00:00
Rene Gollent 85c30aeccb Remove extraneous code with respect to telling a menu to close which was
breaking various cases where menus coexisted in a window with a view which
was using event masks:
	- If one invoked the menu via, e.g. a BMenuField, and then tried to choose
	  an item on it, the mouse down would get captured, the menu would be
	  closed, and the mouse event would be thrown away without ever reaching
	  the event mask view.

	 - Furthermore, since the menu was told to terminate early, it would decide
	   that the user hadn't actually chosen that item (the escape key case),
	   and never actually invoke it.

Fixes the menu fields in the mouse preflet being broken.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43166 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-03 16:10:21 +00:00