201 Commits

Author SHA1 Message Date
baldurk 6c6d136d14 Make sure counter selection stays consistent and without duplicate items 2018-03-05 11:20:01 +00:00
baldurk 5c96b1846a Remove decimals on Android connection timeout, bump maximum to 120 2018-02-25 15:29:10 +00:00
baldurk c923b41d3b Clarify that buttons on CaptureDialog are to load and save settings 2018-02-24 23:22:24 +00:00
baldurk 7b3e1be030 When auto-opening a single capture, try to raise the texture viewer
* This gives a better 'first impression' when opening a capture than
  falling back to the last panel that is the launch executable panel
  in 95% of cases.
2018-02-24 23:22:22 +00:00
baldurk aee8678256 Set a proper title for the remote-host prompting dialog 2018-02-22 19:48:09 +00:00
baldurk 8f7c15a984 Remove window help button from dialogs 2018-02-22 19:47:56 +00:00
ashley 7fd5c379c4 Queue capture frame number had maximum of 100, changed to be higher 2018-02-22 15:49:30 +00:00
baldurk 4a2242f0a1 Make checkerboard colours update immediately when theme changes 2018-02-21 14:29:36 +00:00
baldurk 934800793a Improve workflow for capture import/export
* If the export doesn't need buffers, we export directly from the loaded
  capture file instead of re-loading it.
* Add progress bars for the load step so it shows what's happening
  instead of looking stalled.
* Reduce compression rate on XML+ZIP buffers as it took too long trying
  to compress when exporting large captures.
2018-02-19 00:52:13 +00:00
baldurk ea5e88b99d Use current item instead of last selected item in onclick handler 2018-02-12 20:48:04 +00:00
baldurk 8de37336ad Adjust capture connection scrolling to be reasonable on the mouse wheel 2018-02-12 20:47:58 +00:00
baldurk 770903c9dd Raise limit on number of frames to queue to 10 for now. Refs #871 2018-02-12 20:47:50 +00:00
baldurk 10649d9af3 Set number of frames to capture with instantaneous trigger. Refs #871 2018-02-12 16:58:05 +00:00
baldurk 6e96ef86c3 Remove our own PID from list of injectable processes 2018-02-12 12:53:35 +00:00
baldurk 1854eb3c85 Tweak analytics prompt wording and fix a typo 2018-02-12 11:31:57 +00:00
baldurk 80af9cfebf Rename "Hook into Children" option
* Because holy moly that's a really strange way to shorten the option.
2018-02-09 21:14:32 +00:00
baldurk cbeb905ae6 Default to selected texture file format in save file browser. Refs #862
* We also do the reverse, if they selected a different extension we
  update the selected format.
2018-02-09 17:51:31 +00:00
baldurk 4f59cdb23d Linux compile fix 2018-02-09 09:08:11 +00:00
baldurk e20a31d23f Add friendlier error message when overwriting current file. Refs #862
* Only the currently open capture can save over its file, other captures
  cannot overwrite it while it's in use.
2018-02-09 01:32:49 +00:00
baldurk f044719b9a Add file size limit of 2.25GB for uploaded captures 2018-02-09 01:32:46 +00:00
baldurk fc37a4fa54 Check that we have openssl available in crash report dialog 2018-02-07 15:57:17 +00:00
baldurk fd344b2803 Rename JDK browse button slot to properly get picked up 2018-02-07 12:09:30 +00:00
baldurk a2e0bc82e9 Allow double-click & other shortcuts to inject into processes. Refs #862 2018-02-06 21:25:07 +00:00
baldurk 2b64d6dfa7 Add options to change analytics settings after initial prompt
* We are also more explicit in code about disabling the analytics when
  the opt-out is selected.
2018-02-06 00:21:09 +00:00
baldurk 6316a9747d Add missing Qt include 2018-02-01 00:25:05 +00:00
baldurk 29f5d7e53d Update file selection whenever an item is selected, not just clicked.
* This catches when you use typing to find an item, or select with the
  arrow keys.
2018-01-31 21:08:24 +00:00
baldurk b3d5704809 Don't try to make package debuggable if remote server has disconnected 2018-01-29 18:02:23 +00:00
baldurk cb34a2daea Revamp android patching to only check for (& change) the debuggable flag
* We don't consider anything else, this includes permissions or the
  library being present. Since we no longer expect to patch in the
  library we also don't check its version (however we leave the tag in
  case it is useful in the future).
* If the user has root access we will never warn, assuming the injection
  will work fine even without the debuggable flag.
2018-01-26 21:19:14 +00:00
baldurk 643db8042b Tweak live capture again - feels more natural with buttons on the right 2018-01-26 15:33:18 +00:00
baldurk 503fd1a858 Adjust padding in LiveCapture dialog 2018-01-25 18:55:54 +00:00
baldurk 5150a9531b Allow queuing a sequence of frames both before capture, or while running
* We also make the frame counting consistent: Frame 0 is the frame from
  device initialisation to first present, Frame 1 is from first present
  to second, and so on after that.
2018-01-24 11:38:37 +00:00
baldurk f46aa2944d Add #includes to fix linux compilation 2018-01-20 10:17:22 +00:00
baldurk 33b3176cd4 Rewrite the analytics intro text to be less of a wall of text
* Also add a preview of what data will be included in any report, both
  in the intro and in the confirmation before sending any report.
2018-01-19 16:33:45 +00:00
baldurk 98ed7ae9ca Make sure the discard button for analytics actually works! 2018-01-19 11:45:16 +00:00
baldurk 7989c80152 Compile fixes for linux 2018-01-17 22:57:04 +00:00
baldurk be0681f770 Allow for configuring multiple SPIR-V disassemblers, detect known tools
* Initially add support for spirv-cross and spirv-dis.
* When possible we'll auto-detect the tools in path or in the build's
  plugins folder.  Otherwise the user can add it and add their
  executable path.
* We still use the first disassembler for editing - in future it would
  be good to allow selecting the disassembler at edit time (as well
  as allowing multiple compilers).
2018-01-17 21:07:04 +00:00
baldurk 2354a0e71d Change OrderedListEditor to be a widget, not a dialog 2018-01-17 21:07:04 +00:00
baldurk dea21b20a0 Remove global GIT_COMMIT_HASH define, use GitVersionHash global var
* On windows, the change in a global GIT_COMMIT_HASH define in each
  project needing it meant a full rebuild every time the commit changed.
* Ideally we'd set the define only on one file in each project, but
  MSBuild doesn't seem to support that. Instead we make a new tiny
  project that compiles a single cpp exporting a global var, and
  reference that global var in each other project.
2018-01-16 20:17:53 +00:00
baldurk e305029ddd Update copyright years to 2018 2018-01-01 17:55:29 +00:00
baldurk 7a2305ae31 Change by-ref passed float or bool parameters to callbacks in public API
* Mostly used for passing a progress float back during a long blocking
  call like opening a capture or doing a copy.
* This is much more feasible for python to bind to.
* In several cases we just use a tiny lambda that updates a float anyway
  since we can't push the progress directly into a progress dialog, but
  need to let it query from a temporary in-between float.
2018-01-01 17:31:23 +00:00
baldurk 0fef1c0a44 Display richer status in capture connection window.
* This includes the capture progress bar that will appear, as well as
  better information about the active API.
2017-12-29 18:30:44 +00:00
baldurk 559656e0f6 Send capture progress over an active target control connection 2017-12-29 18:30:43 +00:00
baldurk d14c7f3894 Track a set of active APIs instead of a single current API.
* We also let an API be active without presenting, and then note when it
  starts presenting. This lets us detect the case where an API has been
  started up and used, but isn't presenting so we're not able to capture
  it. Less confusing than telling the user no API is detected, and lets
  us direct them to the relevant documentation.
* There's also a flag indicating if the API can be captured even if it
  does present.
2017-12-29 18:30:38 +00:00
baldurk 30589eaf19 Update dialog should not have maximum size on the release notes 2017-12-22 14:41:45 +00:00
baldurk ebaefc82a9 Normalise and make python/public interface more consistent
* We enforce a naming scheme more strongly - types, member functions,
  and enum values must be UpperCaseCamel, and member variables must be
  lowerCaseCamel. No underscores allowed.
* eventId not eventID or EID, and Id preferred to ID in general. Also
  for resourceId.
* Removed some lingering hungarian m_Foo naming.
* Some pipeline state structs that are almost identical between the
  different APIs are pulled out into common structs. Where something
  doesn't make sense (e.g. viewport enable for vulkan) it will just be
  set to a sensible default (in that case always true).
* Changed scissors to be x/y & width/height instead of sometimes
  left/top/right/bottom
* Abbreviations are discouraged, e.g. operation not op, function not
  func.
2017-12-22 13:02:36 +00:00
baldurk 84331ebf0b [Coverity] Fix missing check for negative return 2017-12-21 11:56:54 +00:00
David McFarland 8119f98c65 LiveCapture: specify bpl when creating RGB888 thumbnail
Qt rounds up the bpl to a multiple of 4 bytes, so this was crashing for me with
odd sized thumbnails.
2017-12-20 19:00:50 +01:00
baldurk 764b39a23c Add update checking system to Qt UI
* This only runs on windows - on other platforms we rely on system
  distribution or user local builds.
2017-12-19 17:31:32 +00:00
baldurk b7952cfdf0 Minor tidying making function private 2017-12-19 13:05:06 +00:00
baldurk f2e7f8f1a0 Refactor crash/bug reporter system
* The UI dialog is now in Qt. We run qrenderdoc.exe with a very minimal
  startup to display the dialog and send the report.
* The flow has been simplified to have less text and an easier time to
  just click through and send.
* On the first report, the user is gently nudged to enter their email
  address for contact and by default the email is saved for next time.
  They're not nagged more than once about this.
* Optionally the user can select to upload the capture. This is always
  default off, and there is a confirmation dialog making sure the user
  intended to select it.
* After the bug is reported, a unique URL is generated and returned
  which the user can then click back on to see if there's any update. By
  default the UI will also remember the URL and check it every couple
  of days and alert the user in the help menu that there's an update.
2017-12-19 12:26:34 +00:00