summaryrefslogtreecommitdiff
path: root/src/pkg_view.cc
AgeCommit message (Collapse)AuthorFilesLines
2010-06-02Eliminate all uses of the global screen_width variable and use terminal ↵Daniel Burrows1-1/+4
objects instead. This doesn't totally convert the command-line code to using terminal objects for everything: I/O is still done by accessing stdout directly. But it does eliminate all dependencies on screen_width.
2009-02-23Add a --show-summary option that displays all the packages that would start ↵Daniel Burrows1-1/+2
a chain if all chains were displayed. Useful if you want to know "why is X on my system?"
2008-10-06Switch everything over to the new search code.Daniel Burrows1-11/+7
This loses a little functionality in some places. Searches that go item-by-item (e.g., curses "/") are broken for ?term matchers (and hence also bare strings), and searches that return string groups (e.g., "aptitude search" with a format pattern containing substring IDs, or the "pattern" grouping policy) don't work. But other than that, everything should work.
2008-06-29Split the core parsing code out from the rendering code and push it into ↵Daniel Burrows1-1/+1
generic/. This opens the possibility of using more appropriate rendering techniques in the command-line code rather than overloading fragments in that environment; this should perhaps be investigated in the future.
2008-04-09Make InfoAreaTabs default to "false".Daniel Burrows1-2/+2
The reason for this is that after a bit of use, I find that the tabs intrude visually between the short and long descriptions of a package. I'll reinstate them once cwidget has the ability to place tabs at the bottom of the multiplex.
2008-04-07Tweak the leaf pattern used when computing the "why" pane so that it ↵Daniel Burrows1-1/+3
displays useful results for removed and newly installed packages. The problem was that it was only looking at package versions that were currently installed / going-to-be-installed. Instead, this matches the current version of a package and the candiadte version (if the candidate will be installed).
2008-04-07When no package is selected, display an informative message in the "why" widget.Daniel Burrows1-1/+7
2008-04-07Display tabs in the description area (this can be turned off in the options).Daniel Burrows1-4/+22
The motivation is again to make it better-known that aptitude can display lots of information down there, but I'm a bit worried this will annoy users. I might end up moving them to the bottom of the screen or hiding them by default if people aren't happy with this change. (bottom-of-the-screen will require changes in cwidget)
2008-03-29Create an explicit menu entry for cycling the information display.Daniel Burrows1-0/+43
Hopefully this will make it a bit more obvious that the information display can be cycled; I have the general feeling that this is an "invisible" feature at the moment.
2008-02-14Add a variable-binding form and forms that consume and bind variables to ↵Daniel Burrows1-5/+7
arguments. This lets you search for things like "all packages x, y, and z such that x depends on y, y depends on z, and x depends on z", or "all packages x and y such that x depends on y and y recommends x". Documentation for the new features is not yet written. The core forms introduced are: ??x:MATCHER -> variable introduction; behave as MATCHER with x bound to the argument of MATCHER. ?x:TERM -> variable binding: instead of testing the implicit argument against TERM, test x. ?=x -> match only the package or package version x, which must be in scope. These probably need work: in particular, the first two seem to be easy to confuse and I'll probably change them to use syntaxes that are more distinct from each other.
2007-12-08Fix a crash that occurred when trying to flush the new packages list after ↵Daniel Burrows1-1/+6
installing/removing packages. (Closes: #454695, #454700) This may also account for other crashes that people have reported. The problem was this: the main view code very carefully avoided doing anything when it didn't have a package by (a) setting a flag to "false" when the cache was closed, and (b) checking that flag before trying to use the last package displayed to fill in information about a package. But it set the flag to "true" whenever any package was provided to set_package to fill out the fields, even an end-iterator. This happened during apt_close_cache(), *after* it had already set have_pkg to false. So it dutifully stored the end-iterators and set have_pkg to true. This wouldn't be a problem, except that end version iterators are specific to a cache file, so when the cache file was reloaded, they weren't end iterators any more and we tried to actually use them. --> *crash*
2007-11-30Make the fix for the potential crash actually work, hopefully.Daniel Burrows1-1/+1
2007-11-20Fix a potential crashing bug.Daniel Burrows1-5/+21
2007-11-15Fix through progress.Daniel Burrows1-9/+16
2007-11-15Uniformly rename many fragment-related names into cw::.Daniel Burrows1-16/+16
2007-11-15Collapse some redundant cwidget::cw/cw::cwidget.Daniel Burrows1-5/+5
2007-11-15Uniformly stop using widgets:: since I expect to get rid of it in the future ↵Daniel Burrows1-7/+7
(I'll patch this up with namespace tricks for now).
2007-11-15Drop unnecessary cw:: before hier_editor.Daniel Burrows1-4/+4
2007-11-15ref_ptr -> cwidget::util::ref_ptr.Daniel Burrows1-12/+12
2007-11-15Fix some duplicated type names that snuck in in a previous pass over the tree.Daniel Burrows1-1/+1
2007-11-15Uniformly replace widgets::X with cw::X in .cc files.Daniel Burrows1-55/+55
2007-11-15Consistently use cw::toplevel instead of toplevel::.Daniel Burrows1-2/+2
2007-11-15Pass over the source with sed to put global_bindings in config::.Daniel Burrows1-7/+7
2007-11-15Pass over the source tree with sed to eliminate a lot of the mindless ↵Daniel Burrows1-10/+10
search-and-replace I was having to do. (namespace aliases and cleanup are still needed)
2007-11-14First pass over the code.Daniel Burrows1-67/+67
This tree version is still BROKEN. This commit changes a bunch of code mechanically, and completely fixes all the subdirectories and files through download_screen in the top-level directory. Some unfortunate namespace choices in cwidget showed up here. widgets and config should probably be merged into the cwidget namespace, and I've created namespace aliases that pretend this happened as I go through the .cc files. Luckily, that change can largely be accounted for automatically.
2007-11-12Include cwidget/widgets/widget instead of vscreen/vscreen_widget.Daniel Burrows1-1/+1
2007-11-12Further cwidget transitions: change #include <vscreen/vs_*> to #include ↵Daniel Burrows1-5/+5
<cwidget/widgets/*>. The tree is now broken and will remain broken until the transition completes.
2007-10-30Properly thread pointers to the cache and the package records through match ↵Daniel Burrows1-1/+1
routines, so that matchers work from inside the cache while it's being initialized (e.g., in the garbage detection routine) instead of crashing.
2007-10-25Fix the Homepage support to not crash.Daniel Burrows1-10/+13
2007-10-25Fix the code so it compiles in the presence of a Homepage-enabled apt.Daniel Burrows1-2/+5
2007-10-24Add hypothetical support for homepages, once apt-pkg learns about them. ↵Daniel Burrows1-0/+12
(Closes: #445244) Once the support is in apt-pkg, I might want to revisit this and add code to, e.g., run epiphany on the homepage of a package.
2007-07-11Add the 'why' output as one of the views that gets cycled in the description ↵Daniel Burrows1-1/+75
area.
2007-07-10Remove a totally unused private member variable, so I don't look at it and ↵Daniel Burrows1-2/+1
go 'huh?' in the future.
2005-11-17[aptitude @ Hack around bug #339533 (Closes: #339648)]Daniel Burrows1-1/+3
2005-11-15[aptitude @ Use the new description-extraction routines instead of directly ↵Daniel Burrows1-10/+1
looking up the description.]
2005-11-05[aptitude @ Replace all uses of assert with eassert.]Daniel Burrows1-1/+1
2005-10-01[aptitude @ Import the Subversion repository into darcs.]Daniel Burrows1-0/+575