Commit Graph

292 Commits

Author SHA1 Message Date
Paul Cornett
91ea487281 Adapt window decorations cache for client-side decorations
Fixes size calculations for TLWs created after the first one,
with Wayland, Mir and Broadway. See #17336
2016-02-05 10:26:06 -08:00
Paul Cornett
cc48c42e17 remove no-longer-needed OnInternalIdle() override 2015-12-06 20:24:59 -08:00
Paul Cornett
84a77c0c32 remove unused global variable 2015-12-06 20:20:27 -08:00
Paul Cornett
d4d209dd39 Fix generation of wxEVT_ACTIVATE_APP
Avoid spurious events when showing most native dialogs
See #17260
2015-12-06 20:10:32 -08:00
Paul Cornett
a15e776dcd avoid gtk_widget_get_root_window(), deprecated in GTK+ 3.12 2015-10-10 11:50:27 -07:00
Tobias Taschner
5f75b7506f Remove Hildon framework support.
The Hildon framework was used for Nokia 770 and other Maemo devices.
This platform discontinued and hasn't seen a new release since 2011.
2015-08-26 22:49:53 +02:00
Dimitri Schoolwerth
0e6af4ac39 No code changes, fix some typos.
Change several occurrences of "it's" where "its" is meant, as well as a few other minor typos.



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-15 17:11:44 +00:00
Paul Cornett
8f134c9a28 guard functions with wxCHECK_* macros rather than wxASSERT_*
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-17 17:44:06 +00:00
Paul Cornett
11cbe6ef70 Allow setting icon before m_widget is valid.
There is no need to require a valid m_widget,
the "realize" handler will take care of things later.
Closes #16731


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-12-13 17:40:29 +00:00
Paul Cornett
173cfe28a1 fix build when GDK_WINDOWING_X11 is not defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-19 18:59:43 +00:00
Vadim Zeitlin
a6b14c2ed1 Don't crash when switching to full screen in non X11-based wxGTK.
Only use internal X11 display if we're running in a such environment.

See #16688.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-19 13:29:23 +00:00
Vadim Zeitlin
015206314b Don't use frame extents when not using X11 in wxGTK.
See #16688.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-19 13:29:18 +00:00
Vadim Zeitlin
d4aaa5f40a Don't defer wxTLW initialization in wxGTK when not using X11.
See #16688.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-11-19 13:29:13 +00:00
Paul Cornett
07b1a1d6a0 use gtk_window_set_opacity() in SetTransparent() when GTK >= 2.12
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-04-15 16:07:44 +00:00
Paul Cornett
08a02f640a adjust size hints when decor size changes, to prevent changing a set client size during initial show
closes #15794


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 01:52:11 +00:00
Paul Cornett
d2e4b3520b for GTK+ 3.6 and later, invalidate cached best size when GTK's style cache is updated, see #16088
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-15 18:44:02 +00:00
Paul Cornett
0eb8b9579a finish setting size before sending wxMoveEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-10 17:32:42 +00:00
Paul Cornett
0dfeb74e78 Different fix for cursor inheritance and busy cursor/global cursor.
Previous work was not compatible with GTK < 2.18 and did not properly handle some cases
see #15801


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-06 04:43:46 +00:00
Paul Cornett
0082512adf build fix for GTK+ 3.10, closes #15667
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-11-13 18:03:48 +00:00
Paul Cornett
40cbd1603a Window decoration fixes for Wayland.
Allow setting no decorations, and an attempt to allow setting no title bar.
closes #15553


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-09 18:07:31 +00:00
Paul Cornett
a599b4b5d7 Fix default size of un-resizable windows, broken in r74685
see #14870
closes #15549


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-10-05 16:20:06 +00:00
Paul Cornett
7b37894790 avoid calling GetDefaultSize() twice
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-09-24 05:50:09 +00:00
Paul Cornett
3a4cf8a84d Remove DoSetSizeHints() call from Create()
The reason it was added does not seem to be reproducible anymore,
and it interferes with wxRESIZE_BORDER on Ubuntu.
Closes #14870


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-19 17:25:56 +00:00
Paul Cornett
ef1a87f606 revert r74683, wxTLW has its own {Width,Height}Default()
which are not the ones called by PreCreation()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-19 16:58:43 +00:00
Paul Cornett
e62b769262 Remove some old redundant code
Default size stuff is done by PreCreation()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-19 05:42:21 +00:00
Paul Cornett
71a09c3579 avoid setting initial position if it was not specified, broken in r70734
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-18 16:00:22 +00:00
Paul Cornett
dca2fe5dae Move code that does not need realized GdkWinow out of realize handler
These calls can be made much earlier, and it seems like a good idea to do so.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-18 15:01:06 +00:00
Paul Cornett
3eee64e7cf avoid duplicate move events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-17 16:38:12 +00:00
Paul Cornett
c37b0f0907 Avoid calling gtk_window_get_position() from "configure-event" handler, if possible.
This avoids a round trip to the X server, which is expensive over a remote connection.
Closes #15116


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-17 16:25:13 +00:00
Paul Cornett
0c80814ffe use names for gs_requestFrameExtentsStatus values
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-08-16 15:43:51 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Paul Cornett
2a875213d3 fix GTK3 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-03-22 17:03:12 +00:00
Vadim Zeitlin
819638a71f Tweak wxGTK keyboard handling to allow accelerators to work again.
Accelerators were broken by the changes of r72640 which were done to ensure
that the focused window gets the keyboard event first, before its top level
parent. Fix them now by still passing the events to the focused window first
but also passing them to the parent top level if it hasn't been handled by the
focused child.

Unfortunately this is still not fully compatible with wxMSW because in wxGTK
wxEVT_CHAR handler must skip the event in order to allow the accelerator using
the same key to work, while in wxMSW the accelerator can only be suppressed by
overriding wxWindow::MSWShouldPreProcessMessage(). We will need to make the
two ports behave in the same way when the event is not skipped in the future.

But for now, at least make them both behave correctly when the handler does
skip the event.

Closes #14553.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-03-21 22:36:57 +00:00
Paul Cornett
b0d053c1ea Use client size determined by size-allocate when possible
Our client size calculation can be wrong for reasons beyond our control,
notably on Ubuntu 12.04 with overlay scrollbars where the GtkScrolledWindow
"scrollbar-spacing" is wrong. By using the true size from size-allocate
when it becomes available, we can recover from an earlier incorrect client
size calculation. See #14871


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-12-20 18:46:58 +00:00
Paul Cornett
1897abe1d8 avoid functions deprecated in GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-25 03:41:42 +00:00
Paul Cornett
ae41d74654 update fullscreen state when it is changed by the WM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-11-07 17:58:23 +00:00
Paul Cornett
8ab7533289 Disconnect all GTK signals referencing a wx object which is being destructed
or which is destroying the associated GTK object


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-17 16:23:18 +00:00
Vadim Zeitlin
1bcef6701b Ensure that key events are sent to focused window first in wxGTK.
Start processing key events from the currently focused window, this ensures
that its key event handlers are tried before the top level window
accelerators.

This is consistent with wxMSW and allows a window to locally override the
global accelerators which really makes sense.

Closes #14553.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-07 22:42:50 +00:00
Paul Cornett
7d1214cd72 silence warnings about shadowed variables with GCC -Wshadow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-10-04 15:55:06 +00:00
Vadim Zeitlin
eef432913f Don't change client size of TLW when centering it in wxGTK.
Setting the frame client size and then calling Centre() on it resulted in the
frame coming up with a wrong client size in wxGTK because the call to Centre()
resulted in calling wxTopLevelWindow::DoSetSize() which unconditionally reset
m_deferShowAllowed to true, undoing setting it to false in DoSetClientSize().

Only reset m_deferShowAllowed if the size was really changed but not if the
window was only moved, as happens when centering it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-23 15:02:53 +00:00
Paul Cornett
77ba5c12cb simplify ifdefs, deferred show and _NET_FRAME_EXTENTS are X11-only
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-15 01:40:39 +00:00
Vadim Zeitlin
fe943278df Minor fixes to wxGTK3 with Broadway backend build.
Reuse some functions for both Broadway and X11 backends. Fix invalid casts
from Broadway screen/display types to X11 ones.

Closes #14469.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-14 20:10:50 +00:00
Paul Cornett
c49ba2113c no real changes, just remove unnecessary indentation and scoping after r72001
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-10 17:17:53 +00:00
Paul Cornett
4e621d2471 update minimum GTK2 version requirement to 2.6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-07-10 16:39:44 +00:00
Paul Cornett
9dc44eff02 support for GTK3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-30 20:39:06 +00:00
Paul Cornett
8f71e657f3 update size hints when decoration size becomes known, and preserve size hint increments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-24 16:18:28 +00:00
Paul Cornett
e8440ff58c properly handle stupidly small maximum size hints
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-23 03:33:08 +00:00
Paul Cornett
f94d58dd75 fix SetSizeHints when wxDefaultSize is given for min or max size
GTK does unexpected things if both min and max size are not explicitly set

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-22 06:41:56 +00:00
Vadim Zeitlin
5da0507745 Don't call gtk_window_set_geometry_hints() if there are no hints to set.
Calling gtk_window_set_geometry_hints() with the hints mask of 0 doesn't work
correctly and sets the window size to the smallest possible. Avoid this by
simply not calling this function at all if there is nothing to do.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-21 13:19:30 +00:00
Paul Cornett
d5027818a4 fix warnings about conversion to bool, closes #14381
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-07 05:18:30 +00:00