diff options
Diffstat (limited to 'src/ui/documentwidget.c')
-rw-r--r-- | src/ui/documentwidget.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/ui/documentwidget.c b/src/ui/documentwidget.c index 7318e4cb..a2cf0a8f 100644 --- a/src/ui/documentwidget.c +++ b/src/ui/documentwidget.c | |||
@@ -1,6 +1,7 @@ | |||
1 | #include "documentwidget.h" | 1 | #include "documentwidget.h" |
2 | #include "paint.h" | 2 | #include "paint.h" |
3 | #include "util.h" | 3 | #include "util.h" |
4 | #include "app.h" | ||
4 | #include "../gemini.h" | 5 | #include "../gemini.h" |
5 | #include "../gmdocument.h" | 6 | #include "../gmdocument.h" |
6 | 7 | ||
@@ -116,6 +117,7 @@ static void requestFinished_DocumentWidget_(iAnyObject *obj) { | |||
116 | iReleaseLater(d->request); | 117 | iReleaseLater(d->request); |
117 | d->request = NULL; | 118 | d->request = NULL; |
118 | fflush(stdout); | 119 | fflush(stdout); |
120 | postRefresh_App(); | ||
119 | } | 121 | } |
120 | 122 | ||
121 | static void fetch_DocumentWidget_(iDocumentWidget *d) { | 123 | static void fetch_DocumentWidget_(iDocumentWidget *d) { |
@@ -128,9 +130,9 @@ static void fetch_DocumentWidget_(iDocumentWidget *d) { | |||
128 | iFile *f = new_File(collect_String(newRange_String(url.path))); | 130 | iFile *f = new_File(collect_String(newRange_String(url.path))); |
129 | if (open_File(f, readOnly_FileMode)) { | 131 | if (open_File(f, readOnly_FileMode)) { |
130 | setBlock_String(d->newSource, collect_Block(readAll_File(f))); | 132 | setBlock_String(d->newSource, collect_Block(readAll_File(f))); |
133 | postRefresh_App(); | ||
131 | } | 134 | } |
132 | iRelease(f); | 135 | iRelease(f); |
133 | d->state = ready_DocumentState; | ||
134 | return; | 136 | return; |
135 | } | 137 | } |
136 | d->request = new_TlsRequest(); | 138 | d->request = new_TlsRequest(); |
@@ -163,6 +165,14 @@ static iBool processEvent_DocumentWidget_(iDocumentWidget *d, const SDL_Event *e | |||
163 | if (isResize_UserEvent(ev)) { | 165 | if (isResize_UserEvent(ev)) { |
164 | setWidth_GmDocument(d->doc, documentWidth_DocumentWidget_(d)); | 166 | setWidth_GmDocument(d->doc, documentWidth_DocumentWidget_(d)); |
165 | } | 167 | } |
168 | if (ev->type == SDL_KEYDOWN) { | ||
169 | const int mods = keyMods_Sym(ev->key.keysym.mod); | ||
170 | const int key = ev->key.keysym.sym; | ||
171 | if (mods == KMOD_PRIMARY && key == 'r') { | ||
172 | fetch_DocumentWidget_(d); | ||
173 | return iTrue; | ||
174 | } | ||
175 | } | ||
166 | return processEvent_Widget(w, ev); | 176 | return processEvent_Widget(w, ev); |
167 | } | 177 | } |
168 | 178 | ||