Commit Graph

5595 Commits

Author SHA1 Message Date
Ryan Leavengood
ab4e79c351 Fix Deskbar based on my recent menu change.
Thanks augiedoggie for pointing it out.
2012-08-03 01:58:41 -04:00
Ryan Leavengood
477a6b7bfb What if Magnify displayed a hex color instead of a useless index?
Well now it does.

The code needs much more love, but I fixed the coding violations in this code I
touched.
2012-08-03 00:09:08 -04:00
Ryan Leavengood
16e4281d0a Remove the no longer needed hack from WebPositive. 2012-08-02 23:25:29 -04:00
Alex Smith
e6b3188fcb Merge branch 'master' into x86_64 2012-08-01 10:44:38 +01:00
John Scipione
7d404dbcae Rename the angle mode menu items to just 'Radians' and 'Degrees'. No reason for the word Mode. 2012-07-31 09:37:08 -04:00
John Scipione
fa37d94d1b Fix radian/degree mode toggling bug in Deskcalc
I overlooked this problem in my last commit...

If you select the current angle (radian/degree) mode from the menu
it toggles the angle mode, fixed this to make it keep the current
mode.
2012-07-31 08:01:32 -04:00
Alex Smith
d4ec857af3 Merge branch 'master' into x86_64 2012-07-31 12:10:24 +01:00
John Scipione
8ffd0477dd Implement degree mode in DeskCalc.
Default is radian mode,  You set the option in the right click menu
like the other options.

Note: degree mode does not affect hyperbolic trigonometric functions.
This is how Mac Calculator, Windows Calculator, and Google Calculator
work.
2012-07-30 22:35:57 -04:00
Alex Smith
e27109c167 Merge branch 'master' into x86_64 2012-07-30 08:24:31 +01:00
Ryan Leavengood
45ecce1d57 Fix #6978: Add and close tabs on middle mouse down, not up.
This reduces perceived latency. One day when I add a tab close undo stack, this
will be even better. But generally using the middle mouse button is not
accidental.
2012-07-29 22:25:45 -04:00
Ryan Leavengood
cc467a28d9 Remove .swp file, and add a rule to ignore them in .gitignore. 2012-07-29 22:06:53 -04:00
Ryan Leavengood
f893514b87 Remove custom Zoom method from Web+ which goes fullscreen.
This leaves the default BWindow behavior of a maximized window.

Alt-Enter and F11 still will go fullscreen.

Fixes #7966.
2012-07-29 21:13:09 -04:00
Rene Gollent
224f75100b Implement support for separate debug info files.
- When loading an image, we now check if it has a .gnu_debuglink section.
  If so, we try to load the linked file for our symbolic debugging information.
  The file is searched for with the following rules:
    1) If self-contained app, app image is looked for in ./debug while
       library/add-on images are looked for in ../debug/.
    2) If the image in question is in one of the global locations
       (/boot/{common,system,home/config}/{lib,add-ons}), we search
       in develop/debug for the corresponding global dir.

  Implements #8135.
2012-07-29 07:12:49 -04:00
Humdinger
200dec066f Adjust strings to the Haiku style. 2012-07-29 10:47:10 +02:00
Alex Smith
6e2f6d1ace Changed cookie type for get_next_area_info() to ssize_t.
The cookie is used to store the base address of the area that was just
visited. On 64-bit systems, int32 is not sufficient. Therefore, changed
to ssize_t which retains compatibility on x86 while expanding to a
sufficient size on x86_64.
2012-07-29 09:31:14 +01:00
John Scipione
1510ac0081 Refactor icon scaling, fix off-by-one error.
Refactor the icon scaling code in IconUtils.cpp to avoid code
duplication. Basically create and delete the temp bitmap to
convert from B_CMAP8 to B_RGBA32 for scale2x/scale3x/scale4x
just one time instead of 3.

There was an off-by-one error in Deskbar which was causing
it to scale up the 16x16 Bitmap icon to 32x32 instead of just
using the 32x32 icon. This only affected BeOS bitmap-based
icons, not Haiku HVIF icons.
2012-07-28 22:00:22 -04:00
Ingo Weinhold
d266c87d17 Debugger: CliContext: Introduce the notion of events
* The input loop can now wait on abstract events, which other threads
  (or even the input loop thread itself) can signal.
* Use the new mechanism in QuitSession().
* Also (with the exception of the SIGINT part) implement
  WaitForThreadOrUser().
2012-07-29 00:28:56 +02:00
Ingo Weinhold
4d8eaa5b11 Debugger: UserInterface.h: style cleanup 2012-07-29 00:28:56 +02:00
Ingo Weinhold
726d557c9e Debugger CLI: Wait for TeamDebugger thread to die before exit() 2012-07-29 00:28:56 +02:00
Ingo Weinhold
8fe9f8b2d0 Debugger CLI: Move more stuff to and extend CliContext
* Move the libedit interface there and provide nicer to use methods.
* Also start adding utility methods for the input loop. It is going to
  manage all interactions of the input loop with outside events.
* Fix the "quit" command. The user is now prompted what to do with the
  debugged team and the input loop thread avoids reentering the input
  loop.
2012-07-27 23:42:01 +02:00
Ingo Weinhold
eba38eb503 Debugger: Change user interface quit and ask user semantics
* UserInterface::SynchronouslyAskUser() is now allowed to return -1 to
  indicate that the user cannot be asked at this point for whatever
  reason. The caller needs to handle that case.
* UserInterfaceListener::UserInterfaceQuitRequested(): Add new parameter
  "quitOption" to specify what is supposed to happen. The previous
  behavior (ask user) is only one of the options. The others are to kill
  the debugged team or to resume it.
2012-07-27 23:42:01 +02:00
Ingo Weinhold
f58478507c Debugger: In CLI mode block SIGINT in all threads
It is supposed to be handled in the input loop thread only (eventually).
2012-07-27 23:42:00 +02:00
Ingo Weinhold
71e5d26b5f Debugger: Add utility class SignalSet 2012-07-27 23:42:00 +02:00
Philippe Houdoin
47b44bbedb Fix SerialConnect gcc4 build. 2012-07-26 23:55:39 +02:00
Philippe Houdoin
a3b73ff9d1 Fix insets 2012-07-26 23:31:57 +02:00
Adrien Destugues - PulkoMandy
a2021beee2 Fix display for basic stuff. 2012-07-26 23:16:47 +02:00
Niels Sascha Reedijk
aabe9c1b92 Generate translation catalogs for WebPositive
Change suggested by Rene Gollent
2012-07-26 17:06:35 +02:00
Adrien Destugues - PulkoMandy
f441fd03b6 Working serial connection.
Still need some work on displaying the right chars at the right place.
2012-07-25 23:24:22 +02:00
Humdinger
bed0d7384b Pulling declarations back into loop, plus small style change.
Pointed out by Jérô and John. Thanks,
2012-07-25 20:24:00 +02:00
Humdinger
48249b2064 Stylefixes, no functional change. 2012-07-25 19:16:11 +02:00
Humdinger
a736c8aa6b Patch by x-ist, thanks! Fixes non-terminating ReplaceAll, #8141. 2012-07-25 18:48:24 +02:00
Rene Gollent
542ee07706 Slight cleanup of previous commit. 2012-07-24 19:23:39 -04:00
Rene Gollent
003dedca93 Fix #8768.
- When invoking ProcessController's menu, we now only show the "Live in Deskbar"
  menu item if we're either running within Deskbar itself or from PC's standalone
  window. This allows replicant PC instances to be usable in the case where
  Deskbar is deadlocked for whatever reason (previously it would hang while trying
  to query for the deskbar item's presence/status).
2012-07-24 19:09:53 -04:00
Fredrik Modéen
e2c343a22a Fixing #6913.
* Checking and setting a default value if both icon and text are false.
2012-07-25 00:49:30 +00:00
Ingo Weinhold
aacf2782d8 Debugger: Switch from readline to libedit 2012-07-25 00:11:14 +02:00
Ingo Weinhold
f4b1ddb580 Debugger: Coding style: normalize naming, some whitespace fixes
* TeamUISettings[Factory] -> TeamUiSettings[Factory]
* GUITeamUISettings -> GuiTeamUiSettings
* GUISettingsUtils -> GuiSettingsUtils
2012-07-24 00:28:37 +02:00
Fredrik Modéen
1615cec9cc Fixing #7984 and some code guidelines. 2012-07-24 00:07:19 +00:00
Ingo Weinhold
48b4d20480 Debugger CLI: Add "threads" command
It just lists the team's thread.
2012-07-23 23:52:46 +02:00
Ingo Weinhold
533a73766d Debugger: Create UiUtils helper class
Currently only a method to get a description for a thread state lives
there (code pulled from ThreadListView).
2012-07-23 23:52:46 +02:00
Ingo Weinhold
a6de32b06c Debugger CLI: Pull QuitCommand out of CommandLineUserInterface 2012-07-23 23:52:46 +02:00
Ingo Weinhold
d0ef75400b Debugger CLI: Start to imbue CliContext with life 2012-07-23 23:52:45 +02:00
Ingo Weinhold
abbcb2caf5 Debugger: Use readline in the CLI
This is a bit hacky, since gdb's readline is used. It would probably be
best to prepare an optional build package.
2012-07-23 23:52:45 +02:00
Adrien Destugues - PulkoMandy
dae0a4e0ab WIP version of SerialConnect. Not working, but added to the tree anyway so :
* You can code review it
 * You can help developping
Uses libvterm as the backend for parsing ANSI escape sequences. The lib was
changed slightly to build with GCC2. It could be used by Terminal as well as
it seems cleaner and more reliable than our current parser.
2012-07-23 21:36:40 +02:00
Philippe Saint-Pierre
b6a70ecba9 ProcessController: fix display of CPU bars for systems having 3 cores
Generalize the drawing of separator lines for every number of cores
requesting them.

Fix the layout for 3 cores systems.

Should fix #8763.
2012-07-23 10:16:37 -04:00
John Scipione
8cf6d28f99 It is okay to delete dragMessage even if it is NULL. Not worth the branch. 2012-07-22 16:00:21 -04:00
John Scipione
8f29b6e639 indent break statements. Only delete dragMessage if not NULL. 2012-07-22 16:00:21 -04:00
John Scipione
47a394ec13 Replace calls to DragRegion() with fDragRegion avoiding a function call. Move variables in MouseMoved down to just before they are used. 2012-07-22 16:00:20 -04:00
Rene Gollent
d7ed9414a3 Fix #8523.
- When the message filter would receive and process a mouse moved message,
  if the message resulted in causing the deskbar to relocate or reorient
  itself, it was possible for the expando view to become detached from
  the looper. Consequently, if the intercepted mouse moved happened to have
  come from the latter, when returning out of the filter the view would no
  longer have a target looper, triggering a debugger condition in BLooper.
  In order to prevent this situation, we now dispatch a message asking for
  the layout change to occur asynchronously.
2012-07-22 15:53:19 -04:00
Rene Gollent
55d6e32c7d Fix name generation for void pointer parameters. 2012-07-21 17:34:31 -04:00
Michael Lotz
7050e3cd84 Fix wrong assignment. CID 702303. 2012-07-21 19:27:06 +02:00
Philippe Saint-Pierre
5cf20610e1 FontDemo: Further cleanup
the strlen was used also in _AddShapes.  Widen use of BString.

Sorry for the noise!
2012-07-21 12:58:05 -04:00
Philippe Saint-Pierre
c5e8e32acd FontDemo: Cleanup of previous UTF-8 compliancy fix
Avoid using the private API, rather use the public BString. Thanks mmlr.
2012-07-21 12:23:18 -04:00
Philippe Saint-Pierre
6b0362305f FontDemo: make it multibyte chars compliant (UTF-8)
fixes #8146.
2012-07-21 11:17:41 -04:00
Ingo Weinhold
0a592099a9 Debugger: Rework CLI setup to no longer create a BApplication
The main thread does now serve the CLI input loop.
2012-07-21 09:19:18 +02:00
Philippe Saint-Pierre
cd383c3378 CID 610802: Unchecked return of FindMessage() 2012-07-20 18:31:43 -04:00
Philippe Saint-Pierre
c6df3cf4dc CID 702244: Uninit members were never used 2012-07-20 18:31:42 -04:00
Philippe Saint-Pierre
739ed61c38 CID 709703: Order of ops was unclear, but insignificant 2012-07-20 18:31:42 -04:00
Ingo Weinhold
6d60b554e6 Debugger: Some basic work to get the CLI going
There's an input loop thread which reads and parses command lines and
the infrastructure for registering and executing commands. Currently
only "help" and "quit" commands are implemented.
2012-07-20 23:32:58 +02:00
Ingo Weinhold
0f1f968ffb Debugger: Actually create the CLI, if requested 2012-07-20 23:32:58 +02:00
Philippe Saint-Pierre
fc4d98a2c0 Coding style fixes, no functionnal changes.
Following comments from Axel about a previous commit of mine.  Sorry Axel for the delay.
2012-07-20 14:28:44 -04:00
Rene Gollent
fe0407cd46 Fix indentation. 2012-07-20 07:34:11 -04:00
Rene Gollent
1f80f2eec3 Fix #8749.
- When a job needs to go dependent on another job, we no longer use recursion
  to manage the execution stack. Instead the job is simply marked as waiting
  and we execute other jobs with no dependencies in the meantime. When a job
  completes, all dependents are moved back onto the unscheduled list and
  executed as needed.

- Adjustments to ResolveValueNodeJob to handle the now asynchronous nature
  of waiting.
2012-07-19 20:24:52 -04:00
Rene Gollent
3a5779744e Handle compound node values in variables view.
- If the node we're looking at is a compound node, retrieve its location
  and show that as the value with an indicator to clarify that it's an object.

- Minor tweaks to tooltip format.
- Style cleanups.
2012-07-18 18:44:56 -04:00
Rene Gollent
666222d3fd Resolve register names, print memory piece size information. 2012-07-18 18:44:55 -04:00
Rene Gollent
2216ccb7e2 Implement support for tooltips in VariableView. Implements #8286.
- These show the memory or register location(s) of the variable over which
  the mouse is hovering.
2012-07-18 18:44:54 -04:00
Rene Gollent
489cc35661 Add Tooltip support to TreeTable. 2012-07-18 18:44:53 -04:00
Alex Wilson
3bbf781c1a Fix #8706 in Poorman - Selecting a web dir
There is no 'name' entry in the message from a B_OPEN_PANEL BFilePanel.
Also fix a little memory leak along the way.
2012-07-16 14:59:38 +12:00
Alex Wilson
0a96da93d1 Fix style on inline methods in PoorMan. 2012-07-16 14:59:36 +12:00
Alex Wilson
c5a09a88e9 In PoorMan: use templatized layout builders.
Also clean up layout a bit.
2012-07-16 14:59:35 +12:00
Alex Wilson
a1ae802279 Convert Poorman to use the Layout API.
Also includes many style fixes.

This patch was done by tokyo6pm, and then updated by mks after changes
to Poorman broke the patch.

ticket: #3787
2012-07-16 14:59:33 +12:00
Rene Gollent
8c4773f75b Adjust address semantics of CStringValueNode.
- When resolving its value, CStringValueNode now sets its node child's
  address to the address of the string buffer rather than the location of
  the originating pointer, which allows things like Inspect to pick that up.
2012-07-15 15:48:07 -04:00
Rene Gollent
17ef26a9f8 Add inspection context menu action.
- TableCellContextMenuTracker now supports menus that don't have a settings
  submenu, since some variables won't have renderer settings but will still
  have context actions.

- Add _GetContextActionsForNode() to retrieve the list of contextual actions
  available for a given model node. Currently this is only adds an action
  to inspect the memory address of the highlighted value, but will be extended
  for other actions later.
2012-07-15 14:34:56 -04:00
Rene Gollent
ae8018310a Set default target in PrepareToShow(). 2012-07-15 14:34:34 -04:00
Rene Gollent
544a66de68 Extend MSG_SHOW_INSPECTOR_WINDOW to allow specifying an initial address. 2012-07-15 14:34:33 -04:00
Rene Gollent
0712121cdb Add support for actions to TableCellContextMenuTracker.
- VariablesView's context menu tracker now optionally accepts contextual
  actions to add to the menu in addition to the current renderer settings.
2012-07-15 14:34:32 -04:00
Rene Gollent
8293199831 Add definition for a general-purpose action menu item. 2012-07-15 14:34:31 -04:00
Rene Gollent
6faa3c9766 Fix #8729.
- If we're asked to generate an entry for a tag we don't recognize,
  return an error so don't then attempt to add a null/invalid entry into the
  compilation unit's entry list and later crash dereferencing it.
2012-07-14 12:09:11 -04:00
Rene Gollent
c163f973e6 Fix resource leak in error cases. CID 611238. 2012-07-14 11:24:22 -04:00
Rene Gollent
2a8e9bb83d Fix missing break statement. CID 611232. 2012-07-14 10:40:44 -04:00
Rene Gollent
c22cb42c69 Clean up dead code. CID 611306. 2012-07-14 10:37:25 -04:00
Rene Gollent
89149ce667 Extend IntegerFormatter to handle non-hexadecimal properly.
- When asking for signed/unsigned, IntegerFormatter was previously
  treating all value types as int64, which would result in much larger
  than expected values in the variable list in some cases. Inspect the actual
  integer type of the variable and adjust the format string accordingly in
  order to deal with that.
2012-07-13 21:04:50 -04:00
Rene Gollent
f55410e169 Fix uninitialized member variable.
- This would randomly prevent the inspector window from being usable
  since we wouldn't create it, thinking it already existed.
2012-07-13 19:49:07 -04:00
Rene Gollent
d826a252c1 Cleanup, no functional change. 2012-07-13 18:24:57 -04:00
Rene Gollent
95453175cd Fix other part of #8710.
- When binary searching functions in the source entry list,
  comparing by name and location alone isn't sufficient, since
  templates will match those for different instances, Fixes a crash on
  exit where the wrong function would get removed from the list, while
  the one we actually wanted to remove was still in the list, but then
  had its source code cleared. This would later crash the comparison
  function due to not being able to get its source location.
2012-07-11 23:39:17 -04:00
Rene Gollent
aeadcf457d Partially fix #8710.
- When an image was unloaded, its corresponding image info was never
  removed from TeamDebugInfo's list, leading to the latter containing
  a deleted object, resulting in various random crashes.
2012-07-11 23:37:36 -04:00
Rene Gollent
c4120026a5 Refactor previous commit.
- Keep knowledge of the existence and need to search the different
  frame sections contained within DwarfFile.
2012-07-11 21:56:15 -04:00
Rene Gollent
dfa21dfeab Fix #8508.
- When attempting to unwind the call frame, we now search for the appropriate
  FDE in both .debug_frame and .eh_frame. This mirrors gdb's behavior and
  works around the ever-changing whims of the gcc developers as to which
  section the requisite FDE/CIE resides in.
2012-07-11 19:12:59 -04:00
Alexandre Deckner
2218c029a5 Add localization support to WebPositive, patch by Humdinger
* Includes style fixes
* Functional fixes by myself, patch wouldn't build
2012-07-12 00:47:46 +02:00
Alexandre Deckner
41a212d241 Update haiku-webkit build package. Use new version info 2012-07-11 22:43:22 +02:00
Rene Gollent
3691496222 Fix #8709.
- The buffer that the debugger used to retrieve messages from
  the debug port was slightly too small for the largest of the message
  data structs (currently 1100 bytes), causing some types of debug events
  to get truncated. This resulted in image creation/deletion events being
  received with a truncated image_info struct, which would result in several
  fields being returned with random values, most notably the text/data base
  and size fields. Consequently, searching those images for an address within
  them would fail, leading to #8709. It's possible but not yet confirmed
  that this bug is also responsible for #8710, need to test further.
2012-07-10 22:06:01 -04:00
Adam Hartford
8522ef247b Fixed minor UI issues in Screenshot (Ticket #8378)
Signed-off-by: Alex Wilson <yourpalal2@gmail.com>
2012-07-09 11:03:35 +12:00
Alexandre Deckner
d061a70095 Fix WebPositive jamfile, cross building works 2012-07-04 02:57:38 +02:00
Alexandre Deckner
40c493ce34 Hardcode kSVNRevision = 0 until i adapt version tracking 2012-07-04 01:18:37 +02:00
Alexandre Deckner
c4ba387bf8 Adapt WebPositive build to make use of a webkit optional build package 2012-07-04 00:58:25 +02:00
Alexandre Deckner
79adea9689 Fix src/apps/Jamfile alphabetical order
Thanks augiedoggie
2012-07-03 21:46:13 +02:00
Alexandre Deckner
08cada49a6 Apply old patch by AnevilYak, fix BMenuField border drawing
Should have been part of the previous commit, sorry
2012-07-03 21:43:53 +02:00
Alexandre Deckner
7f21f81f4f Apply old patch by AnevilYak, fix BMenuField border drawing 2012-07-03 21:31:18 +02:00
Alexandre Deckner
2ee4319d11 Remove unneeded includes 2012-07-03 21:29:38 +02:00
Alexandre Deckner
1ef59aee8e Add Jamfile for WebPositive 2012-07-03 21:12:20 +02:00
Alexandre Deckner
de3c221462 Merge WebPositive into the Haiku tree. History is preserved 2012-07-03 19:20:10 +02:00
aldeck
a79446f471 * B_TRANSLATE_CONTEXT is now B_TRANSLATION_CONTEXT as per the recent change in Haiku, cf. hrev44041
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@587 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:33 +02:00
anevilyak
b4bab54a16 Be more specific about how we check the modifiers mask.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@586 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:33 +02:00
anevilyak
6c086bdf6a Don't try to filter any of these keys if modifiers are pressed. Fixes
Web+ eating things like the workspace switching shortcuts if the URL input
group happened to have focus.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@585 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:33 +02:00
leavengood
ae5b937ac2 Make the check for URLs more generic before doing a search.
Thanks for the suggestion mmlr.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@580 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:33 +02:00
leavengood
c17922668b Don't do the "smart URL handling" (also known as dumb URL handling) for file:// URLs.
Fixes #7596.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@579 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:33 +02:00
phoudoin
56b050f337 * Don't trust anymore provided MIME type (if any): use instead
the registrar's type guessing feature, which we can (and should) trust
way more.
* Notify back the download objet when it's file location has changed.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@577 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
phoudoin
1ef6069fe4 Fix why escape wasn't closing the find panel as expected (#75).
Fix fullscreen icon layout spacing issue (#76).

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@576 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
leavengood
552778e90c Align the tabs menu by using AttachedToWindow. Somewhat of a hack and I swear
InvalidateLayout worked before, but it does not seem to now.

Also use a const for an empty BString instead of returning a local for the tab
label.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@573 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
leavengood
255cade7a0 Use the loader page in the settings directory which handles the case when no
welcome page is installed (such as nightlies.)

To do: not hard-coding the settings directory.

Fixes Haiku bug #6869.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@572 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
leavengood
1af1ea8546 Implement #35: Add a tab menu. Still needs icons but this works for now.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@569 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
leavengood
1220bcc0af Add a setting to show or hide the Home button. I find it pretty useless myself.
While I was able to add this fairly easily by cutting and pasting, it was still
quite a bit of work. Seems like there should be a less-verbose way of doing
this. But it did work the first time I tested, so I can't complain too much.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@566 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:32 +02:00
leavengood
0afc39c5b1 Ticket #69. Update the icon from tweaks made by Meanwhile. Thanks!
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@565 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
a65490807d Mostly revert r563 and fix it properly. The ESC key should be dispatched to the
text view from the filter as well as from the browser window.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@564 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
a9112961b9 Restore the original URL text when the escape key is pressed.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@563 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
927bc248a3 Only use the scrollview if it is needed (to avoid the problem of a useless
disabled scrollbar.)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@562 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
36badc2d94 Add a scrollview (with associated resizing trickery to cut-off the sides of the
scrollbar) to the auto-complete list. This now also makes the scrollwheel work
but selection by mouse still needs implementing.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@561 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
675a92e060 Implement http://webpositive.haiku-os.org/ticket/61 so that holding the command
key and using the scroll wheel will zoom in and out. Also made it so that the
scroll wheel only works when the mouse is over the view.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@560 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
ac09a47296 Make the max tab width always 300px instead of being proportional to the label
text. I think a consistent tab size is more important. Also made the minimum a
little smaller (60px.)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@559 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
c5efa2c0b9 Use the more conventional Google search URL, not the "Instant" one.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@558 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
1526be737a Add a stupidly simple "search Google from the URL bar" feature, a la Chrome.
It still needs a lot but this doesn't seem to break anything and it already is
making my browsing more productive. The hard-coding of Google will be fixed
when some proper search engine provider handling is added.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@557 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
530dea0f16 Let the controller handle setting the default tool tip for the tab bar so it
knows the state changed. A good example of where using a controller-based
design can't be done halfway. It took me way too long to debug this (that
mostly being my fault.)

Fixes #6382.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@556 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
8d1fc88170 As indicated by Axel the border width for positioning the download window was
hard-coded. This fixes that and refactors the code a bit.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@555 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
290dc11464 Make the default location for the download window the lower right corner of
screen, like NetPositive.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@554 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:31 +02:00
leavengood
8ee88f9b6d Show the status bar and therefore the progress bar even in fullscreen mode when
a page is loading.

Fixes #6086.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@551 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
leavengood
f0db6a3bb1 Don't try to load a blank URL for a new page.
Fixes #6430.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@550 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
leavengood
8c15e23385 Set the tab label to the URL if no title is provided in the HTML.
Fixes #6330.

And so I'm back on Web+ development. Yay.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@549 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
anevilyak
26bc163200 Layout fixes that hadn't yet been committed.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@548 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
anevilyak
0e12634991 Fix BrowserWindow to work with new layout changes.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@544 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
stippi
a071b4d041 Adapt to recent layout API changes. (Untested)
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@543 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
anevilyak
a4841f3a5d Apply patch by Matt Madia: Add the escape key as a shortcut to stop page loads. Closes ticket #6409.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@541 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:30 +02:00
stippi
e71c5717b1 Account for the fact that the visible frame of a tab is one pixel larger at
the bottom. Will fix Haiku ticket #6383 when a new package is made available.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@539 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:29 +02:00
anevilyak
01abe0e23c Fix Web+ build for this morning's locale changes/cleanups.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@537 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:45:29 +02:00
anevilyak
0c93869115 Fix style violation.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@532 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:46 +02:00
anevilyak
7f88e2461b When asked to programmatically open a new URL (i.e. by being launched from another app), give the resulting web view input focus.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@531 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:46 +02:00
anevilyak
aef38397d3 Fix crash that occurred when hitting pgup/pgdn in the URL input without having the choice list visible.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@530 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:46 +02:00
anevilyak
ef6778d11e Fix building Web+ against updated locale kit (currently requires manually placing liblocalestub.a from Haiku's build tree)
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@527 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:21 +02:00
stippi
fdd4f3bbb8 Add the static items at Bookmark menu construction, so the shortcuts work even
when the menu has never been opened yet.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@526 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:12 +02:00
stippi
054e7e4344 Make sure the interface is showing when the menus are used (i.e. by invoking
Cmd-Esc shortcut).

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@524 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:12 +02:00
stippi
d848a89394 Changed download short cut from J to D, as all the rest of the shortcuts make
more sense and don't necessarily follow Firefox conventions.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@523 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:12 +02:00
stippi
ed0c70c14d * Small cleanups.
* Make sure that the BWebView for which a notification is received still exists.
  This affected only the title changed notification, for which this was already
  checked, and the icon received notification, which could actually lead to
  a crash if the tab was closed before receiving the notification.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@522 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:12 +02:00
anevilyak
591220f9b2 When disabling auto-hide, if the interface was currently still hidden, it wouldn't be restored, Closes ticket #6098.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@521 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:12 +02:00
stippi
4a09831444 When the expected size of a download is unknown, at least set the progress
bar to 100% when it finished.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@519 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
a933ccf28d When a download starts, do not start node monitoring the path while it is still
pointing to the containing folder. Fixes ticket #62.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@518 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
82117cd7eb Added "View->Page source" feature. For local files, it will open the file in the
preferred app for text/x-source-code. For remote pages, it will save a temporary
file and open the editor with that.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@517 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
807ee4b477 Revert the default of the Auto-hide mouse pointer setting, by popular request.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@515 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
3a3173e8cb Set a tool-tip for the area outside of any tabs.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@514 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
8a48f074d8 Handle B_RETURN and B_ESCAPE when the Find text control has focus. Refactored
the code to visibly invoke a BButton and use it to show the respective buttons
go down in the Find group.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@513 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
fb03e2c573 * When downloads are still in progress, warn the user when the app quits and
allow to continue downloading.
* If the Downloads window is the only window, minimize on close instead of
  hiding without any way to get the window back.
* Added menu item "New browser window" to Downloads window.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@512 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
02a2ef1969 * Small refactoring for retrieving the URL for a new tab.
* Load new files into the current tab, if the URL of that tab is either empty
  or the URL for new tabs, instead of always opening a new tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@511 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
11365e77e8 Added Home button... by popular request. Will perhaps make it a setting.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@510 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
795b44ebe6 F11 -> Toggle fullscreen
F5  ->  Reload page. (Ticket #56)

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@509 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
0953daf31f "Manage Bookmarks" shortcut is now Cmd-M. Closed ticket #38.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@508 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:11 +02:00
stippi
86007edfa7 Use Cmd-J for hiding the downloads window. (Ticket #37)
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@507 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
e979801bf7 Introduced --fullscreen and -f command line options.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@506 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
f94d5e2800 Don't store the last window frame with the full-screen window size...
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@505 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
af7e6dd1a4 Display tool tips for browser tabs with the page title.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@504 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
402459960e Fix empty URL input bar when switching to a tab after it loaded in the
background.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@503 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
1f009b1e11 Tweaked the delays for the auto-hiding of the mouse pointer and the interface
in full-screen mode.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@502 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
37876e4b33 Extend the auto-completion framework in order to support using page-up/down
to navigate the choices list.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@501 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
90a69c8e1d The mechanism with which the TextViewCompleter detected changes (attaching a
BMessageFilter to the BTextView to pre-process key down events) missed changes
to the BTextView via other means, for example by pasting, or simply when
SetText() is invoked on the BTextView. -> Introduced an alternative method
of making the TextViewCompleter aware of changes, by invoking new method
TextModified(). To bypass the old method, one has to call
SetModificationsReported(true). URLInput::URLTextView now uses the new method
in InsertText() and DeleteText(), which catches any and all changes to the
text. Since the BAutoCompleter framework also controls the editor view contents,
it needs to protect against re-entering some methods when the editor view
reports the changes (fIgnoreEditViewStateChanges). Since we want the
BAutoCompleter to always be aware of the current editor view contents, but not
necessarily also running the choice mechanism (i.e. when you enter
"www.google.com", you don't want the auto-completion kick back in when it is
programmatically changed to "http://www.google.com" later on), the
EditViewStateChange() method gets a boolean now "updateChoices". All
programmatic changes to the URL will then not trigger displaying the choice
pop-up, but the BAutoCompleter is always aware of the current editor view
contents.

All this fixes numerous issues and inconsistencies with entering text in the
URL text view.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@500 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
eb44597cd0 Revert r250, since CMD-0 for changing to the tenth tab conflicts with the
shortcut for resetting the page zoom, but that is also an established shortcut
from Firefox.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@499 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
0e42079313 Remember the current URL input contents and selection when switching away from
a tab, and restore them when switching back.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@498 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
208ecbcad5 * Moved auto-hiding the mouse pointer into BWebView::Pulse().
* Unhide the interface when the user invokes CMD-L (Open location).
* Make sure the progress bar is really hidden, sometimes it would be
  visible again after unhiding the rest of the interface.
* Added a setting for the auto-hiding the mouse pointer feature. It defaults
  to true, since I think it's useful for an app where the pointer would
  usually be in the way.
* Hide the mouse pointer in any case as soon as the user begins typing, also
  hide potentially showing tool tips in that case.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@496 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:10 +02:00
stippi
59b99c1229 Upated to use new B_TRANSLATE macros. Rene also send me a patch for this
(thanks!), but I've redone it to keep the 80 char/line limit.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@493 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
17813bda8c Do not advertize support for types we don't actually support. These are handled
by the urlwrapper anyway.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@489 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
e07fc6b71d * Changed the implementation of context menus in DownloadProgressViews. The views
were intercepting mouse messages even if the window was not showing. Now
  secondary clicks are intercepted in DownloadWindow and the target view is found,
  which makes this much cheaper.
* Offset context menus by 2 pixels, so the mouse does not start directly over
  an item.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@488 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
e7c6e9f747 Reset the page icon in the URL input for new tabs.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@487 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
ea40bbf2d1 * Moved "Auto-hide" menu item into Settings window, as a check box along the
"show tabs if single page only" option.
* Fixed problems with showing tabs when opening new tabs while the interface
  was hidden. Introduced a new flag which tracks the hidden state to make
  this easier.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@486 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
c2227feb1e Implemented an "auto-hide the interface" feature for the full-screen mode. The
mouse cursor will automatically hide if you don't move it, unless it's over the
interface. The interface will disappear after three seconds if the cursor is
not above it. It will re-appear when you touch the top of the screen with the
mouse. I find this the best solution, since the mouse is also used for
navigation in the page, and showing the interface based on some virtual area
of the interface would just get in the way.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@485 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
c0f79c0321 Added button besides main menu bar which is only visible in fullscreen mode and
allows to go back to window'ed mode. The icon is the window icon which Deskbar
uses also.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@484 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:09 +02:00
stippi
095c4241ef Moved BitmapButton into it's own file.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@483 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:44:03 +02:00
stippi
f157030d2e Implemented most basic fullscreen feature.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@482 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:56 +02:00
stippi
9a6307059a Moved handling/display of "main site error" alert into client.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@481 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:56 +02:00
stippi
9adbaa4378 Removed unneeded headers.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@480 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:56 +02:00
stippi
27dab3e5fe Make sure never to draw the favicon too big, in case we only got a big one from
the page, and use the proper drawing mode and filtering.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@479 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:56 +02:00
stippi
9f30678a67 Implemented a CredentialsStorage class with optional persistency. Two global
objects are used for session and persistent storage of credentials with the
appropriate locking. Passwords are stored on disk insecurely. If the user
uses the checkmark in the authentication window to remember the credentials,
the persistent storage will be used, otherwise the session storage. In another
words, even if not asked to remember the credentials, the same user/pass never
needs to be entered more than once per session, unlike before. WebCore already
contains a CredentialStorage class, but we don't use it. It could be used via
the CURL networking backend implementation, only the CF backend uses it at all.
Since we don't have a "keyring" OS level service, this solution was more
convenient for the time being.

Note all this has nothing to do with storage of form data entered by the user.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@478 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:51 +02:00
stippi
ea992272d7 Added a few utility classes from Haiku. To be removed when WebPositive moves
into Haiku. Added new file HashKeys.h which implements commonly used HashKey
classes. Additionally to the ones found in HashMap.h, it has a HashKeyString
class, which wraps a BString and provides the GetHashCode() method.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@477 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
1a2246ccf9 Avoid loading the start page before loading the requested URL in new windows
by passing the url to the constructor already.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@476 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
d5c4471790 * Fixed double click outside tabs to only be recognized when the first click
was outside as well.
* Single tertiary click outside tabs opens new tab on mouse up.
* Reset fClickCount always when the click was inside a tab.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@474 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
b9d4b634f6 Use BStatusBar properly. The text in a BStatusBar is composed of four parts.
Label and trailing label are only specified in the constructor or in Reset().
By using SetText(), we were modifying another part of the text, while we meant
to set the label. This fixes updates on node monitor messages.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@472 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
ef4f1b5533 Since fLastMouseEventTab is never updated in _MouseMoved() while fMouseDown is
true, we need to recheck it in MouseUp(). This would fix the problem with the
middle mouse button click to close tabs if we didn't move closing to the mouse
up event, and it also fixes other situations, like clicking on one tab, moving
the mouse over another tab's close button, releasing the mouse and clicking
again without moving it inbetween.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@471 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
06ea485752 Add a context menu to the download progress view. It allows to open the
containing folder (and selects the file in it), and to copy the download URL
to the clipboard.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@470 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
464aca712f Fix a bug with closing tabs by pressing the tertiary mouse button. fMouseDown
would be true, but the fLastMouseEventTab would have been reset when removing
the tab. Rather than fixing this problem, behave the same as Firefox and close
the tab on mouse up (when the mouse is still over the tab, which allows the
user a way back out). Avoids the above problem as a side effect.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@469 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
99006ca0ae * Added page for proxy server configuration to the Settings window.
* Added necessary wiring in BWebSettings for proxy server configuration.

Actual proxy server usage untested, feedback welcome.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@468 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
5913d4a98b * Invalidate layout only when necessary.
* Icon view needs to update completely on resize.
-> Fixes graphics glitch when switching between icon and no icon.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@467 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
a4c1f6783d * After a recent commit, _TabChanged() was accessing "webView" when it really
meant CurrentWebView(). This also fixed the focus restoration, since it
  remembered the current focus for the wrong web view when the user data was
  already stored.
* Refactored _TabChanged() so that this code is now executed in the now
  virtual SetCurrentWebView(), which makes the features also work for new tabs.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@466 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
65cc5e49ee The favicon is now also displayed in the URL input view. Mostly because one is
used to it, but also when only one page is open and tabs are not displayed as
per the user settings, the favicon would then not be visible.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@465 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:41 +02:00
stippi
50c66f3857 * Store the favicon in the PageUserData of any BWebView instance.
* Refactored setting the page icon so it always goes through the new
   BrowserWindow::_SetPageIcon().
 * Don't replace the PageUserData in _TabChanged() if it already exists
   (which would forget the favicon).
 * Write the favicon to the Bookmark file. At the moment, it writes the
   32x32 icon as upscaled version of the 16x16 icon. Color reduction makes
   the icons look not so nice, since Haiku does not yet support PNG icons...

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@464 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
969b9a9669 Give focus back to the web view when hiding the Find controls.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@463 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
34da959656 Cleanup the supported types. Claiming support for image/jpeg, gif and png is
not really useful. Neither is claiming support for text/*. Added support for
image/svg+xml, since I don't think anything else would handle it as good as
WebPositive (which will do better once BView supports affine transformations).

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@462 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
54cc547050 Make sure a filename derived from a bookmark title does not contain invalid
characters for a filename.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@461 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
a0fcf3c05e Never apply the new page policy if we already have the BWebView. If we already
have it, it was created by the ChromeClient and navigation is soon going to
happen with it.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@460 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
3cba4f1616 Optimize default window size for 1024x768. Actually I would like to optimize
for 800x600 by default, but then the Welcome page opens with horizontal scroll
bar.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@459 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
b1957a61f6 * The current max history age was not read from the BrowsingHistory in
SettingsWindow::_RevertSettings().
 * Made all necessary refactoring in order to support _CanApplySettings().
 * Adjust the Apply and Revert button enabled state whenever settings change.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@458 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
b0240c4936 Allow setting a listener target and a modification message.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@457 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
1547f92b8e * Improved the layout of the Settings window general page.
* Allow specifying a start and a search page in the Settings window.
* Separated the "New page" policy into "New window" and "New tab" policies.
  For a new window, the user can chose to "Open start page", "Open search page"
  and "Open blank page". The default changed to "Open start page" and the
  default start page points to the "Welcome" readme. For new tabs, there is
  an additional choice "Clone current page". The default stayed with opening
  a blank page.
* Implemented the new page policies in BrowserWindow.
* Listen for changes of the new settings in BrowserWindow.
* Added the new settings keys and default values to SettingsKeys.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@456 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
a8d1c85daa Fixed looking up uint32 values.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@455 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
f7530134b1 Don't set the text if it's the same, allows to keep selection.
git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@454 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
88b25a7da9 Add a small hack to fix the invalidation glitches in the menu bar when resizing
the window.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@453 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00
stippi
fa485bda23 When removing the currently selected tab, temporarily unset the current BWebView,
since we did not delete the BWebView directly, but in the application thread,
this was a race condition that would only crash sometimes (in _TabChanged(),
when we tried to attach user data to the current tab before switching it). This
should fix the last known (to me) crash.

git-svn-id: http://svn.haiku-os.org/webpositive/webkit/trunk@452 94f232f2-1747-11df-bad5-a5bfde151594
2012-07-03 15:43:40 +02:00