Commit Graph

696 Commits

Author SHA1 Message Date
baldurk 5fc90f7a08 Fix menus not showing up on some user configurations
* Menus aren't guaranteed to pass isVisible() immediately after calling
  popup() on them, so we need to wait for their aboutToHide signal to
  stop the event loop.
2017-06-16 23:31:05 +01:00
baldurk efe105a203 Remove TODO for implemented feature 2017-06-16 23:07:50 +01:00
baldurk abcfcfd8a4 Display resolve attachments with other framebuffer outputs in UI 2017-06-16 15:59:39 +01:00
baldurk e0104e8fe0 Allow configured adb path to be empty, look for adb in shipped path
* On windows we ship adb.exe under android/ so that there's no configure
  needed. Look for that file if there isn't an override path.
2017-06-15 05:28:07 -07:00
baldurk 6423a82d18 Add support for multiple connected android devices
* We forward a different range of ports to each device so we can pick
  and choose which to communicate with based on its index.
* The index is encoded in the 'hostname' like so: adb:X:deviceidhere
* Whenever we want to interact with an android device we always specify
  the device, never leave it to a default.
2017-06-15 05:28:07 -07:00
baldurk 06b5b300c3 When enumerating adb devices, reuse old hosts where possible.
* This fixes a crash where an enumeration from application startup is
  still going when opening the remote manager dialog, and then all the
  android hosts that are being enumerated get deleted while it's still
  going.
2017-06-15 05:28:07 -07:00
baldurk c76b8298f8 Use adb getprop to give adb devices friendly names
* This means you'll see "Google Pixel XL" or "samsung SM-G900F" instead
  of "HT74T0200775" or "9a9502c6"
2017-06-15 05:28:07 -07:00
baldurk 02a7d8d50c Remove confusing duplicated logic in remote manager
* Instead of having button enabling and so on logic in both
  on_hostname_textEdited and on_hosts_itemClicked, just handle the
  hostname edit as selection or unselecting any matching item, and then
  process all the logic whenever the selection changes.
2017-06-15 05:28:07 -07:00
baldurk 1ffe0b634b Fix deleting hosts from remote manager
* Checking for a NULL parent item doesn't work, the parent will be the
  invisible root item.
* Also make sure we don't delete a host that might have enumerations
  still going for it.
2017-06-15 05:28:07 -07:00
baldurk e4eb6a1fc8 Add documentation for new function 2017-06-15 05:28:07 -07:00
Michael Rennie 70f55a1458 Start/Shutdown Android server from RemoteManager dialog.
ANativeActivity_finish when renderdoccmd() returns.
2017-06-14 05:03:46 -07:00
baldurk d515c69a9f Remove alternating row colors in most places.
* This was only added because the default tree widget controls don't
  render any grid lines. Now that we're custom drawing them, the row
  colors are distracting and can be confusing on themes where the
  selected row is very faint.
2017-06-13 18:19:02 +01:00
baldurk b83092541b Update toolwindowmanager to a37c60f 2017-06-13 18:14:19 +01:00
baldurk d19ba7eadc Make sure temporary logs opened from the command line are cleaned up 2017-06-13 18:13:31 +01:00
baldurk f81876335f Emit click events after processing parent widget
* This means that e.g. right clicking on an item in a list/tree widget
  will make sure it's selected before trying to display a context menu
  or anything.
2017-06-13 18:13:11 +01:00
baldurk 3ba62df061 If just clicking on the plain open button (not menu), open the capture 2017-06-13 18:11:43 +01:00
baldurk def80ac8da Only build qt.conf on windows, it breaks linux platform plugin search :( 2017-06-13 14:56:40 +01:00
baldurk d6d93a7734 Keep margins consistent between tabs in the settings window 2017-06-13 14:56:40 +01:00
baldurk c1fb2bb020 Add editing/renaming and delete key to live connection window 2017-06-13 14:56:40 +01:00
baldurk b59f03c198 Make sure to pass object parent along
* Missing parents will cause automatic slots not to be connected, which
  was breaking the remote host manager.
2017-06-13 14:56:40 +01:00
baldurk 25f18defd4 Use a qt.conf to point plugins at qtplugins/ in the application path.
* We can point the platform plugins path at the application dir for
  qwindows.dll for example, but there's no equivalent for image format
  plugins which we need for qsvg.dll. So instead we shove them all under
  an explicit qtplugins path.
* Also now that we have this, copy qsvg.dll into the distribution.
2017-06-13 14:56:40 +01:00
baldurk 13e9096f94 Decode JPG capture thumbnails to raw bytes before passing to the UI
* This removes the need to have JPG decode in qt.
2017-06-13 14:56:40 +01:00
baldurk f9c9adedf3 Use logo.svg instead of icon.ico in qrenderdoc
* This means we don't need to distribute the ico reading qt plugin
2017-06-13 14:56:40 +01:00
Józef Kucia db0cf0574c Fix check for python-config. Refs #647
Fixes fa1b098cc4.
2017-06-13 06:44:13 -07:00
baldurk fa1b098cc4 Check for python3-config or python3.x-config binary names. Refs #647 2017-06-12 12:11:14 +01:00
baldurk 2454863b80 Implement CSV export in constant buffer previewer. Refs #646 2017-06-12 10:34:42 +01:00
baldurk 472bb820b7 Remove unused events in RangeHistogram 2017-06-12 10:34:17 +01:00
baldurk 348bfbce01 CMake recommends finding PythonInterp before PythonLibs 2017-06-09 21:38:52 +01:00
baldurk ab96b05b53 Remove mistaken double assignment 2017-06-09 19:38:23 +01:00
baldurk 28c1aee05b Add virtual destructor for CaptureContextInvoker 2017-06-09 19:36:57 +01:00
baldurk f6399609f9 Add headers for mouse and key events being used 2017-06-09 19:36:46 +01:00
baldurk 6d02b16935 Add missing override specifier 2017-06-09 19:36:29 +01:00
baldurk ea85b5e366 Fix stub to match changed signature 2017-06-09 19:36:20 +01:00
baldurk a292838f43 Add a custom tooltip to display elided data in RDTreeViews 2017-06-09 18:41:21 +01:00
baldurk 1574103613 Add click-to-highlight for registers 2017-06-09 17:57:33 +01:00
baldurk f3926340e6 update toolwindowmanager to 091b80d 2017-06-09 17:32:10 +01:00
baldurk 0cfa8c1eb9 Add variable tooltips to the shader viewer showing float/int/uint values 2017-06-09 17:04:23 +01:00
baldurk 2400f6e11f Add fix to Scintilla to ensure mouse tracking is restored on show
* See: https://sourceforge.net/p/scintilla/bugs/1948/
2017-06-09 17:03:24 +01:00
baldurk 0b1c3725b9 Add a fallback path for opaque qwidgets if pyside2 isn't compiled in
* Even if we don't have pyside2 to treat qwidgets as full objects and
  access their methods and data, we still need to be able to pass around
  the QWidget* as an opaque pointer to be able to use the API properly.
* This change falls back to just using SWIG's default opaque pointer
  wrapping and unwrapping when pyside2 isn't available.
2017-06-09 17:02:09 +01:00
baldurk 8e423f4c76 Add some parameter checking to the capture context interface 2017-06-09 17:00:44 +01:00
baldurk 1cc2c22195 Invoke CaptureContext function calls onto UI thread, from python thread
* Any work that might use Qt needs to happen on the UI thread, so when
  running a python script on the python thread we need to invoke across.
  We wrap the main ICaptureContext interface to block invoke onto the UI
  for any function calls that aren't just returning internal data.
2017-06-09 17:00:28 +01:00
baldurk 21836c240d Don't crash on NULL pointers being dealloc'd
* The error handling code will be OK if a NULL parameter was passed in
  but during cleanup it will go through tempdealloc, so we need to check
  that the pointer is actually valid.
2017-06-09 16:57:33 +01:00
baldurk 27ae30aaa3 Print messages to Qt logger from command line python scripts 2017-06-09 16:56:47 +01:00
baldurk 7fe267d548 Only add log viewer at the end of constructors, so the window is ready
* Otherwise if OnLogFileLoaded gets called while adding the log viewer
  the window might be partially constructed and crash.
2017-06-09 12:08:39 +01:00
baldurk 2da46640d0 Add watch variables handling to qt shader viewer 2017-06-09 12:06:57 +01:00
baldurk 2319681217 Mark overrided function as override 2017-06-08 21:31:28 +01:00
baldurk 055acb05e1 Fix an unused variable warning with python parameterless callbacks 2017-06-08 21:31:21 +01:00
baldurk 8a59754bf8 Disable save/close capture menu items when there's no capture open 2017-06-08 18:23:23 +01:00
baldurk 199c26adbf Put the MainWindow in charge of handling 'global' type shortcuts
* QShortcut falls down on duplicates. It can have activatedAmbiguously
  events, but these happen in arbitrary order and the shortcuts on
  menu items just swallow the ambiguous activate so it's not useful.
* Instead we just let MainWindow pick up ShortcutOverride events and
  consult a mapping of which shortcuts to use. We can use a smarter
  selection method to choose the more 'local' shortcut if two shortcuts
  that conflict exist.
2017-06-08 18:23:10 +01:00
baldurk 085026aa91 Update toolwindowmanager to f31edfa 2017-06-08 16:35:14 +01:00