<p>This PR adds GTK3 support to the scope plugin, but still keeps GTK2 support (in contrast to PR <a class="issue-link js-issue-link" data-error-text="Failed to load issue title" data-id="299824924" data-permission-text="Issue title is private" data-url="https://github.com/geany/geany-plugins/issues/697" href="https://github.com/geany/geany-plugins/pull/697">#697</a>).</p>
<p>Some compatibility code (macros) were put in the common utils lib so that other plugins can use it on porting to GTK3. So this PR includes changes on scope AND utils.</p>
<p><a class="user-mention" data-hovercard-user-id="1010248" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/frlan">@frlan</a>: don't merge this - it's work in progress.</p>
<p>But this is <strong>NOT working</strong> yet. <strong>I need help</strong> with the build system:</p>
<p>How can I make scope do the following:<br>
If build against GTK2 use libvte0.17 or newer, e.g. like this:</p>
<pre><code>            GP_CHECK_PLUGIN_DEPS([scope], [VTE],
                                 [vte >= 0.17])
</code></pre>
<p>If build against GTK3 use libvte2.91 or newer, e.g. like this:</p>
<pre><code>            GP_CHECK_PLUGIN_DEPS([scope], [VTE],
                                 [vte-2.91])
</code></pre>
<p>Thanks for any help in advance.</p>

<hr>

<h4>You can view, comment on, or merge this pull request online at:</h4>
<p>  <a href='https://github.com/geany/geany-plugins/pull/750'>https://github.com/geany/geany-plugins/pull/750</a></p>

<h4>Commit Summary</h4>
<ul>
  <li>scope: added GTK3 support (keeping GTK2 support)</li>
</ul>

<h4>File Changes</h4>
<ul>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-0">build/scope.m4</a>
    (1)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-1">scope/src/Makefile.am</a>
    (6)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-2">scope/src/conterm.c</a>
    (35)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-3">scope/src/plugme.c</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-4">scope/src/prefs.c</a>
    (6)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-5">scope/src/prefs.h</a>
    (6)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-6">scope/src/scope.c</a>
    (4)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-7">scope/src/utils.c</a>
    (11)
  </li>
  <li>
    <strong>M</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-8">utils/src/Makefile.am</a>
    (9)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-9">utils/src/gp_gtkcompat.h</a>
    (57)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-10">utils/src/gp_vtecompat.c</a>
    (47)
  </li>
  <li>
    <strong>A</strong>
    <a href="https://github.com/geany/geany-plugins/pull/750/files#diff-11">utils/src/gp_vtecompat.h</a>
    (60)
  </li>
</ul>

<h4>Patch Links:</h4>
<ul>
  <li><a href='https://github.com/geany/geany-plugins/pull/750.patch'>https://github.com/geany/geany-plugins/pull/750.patch</a></li>
  <li><a href='https://github.com/geany/geany-plugins/pull/750.diff'>https://github.com/geany/geany-plugins/pull/750.diff</a></li>
</ul>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany-plugins/pull/750">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABDrJ2mSvk57oPmBjaqH_LLherHDM6prks5t5Bq7gaJpZM4UYKVp">mute the thread</a>.<img src="https://github.com/notifications/beacon/ABDrJ71xtvY4FvML0TfHydDaQ_Q5z9qFks5t5Bq7gaJpZM4UYKVp.gif" height="1" width="1" alt="" /></p>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","potentialAction":{"@type":"ViewAction","target":"https://github.com/geany/geany-plugins/pull/750","url":"https://github.com/geany/geany-plugins/pull/750","name":"View Pull Request"},"description":"View this Pull Request on GitHub","publisher":{"@type":"Organization","name":"GitHub","url":"https://github.com"}}</script>
<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/geany/geany-plugins","title":"geany/geany-plugins","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/geany/geany-plugins"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"scope: added GTK3 support (keeping GTK2 support) (#750)"}],"action":{"name":"View Pull Request","url":"https://github.com/geany/geany-plugins/pull/750"}}}</script>
<script type="application/ld+json">{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "37567f93-e2a7-4e2a-ad37-a9160fc62647",
"title": "scope: added GTK3 support (keeping GTK2 support) (#750)",
"sections": [
{
"text": "",
"activityTitle": "**LarsGit223**",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@LarsGit223",
"facts": [

]
},
{
"title": "Commit Summary",
"facts": [
{
"name": "cf93f20",
"value": "scope: added GTK3 support (keeping GTK2 support)"
}
]
},
{
"title": "File Changes",
"facts": [
{
"name": "Modified",
"value": "[build/scope.m4](https://github.com/geany/geany-plugins/pull/750/files#diff-0) (1 changes)"
},
{
"name": "Modified",
"value": "[scope/src/Makefile.am](https://github.com/geany/geany-plugins/pull/750/files#diff-1) (6 changes)"
},
{
"name": "Modified",
"value": "[scope/src/conterm.c](https://github.com/geany/geany-plugins/pull/750/files#diff-2) (35 changes)"
},
{
"name": "Modified",
"value": "[scope/src/plugme.c](https://github.com/geany/geany-plugins/pull/750/files#diff-3) (4 changes)"
},
{
"name": "Modified",
"value": "[scope/src/prefs.c](https://github.com/geany/geany-plugins/pull/750/files#diff-4) (6 changes)"
},
{
"name": "Modified",
"value": "[scope/src/prefs.h](https://github.com/geany/geany-plugins/pull/750/files#diff-5) (6 changes)"
},
{
"name": "Modified",
"value": "[scope/src/scope.c](https://github.com/geany/geany-plugins/pull/750/files#diff-6) (4 changes)"
},
{
"name": "Modified",
"value": "[scope/src/utils.c](https://github.com/geany/geany-plugins/pull/750/files#diff-7) (11 changes)"
},
{
"name": "Modified",
"value": "[utils/src/Makefile.am](https://github.com/geany/geany-plugins/pull/750/files#diff-8) (9 changes)"
},
{
"name": "Added",
"value": "[utils/src/gp_gtkcompat.h](https://github.com/geany/geany-plugins/pull/750/files#diff-9) (57 changes)"
},
{
"name": "Added",
"value": "[utils/src/gp_vtecompat.c](https://github.com/geany/geany-plugins/pull/750/files#diff-10) (47 changes)"
},
{
"name": "Added",
"value": "[utils/src/gp_vtecompat.h](https://github.com/geany/geany-plugins/pull/750/files#diff-11) (60 changes)"
}
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"geany/geany-plugins\",\n\"issueId\": 750,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}"
}
]
},
{
"name": "Close pull request",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"PullRequestClose\",\n\"repositoryFullName\": \"geany/geany-plugins\",\n\"pullRequestId\": 750\n}"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/geany/geany-plugins/pull/750"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/geany/geany-plugins/pull/750.patch"
}
],
"@type": "OpenUri",
"name": "View patch"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/geany/geany-plugins/pull/750.diff"
}
],
"@type": "OpenUri",
"name": "View diff"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 341878121\n}"
}
],
"themeColor": "26292E"
}</script>